Permissions¶
If you need to assign different permissions to employees in your enterprise, 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 flexibly manage resource access.
You can create users using IAM and grant users permissions to implement access control.
If your account does not need individual IAM users for permissions management, skip this chapter.
System-Defined Permissions for Config¶
By default, new IAM users do not have permissions. You need to add a user to one or more groups and attach policies to the user groups. Users in a group inherit permissions from the group, so that they can perform operations on cloud services based on the permissions.
Config is a global service. You do not need to repeat Config authorization for different regions or switch regions for accessing Config.
A user with Config read-only permissions can view all resources on the Resource List page.
Policy: A type of fine-grained authorization method that defines permissions required to perform operations on specific cloud resources under certain conditions. Authorization using policies is more flexible and help you implement least privilege. Most policies define permissions based on APIs. API actions are the minimum granularity of permissions. For API actions supported by Config, see the Permissions Policies and Supported Actions section in Config API Reference. For details about fine-grained permissions and their dependencies for Config, see Fine-Grained Permissions for Config.
Table 1 lists all the system-defined permissions supported by Config.
Policy | Description | Dependencies |
---|---|---|
Config FullAccess | Grants full access to Config. This policy grants you the permissions to perform all actions on the resource list, resource recorder, resource compliance, and advanced queries. |
|
Config ReadOnlyAccess | Grants read-only access to Config. This policy grants you read access to the resource list, resource recorder, and resource compliance. | None |
Table 2 lists the common operations and the system-defined permissions of Config. Y indicates that an operation is supported, and x indicates not supported.
Operation | Config FullAccess | Config ReadOnlyAccess |
---|---|---|
Querying all resources | Y | Y |
Query details about a resource. | Y | Y |
Filtering resources | Y | Y |
Exporting resources | Y | Y |
Viewing resource compliance data | Y | Y |
Viewing relationships of a resource | Y | Y |
Viewing resource change history | Y | Y |
Querying the resource recorder | Y | Y |
Enabling, configuring, or modifying the resource recorder | Y | x |
Disabling the resource recorder | Y | x |
Querying a compliance policy | Y | Y |
Modifying rules | Y | x |
Adding rules | Y | x |
Querying rules | Y | Y |
Deleting rules | Y | x |
Viewing resource compliance evaluation results | Y | Y |
Triggering a resource compliance evaluation | Y | x |
Running advanced queries | Y | x |
Creating advanced queries | Y | x |
Querying advanced queries | Y | Y |
Listing advanced queries | Y | Y |
Updating advanced queries | Y | x |
Deleting advanced queries | Y | x |
Fine-Grained Permissions for Config¶
If predefined permissions cannot meet your requirements, you can create custom policies. Custom policies allow you to perform fine-grained access control flexibly. For details about how to create a custom policy, see Creating a Custom Policy. For details about example custom policies, see Creating a Custom Policy.
The following table lists the actions and dependencies for Config.
Action | Description | Dependencies | Applicable Scenario |
---|---|---|---|
rms:resources:getHistory | Grants the permission to view resource history. |
| Viewing resource history. |
rms:resources:getRelation | Grants the permission to view resource relationships and relationship details. |
| Viewing resource relationships and relationship details |
rms:resources:list | Grants the permission to view resources. | To filter resources by enterprise project, eps:enterpriseProjects:list is required. | Viewing, filtering, and exporting resources. |
rms:resources:get | Grants the permission to view resource details. |
| Viewing resource details |
Action | Description | Dependencies | Applicable Scenario |
---|---|---|---|
rms:trackerConfig:get | Grants the permission to query the resource recorder. |
| Viewing resource recorder configurations |
rms:trackerConfig:put | Grants the permission to create and modify the resource recorder. |
| Enabling, configuring, and modifying the resource recorder. |
rms:trackerConfig:delete | Grants the permission to disable the resource recorder. | rms:trackerConfig:get | Disabling the resource recorder. |
Action | Description | Dependencies | Applicable Scenario |
---|---|---|---|
rms:policyDefinitions:get | Grants the permission to view built-in policies. | None | Viewing built-in policies |
rms:policyAssignments:update | Grants the permission to update rules. |
| Modifying, enabling, and disabling rules |
rms:policyAssignments:create | Grants the permission to create rules. |
| Adding rules. |
rms:policyAssignments:get | Grants the permission to view rules | None | Viewing rules and their details. |
rms:policyAssignments:delete | Grants the permission to delete rules. | rms:policyAssignments:get | Deleting rules. |
rms:policyStates:get | Grants the permission to query the state and evaluation result of a rule. | rms:policyAssignments:get | Querying the state and evaluation result of a rule. If you call an API to query the state and evaluation result of a rule, this action is required. If you use Config console, this action is not required. |
rms:policyStates:runEvaluation | Grants the permission to run rules. | rms:policyAssignments:get | Manually triggering a rule. |
Action | Description | Dependencies | Applicable Scenario |
---|---|---|---|
rms:resources:runQuery | Grants the permission to run advanced queries. |
| Running advanced queries |
rms:storedQueries:create | Grants the permission to create queries. | None | Creating queries |
rms:storedQueries:get | Grants the permission to view query statements. | rms:storedQueries:list | Viewing query statements |
rms:storedQueries:list | Grants the permission to list queries. | None | Listing queries. |
rms:storedQueries:update | Grants the permission to update query statements |
| Modifying custom queries |
rms:storedQueries:delete | Grants the permission to deleting queries. | rms:storedQueries:list | Deleting custom queries |
rms:schemas:list | Listing advanced query schemas | None | Viewing resource attributes synchronized to Config. |