MRS Cluster User Permission Model
MRS uses a role-based access control (RBAC) model to manage permissions across the big data system. It consolidates permission management functions from various components into a centralized framework, making permission management easier for administrators. End users do not need to understand the underlying permission mechanisms, simplifying operations and enhancing overall usability and experience.
Video Tutorial
Role-based Access Control
The right model of MRS consists four parts: users, user groups, roles, and rights.

- Right
Right, which is defined by components, allows users to access a certain resource of one component. Different components have different permissions for their resources.
For example:
- HDFS provides read, write, and execute permissions on files.
- HBase provides create, read, and write permissions on tables.
- Role
A role is a collection of component permissions. Each role can have permissions of multiple components. Different roles can have permissions of a component resource.
- User group
User group is a collection of users. When a user group is bound to a role, users in this group obtain the permissions defined by the role.
Different user groups can be associated with the same role. A user group can also be associated with no role, and this user group does not have the permissions of any component resources.
In some components, the system grants related permissions to specific user groups by default.
- User
A user is a visitor to the system. Each user has the permissions on the user group and role associated with the user. Users need to be added to the user group or associated with roles to obtain the corresponding permissions.
Policy-based Access Control
The Ranger component uses policy-based access control (PBAC) to manage permissions and implement fine-grained data access control on components such as HDFS, Hive, and HBase.
A component supports only one access control mechanism. After a Ranger permission control policy is enabled for a component, the permission on the component in the role created on FusionInsight Manager becomes invalid (ACL rules of HDFS and YARN still take effect). You need to add a policy on the Ranger management page to grant permissions to resources.
The Ranger right model consists of multiple right policies. A right policy consists of the following parts:
- Resource
Resources are provided by components and can be accessed by users, such as HDFS files or folders, queues in Yarn, and databases, tables, and columns in Hive.
- User
Users are visitors to the system. Each user obtains corresponding permissions after being associated with related policies. Information about users, user groups, and roles in the LDAP is periodically synchronized to the Ranger.
- Permission
In a policy, you can configure various access conditions for resources, such as file read and write, permission conditions, rejection conditions, and exception conditions.
Example Access Control Scenarios
MRS adopts the Lightweight Directory Access Protocol (LDAP) to store data of users and user groups. Information about role definitions is stored in the relational database and the mapping between roles and permissions is saved in components.
MRS uses Kerberos for unified authentication.
The user permission verification process is as follows:
- A client (a user terminal or MRS component service) invokes the MRS authentication interface.
- MRS uses the login username and password for Kerberos authentication.
- If the authentication succeeds, the client sends a request for accessing the server (an MRS component service).
- The server finds the user group and role to which the login user belongs.
- The server obtains all permissions of the user group and the role.
- The server checks whether the client has the permission to access the resources it applies for.
Example (RBAC):
There are three files in HDFS, that is, fileA, fileB, and fileC.
- roleA has read and write permissions on fileA, and roleB has the read permission on fileB.
- groupA is bound to roleA, and groupB is bound to roleB.
- userA belongs to groupA and roleB, and userB belongs to groupB.
When userA successfully logs in to the system and accesses the HDFS:
- HDFS obtains the role (roleB) to which userA is bound.
- HDFS also obtains the role (roleA) to which the user group of userA is bound.
- In this case, userA has all the permissions of roleA and roleB.
- As a result, userA has read and write permissions on fileA, has the read permission on fileB, and has no permission on fileC.
Similarly, when userB successfully logs in to the system and accesses the HDFS:
- userB only has the permissions of roleB.
- As a result, userB has the read permission on fileB, and has no permission on fileA and fileC.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot