Updated on 2023-05-22 GMT+08:00

Permissions

If you need to assign different permissions to personnel in your enterprise to access your DNS resources, Identity and Access Management (IAM) is a good choice for fine-grained permissions management. IAM provides identity authentication, permissions management, and access control, helping you to securely access your Huawei Cloud resources.

With IAM, you can create IAM users and assign permissions to control their access to specific resources. For example, if you want some software developers in your enterprise to use DNS resources but do not want them to delete DNS resources or perform any other high-risk operations, you can create IAM users and grant permission to use DNS resources but not permission to delete them.

If your Huawei Cloud account does not require individual IAM users for permissions management, you can skip this section.

IAM is a free service. You only pay for the resources in your account.

For more information about IAM, see IAM Service Overview.

DNS Permissions

New IAM users do not have any permissions assigned by default. You need to first add them to one or more groups and attach policies or roles to these groups. The users then inherit permissions from the groups and can perform specified operations on cloud services based on the permissions they have been assigned.

DNS resources include the following:

  • Public zone: global-level resource
  • Private zone: project-level resource
  • PTR record: project-level resource

DNS permissions for global-level resources cannot be set in the global service project and must be granted for each project.

When you set Scope to Region-specific projects and select the specified projects (for example, ap-southeast-2) in the specified regions (for example, AP-Bangkok), the users only have permissions for DNS in the selected projects. If you set Scope to All resources, the users have permissions for DNS in all region-specific projects. When accessing DNS, the users need to switch to the authorized region.

You can grant permissions by using roles and policies.

  • Roles: A coarse-grained authorization strategy provided by IAM to assign permissions based on users' job responsibilities. Only a limited number of service-level roles are available for authorization. Huawei Cloud services depend on each other. When you grant permissions using roles, you also need to attach dependent roles. Roles are not ideal for fine-grained authorization and least privilege access.
  • Policies: A fine-grained authorization strategy that defines permissions required to perform operations on specific cloud resources under certain conditions. This type of authorization is more flexible and is ideal for least privilege access. For example, you can grant users only permissions to manage DNS resources of a certain type. A majority of fine-grained policies contain permissions for specific APIs, and permissions are defined using API actions. For the API actions supported by DNS, see Permissions and Supported Actions.
Table 1 lists system-defined permissions supported by DNS.
Table 1 System-defined permissions for DNS

Role/Policy Name

Description

Type

Dependencies

DNS FullAccess

Full permissions for DNS

System-defined policy

None

DNS ReadOnlyAccess

Read-only permissions for DNS. Users granted with these permissions can only view DNS resources.

System-defined policy

None

DNS Administrator

Full permissions for DNS

System-defined role

Tenant Guest and VPC Administrator, which must be attached in the same project as the DNS Administrator role

Table 2 lists common operations supported by system-defined permissions for DNS.

Table 2 Common operations supported by system-defined permissions

Operation

DNS FullAccess

DNS ReadOnlyAccess

DNS Administrator

Creating a public zone

Supported

Not supported

Supported

Viewing a public zone

Supported

Supported

Supported

Modifying a public zone

Supported

Not supported

Supported

Deleting a public zone

Supported

Not supported

Supported

Deleting public zones in batches

Supported

Not supported

Supported

Disabling or enabling a public zone

Supported

Not supported

Supported

Creating a private zone

Supported

Not supported

Supported

Viewing a private zone

Supported

Supported

Supported

Modifying a private zone

Supported

Not supported

Supported

Deleting a private zone

Supported

Not supported

Supported

Deleting private zones in batches

Supported

Not supported

Supported

Associating a VPC with a private zone

Supported

Not supported

Supported

Disassociating a VPC from a private zone

Supported

Not supported

Supported

Adding a record set

Supported

Not supported

Supported

Viewing a record set

Supported

Supported

Supported

Modify a record set

Supported

Not supported

Supported

Deleting a record set

Supported

Not supported

Supported

Delete record sets in batches

Supported

Not supported

Supported

Disabling or enabling a record set

Supported

Not supported

Supported

Exporting record sets in batches

Supported

Not supported

Supported

Importing record sets in batches

Supported

Not supported

Supported

Creating a PTR record

Supported

Not supported

Supported

Viewing a PTR record

Supported

Supported

Supported

Modifying a PTR record

Supported

Not supported

Supported

Deleting a PTR record

Supported

Not supported

Supported

Deleting PTR records in batches

Supported

Not supported

Supported