Updated on 2025-11-11 GMT+08:00

Using IAM Identity Policies to Grant Access to RDS

Identity and Access Management (IAM) lets you manage identity policy-based permissions of your RDS instances. With IAM, you can:

  • Create IAM users or user groups for personnel based on your enterprise's organizational structure. Each IAM user has their own identity credentials for accessing RDS resources.
  • Grant users only the permissions required to perform a given task based on their job responsibilities.
  • Entrust a Huawei Cloud account or a cloud service to perform efficient O&M on your RDS resources.

If your Huawei Cloud account meets your permissions requirements, you can skip this section.

Figure 1 shows the process flow of identity policy-based authorization.

Prerequisites

Before granting permissions, learn about RDS system-defined policies in Identity Policy-based Permissions Management. If you want to grant other services' permissions, see System-defined Permissions.

Process Flow

Figure 1 Process of granting RDS permissions
  1. On the IAM console, create a user or create a user group.
  2. Attach a system-defined identity policy (RDSReadOnlyPolicy as an example) to the user or user group.
  3. Log in as the IAM user and verify permissions.

    In the authorized region, perform the following operations:

    • Choose Service List > Relational Database Service. Then click Buy DB Instance on the RDS console. If a message appears indicating that you have insufficient permissions to perform the operation, the RDSReadOnlyPolicy policy is in effect.
    • Choose another service from Service List. If a message appears indicating that you have insufficient permissions to access the service, the RDSReadOnlyPolicy policy is in effect.

Example Custom Identity Policies

Custom identity policies can be created as a supplement to the system-defined identity policies of RDS. For details about actions supported in custom identity policies, see Actions Supported by Identity Policy-based Authorization.

You can create custom policies in either of the following ways:

  • Visual editor: Select cloud services, actions, resources, and request conditions. This does not require knowledge of policy syntax.
  • JSON: Create a JSON policy or edit an existing one.

For details, see Creating a Custom Identity Policy and Attaching It to a Principal.

When creating a custom identity policy, use the Resource element to specify the resources the identity policy applies to and use the Condition element (service-specific condition keys) to control when the identity policy is in effect. For details about the supported resource types and condition keys, see Actions Supported by Identity Policy-based Authorization. The following lists some typical RDS custom identity policy examples.

  • Example 1: Grant permission to create and delete instances.
    {
        "Version": "5.0",
        "Statement": [
            {
                "Effect": "Allow",
                "Action": [
                    "rds:instance:create",
                    "rds:instance:delete"
                ]
            }
        ]
    }
  • Example 2: Create a custom policy containing multiple actions.

    A custom identity policy can contain the actions of one or more services. The following is an example policy containing multiple actions.

    {
      "Version": "5.0",
      "Statement": [
        {
          "Effect": "Allow",
          "Action": [
            "rds:instance:deleteInstance",
            "rds:instance:create"
          ]
        },
        {
          "Effect": "Allow",
          "Action": [
            "vpc:vpcs:get",
            "vpc:vpcs:list"
          ]
        }
      ]
    }