Updated on 2022-02-22 GMT+08:00

KMS Permissions Management

If you want to assign different access permissions to employees in an enterprise for the KMS resources purchased on the cloud platform, you can use Identity and Access Management (IAM) to perform refined permission management. IAM provides identity authentication, permissions management, and access control, helping you secure the access to your HUAWEI CLOUD resources.

With IAM, you can use your account to create IAM users for your employees, and assign permissions to the users to control their access to specific cloud resource types. For example, if you have software developers and you want to assign them the permission to access KMS but not to delete KMS or its resources, then you can create an IAM policy to assign the developers the permission to access KMS but prevent them from deleting KMS related data.

If the system account has met your requirements and you do not need to create an independent IAM user for permission control, then you can skip this section. This will not affect other functions of KMS.

IAM is offered for free, and you pay only for the billable resources in your account. For more information about IAM, see What Is IAM?

KMS Permissions

By default, new IAM users do not have permissions assigned. You need to add a user to one or more groups, and attach permissions policies or roles to these groups. Users inherit permissions from their groups and can perform specified operations on cloud services based on the permissions.

KMS is a project-level service deployed and accessed in specific physical regions. To assign permissions to a user group, specify the scope as region-specific projects and select projects for the permissions to take effect. If All projects is selected, the permissions will take effect for the user group in all region-specific projects. Users need to switch to the authorized region when accessing KMS.

You can grant users permissions by using roles and policies.

  • Roles: A type of coarse-grained authorization mechanism that defines permissions related to user responsibilities. This mechanism provides only a limited number of service-level roles for authorization. When using roles to grant permissions, you also need to assign other roles that the permissions depend on to take effect. However, roles are not an ideal choice for fine-grained authorization and secure access control.
  • Policies: A type of fine-grained authorization mechanism that defines permissions required to perform operations on specific cloud resources under certain conditions. This mechanism allows for more flexible policy-based authorization, meeting requirements for secure access control. For example, you can grant KMS users only the permissions for managing a certain type of cloud servers. Most policies contain permissions for specific APIs, and permissions are defined using API actions. .

Table 1 lists all the system policies of KMS.

Table 1 System-defined roles and policies supported by KMS

Role/Policy Name

Description

Type

Dependency

KMS Administrator

Users with this set of permissions can perform administrator operations on DEW.

System role

None

KMS CMKFullAccess

Users with this set of permissions have full permissions for encryption keys in DEW.

System policy

None

Table 2 lists the common operations supported by each system-defined permission of KMS. Select the permissions as needed.

Table 2 Common operations supported by each system-defined policy or role

Operation

KMS Administrator

KMS CMKFullAccess

Create a key

Enable a key

Disable a key

Schedule key deletion

Cancel scheduled key deletion

Modify a key alias

Modify key description

Generate a random number

Create a DEK

Create a plaintext-free DEK

Encrypt a DEK

Decrypt a DEK

Obtain parameters for importing a key

Import key materials

Delete key materials

Create a grant

Revoking a grant

Retire a grant

Query the grant list

Query retirable grants

Encrypt data

Decrypt data

Enable key rotation

Modify key rotation interval

Disable key rotation

Query key rotation status

Query CMK instances

Query key tags

Query project tags

Batch add or delete key tags

Add tags to a key

Delete key tags

Query the key list

Query key details

Query instance quantity

Query quotas

Helpful Links

  • What Is IAM?
  • "Creating a User and Authorizing the User the Permission to Access KMS"
  • "Permissions Policies and Supported Actions"
  • Two types of permission policies are provided by default: default policies and custom policies. Default policies are pre-defined by IAM and cannot be modified. If default policies do not meet your requirements, you can create custom policies for fine-grained permission control.
  • Configure permission policies for a user group and add users to the group so that these users can obtain operation permissions defined in the policies.