Introduction
This section describes fine-grained permissions management for your GaussDB(DWS) service using IAM. You can skip this section if your HUAWEI CLOUD account already satisfies your needs.
By default, new IAM users do not have permissions assigned. You need to add the users to one or more groups, and attach permissions policies or roles to these groups. Users inherit permissions from the groups to which they are added and can perform specified operations on cloud services based on the permissions. Users are authorized by creating custom policies. For detailed operations, see Creating a GaussDB(DWS) Custom Policy.
You can grant users permissions by using Roles and Policies. Roles are provided by IAM to define service-based permissions depending on users' job responsibilities. Policies define API-based permissions for operations on specific resources under certain conditions, allowing for more fine-grained, secure access control of cloud resources.
Policy-based authorization is useful if you want to allow or deny the access to an API.
An account has all the permissions required to call all APIs, but IAM users must be assigned the required permissions. The permissions required for calling an API are determined by the actions supported by the API. Only users who have been granted permissions allowing the actions can call the API successfully. For example, if an IAM user wants to query the GaussDB(DWS) cluster list using an API, the user must have been granted permissions that allow the dws:openAPICluster:list action.
Supported Actions
DWS provides system-defined policies that can be directly used in IAM. You can also create custom policies and use them to supplement system-defined policies, implementing more refined access control. Actions supported by policies are specific to APIs. The following are common concepts related to policies:
- Permissions: Allow or deny operations on specified resources under specific conditions.
- APIs: RESTful APIs that can be called in a custom policy.
- Actions: Added to a custom policy to control permissions for specific operations.
- IAM or enterprise projects: Type of projects for which an action will take effect. Policies that contain actions supporting both IAM and enterprise projects can be assigned to user groups and take effect in both IAM and Enterprise Management. Policies that only contain actions supporting IAM projects can be assigned to user groups and only take effect for IAM. Such policies will not take effect if they are assigned to user groups in Enterprise Management. For details about the differences between IAM and enterprise projects, see What Are the Differences Between IAM and Enterprise Management?.
The check mark (√) indicates that an action takes effect. The cross mark (x) indicates that an action does not take effect.
GaussDB(DWS) supports the following actions that can be defined in custom policies:
Managing Clusters
Permissions |
APIs |
Actions |
IAM Project |
Enterprise Project |
---|---|---|---|---|
Creating clusters |
POST /v1.0/{project_id}/clusters |
dws:openAPICluster:create |
√ |
x |
Querying the cluster list |
GET /v1.0/{project_id}/clusters |
dws:openAPICluster:list |
√ |
x |
Querying cluster details |
GET /v1.0/{project_id}/clusters/{cluster_id} |
dws:openAPICluster:getDetail |
√ |
x |
Querying the node type |
GET /v2/{project_id}/node-types |
dws:openAPIFlavors:get |
√ |
x |
Deleting clusters |
DELETE /v1.0/{project_id}/clusters/{cluster_id} |
dws:openAPICluster:delete |
√ |
x |
Restarting clusters |
POST /v1.0/{project_id}/clusters/{cluster_id}/restart |
dws:openAPICluster:restart |
√ |
x |
Scales out a cluster. |
POST /v1.0/{project_id}/clusters/{cluster_id}/resize |
dws:cluster:scaleOutOrOpenAPIResize |
√ |
x |
Resetting the cluster's administrator password |
POST /v1.0/{project_id}/clusters/{cluster_id}/reset-password |
dws:openAPICluster:resetPassword |
√ |
x |
Start a cluster. |
POST /v1/ {project_id}/clusters/{cluster_id}/start |
dws:cluster:startCluster |
√ |
× |
Stopping a Cluster |
POST /v1/{project_id}/clusters/{cluster_id}/stop |
dws:cluster:stopCluster |
√ |
× |
In the current version, the APIs for starting and stopping a cluster are available only to clusters whose database type is serverless.
Managing Snapshots
Permissions |
APIs |
Actions |
IAM Project |
Enterprise Project |
---|---|---|---|---|
Creating snapshots |
POST /v1.0/{project_id}/snapshots |
dws:openAPISnapshot:create |
√ |
x |
Querying the snapshot list |
GET /v1.0/{project_id}/snapshots |
dws:openAPISnapshot:list |
√ |
x |
Querying snapshot details |
GET /v1.0/{project_id}/snapshots/{snapshot_id} |
dws:openAPISnapshot:detail |
√ |
x |
Deleting snapshots |
DELETE /v1.0/{project_id}/snapshots/{snapshot_id} |
dws:openAPISnapshot:delete |
√ |
x |
Restoring clusters |
POST /v1.0/{project_id}/snapshots/{snapshot_id}/actions |
dws:openAPISnapshot:restore |
√ |
x |
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