Defining Users Roles and Profiles at this point of time is a quite big task reason being Roles and Profiles are two basic pillars of Salesforce system. Sharing and security handled by these two terms but because you are not familiar with Salesforce system that much I am only putting introductory term so that you can understand basic definition across the different articles.
What is User:
User is an entity which will use Salesforce system after login. You can simply relate it with other systems for example when you login to your mailbox at gmail.com you are actually a gmail user who want to access the system. So when you login through login.salesforce.com you are login in as a user which can perform different action.
What is Profile:
“Profile is collection of settings which can be used to control action inside the Salesforce”.
1. Profile can control object permission.
2. Profile can control field permission.
3. Profile can control Apex class, Visual force page.
4. Login time of user and other many more thing.
5. A User can be part of one Profile only at a time.
6. A profile is mandatory for every user.
This is the screenshot of a profile.
It should be clear now that what a profile can do in Salesforce. you can make different changes on this screen to control user behaviour inside system.
How to Assign profile:
Profile is always dependent on user license in Salesforce so once you assign any profile, first select license type and then select profile while creating a new user.
Types of Profile:
There are two types of Profiles in Salesforce.
1. Standard Profile : A profile which is created by Salesforce and can’t be deleted.
2. Custom Profile : A Profile which Administrator can create from business requirements.
What is Role and Role Hierarchy.
A role is used to maintain the role hierarchy. Role hierarchy allows the managers to see the data of the user reporting to them.
As you can see from above screenshot Role hierarchy depict the organizational structure of an organization. Where it starts from the CEO of the company and ends to the lower level in organization. It is required because in any organization you don’t want to share data with your colleague though your manager can see your data.
On User edit screen you can assign a role to the user. User may not be part of Role hierarachy so this is not a mandatory field.
You can watch following video about the sharing accesss Controlling access in Salesforce and learn more about User Roles and Profiles.