O RAM (Resource Access Management) oferece três métodos de autorização — baseados em ARN, em grupo de recursos e em tag — para conceder permissões de somente leitura em instâncias específicas do RDS com controle granular.
Pré-requisitos
Antes de começar, verifique se você possui:
Um usuário do RAM. Para criar um, consulte Criar um usuário do RAM.
Execute todas as etapas deste tópico usando sua conta Alibaba Cloud, e não a conta de usuário do RAM.
Escolha um método de autorização
|
Método |
Mais indicado para |
Granularidade |
Manutenção |
|
Baseado em ARN |
Uma única instância ou um pequeno conjunto de instâncias |
Por instância |
Atualize a política quando o conjunto de instâncias mudar |
|
Resource group-based |
Múltiplas instâncias que compartilham a mesma política de segurança |
Por grupo de recursos |
Adicione ou remova instâncias do grupo |
|
Baseado em tag |
Instâncias agrupadas por atributos de negócio (ambiente, projeto, equipe) |
Por tag |
Anexe ou desanexe tags das instâncias |
Método 1: Autorização baseada em ARN
A autorização baseada em ARN concede permissões a instâncias específicas incorporando seus ARNs de recurso (Alibaba Cloud Resource Names) diretamente na política. Este é o método mais preciso. Para detalhes sobre o formato do ARN, consulte Elementos de política.
O formato do ARN para uma instância do RDS é:
acs:rds:{#regionId}:{#accountId}:dbinstance/{#dbinstanceId}
Etapa 1: Criar uma política
Faça logon no console do RAM.
No painel de navegação à esquerda, escolha Permissions > Policies.
-
Clique em Create Policy e selecione a aba Visual editor ou JSON.
Visual Editor
Defina Effect como Allow e Service como ApsaraDB RDS.
-
Em Action, selecione Select action(s). Pesquise por
Describee marque as ações de leitura relacionadas.ImportanteSe o documento da política exceder o limite de tamanho devido ao grande número de ações selecionadas, envie um ticketenvie um ticketenvie um ticketenvie um ticketenvie um ticketenvie um ticketenvie um ticketenvie um ticketenvie um ticketenvie um ticketenvie um ticketenvie um ticket para aumentar o limite.
Defina Resource como Specified resource(s). Na caixa de diálogo Add resource, insira o ARN da instância do RDS de destino. Deixe Condition em branco.
Clique em Add Statement. Na nova instrução, defina Effect como Allow e Service como ApsaraDB RDS.
Em Action, selecione
rds:DescribeDBInstances. Defina Resource como All resource(s) e deixe Condition em branco.
JSON
Cole a seguinte política no editor de código. Substitua
ID of the RDS instancepelo ID real da instância:{ "Statement": [ { "Effect": "Allow", "Action": "rds:Describe*", "Resource": "acs:rds:*:*:dbinstance/ID of the RDS instance" }, { "Effect": "Allow", "Action": "rds:DescribeDBInstances", "Resource": "*" } ], "Version": "1" }> Note: Duas instruções são necessárias: a primeira concede acesso de leitura à instância específica; a segunda permite
DescribeDBInstancesem todos os recursos para que o usuário do RAM possa listar as instâncias no console.
JSON
Clique em OK. Na caixa de diálogo Create Policy, insira um Name e uma Description e clique em OK.
Etapa 2: Anexar a política ao usuário do RAM
No painel de navegação à esquerda, escolha Identities > Users.
Localize o usuário do RAM desejado e clique em Add Permissions na coluna Actions.
Defina Resource Scope para o grupo de recursos apropriado. Em Policy, selecione Custom Policy, pesquise a política criada e selecione-a.
Clique em Grant permissions.
Verificar
Faça logon no console do ApsaraDB RDS como o usuário do RAM.
Na barra de navegação superior, selecione a região. A página Instances lista todas as instâncias do RDS na conta.
Clique no ID da instância autorizada para visualizar seus detalhes.
O usuário do RAM consegue ver todas as instâncias na lista, mas só pode visualizar os detalhes da instância autorizada. Tentar abrir uma instância não autorizada exibe um erro de "permissões insuficientes".
Método 2: Autorização baseada em grupo de recursos
A autorização baseada em grupo de recursos organiza as instâncias em um grupo de recursos e concede permissões no nível do grupo. Todas as instâncias adicionadas ao grupo herdam a mesma política, facilitando o gerenciamento de permissões para múltiplas instâncias simultaneamente.
Etapa 1: Criar um grupo de recursos
Faça logon no console de Gerenciamento de Recursos. No painel de navegação à esquerda, escolha Resource Group > Resource Group.
Clique em Create Resource Group. Insira um Resource Group Identifier e um Resource Group Name e clique em OK.
Etapa 2: Adicionar a instância do RDS ao grupo de recursos
Localize o grupo de recursos que contém atualmente a instância do RDS (por padrão, Default Resource Group) e clique em Manage Resource na coluna Actions.
-
Encontre a instância do RDS pelo ID, selecione-a e clique em Transfer resource group.

-
No painel Transfer Out, selecione o grupo de recursos criado na Etapa 1 e clique em OK.

Clique em OK para confirmar.
A instância agora aparece no novo grupo de recursos.
Etapa 3: Criar uma política
Faça logon no console do RAM.
No painel de navegação à esquerda, escolha Permissions > Policies.
-
Clique em Create Policy e selecione a aba Visual editor ou JSON.
Visual Editor
Defina Effect como Allow e Service como ApsaraDB RDS.
-
Em Action, selecione Select action(s). Pesquise por
Describee marque as ações de leitura relacionadas.ImportanteSe o documento da política exceder o limite de tamanho devido ao grande número de ações selecionadas, envie um ticketenvie um ticketenvie um ticketenvie um ticketenvie um ticketenvie um ticketenvie um ticketenvie um ticketenvie um ticketenvie um ticketenvie um ticketenvie um ticket para aumentar o limite.
Defina Resource como All resource(s) e deixe Condition em branco.
JSON
Cole a seguinte política no editor de código:
{ "Version": "1", "Statement": [ { "Effect": "Allow", "Action": [ "rds:Describe*" ], "Resource": "*" } ] }
JSON
Clique em OK. Na caixa de diálogo Create Policy, insira um Name e uma Description e clique em OK.
Etapa 4: Anexar a política ao usuário do RAM
No painel de navegação à esquerda, escolha Identities > Users.
Localize o usuário do RAM desejado e clique em Add Permissions na coluna Actions.
Defina Resource Scope para o grupo de recursos criado. Em Policy, selecione Custom Policy, pesquise a política criada e selecione-a.
Clique em Done.
Verificar
Faça logon no console do ApsaraDB RDS como o usuário do RAM.
Na barra de navegação superior, selecione a região.
-
Selecione o grupo de recursos criado. O console exibirá apenas as instâncias do RDS desse grupo.

Método 3: Autorização baseada em tag
A autorização baseada em tag utiliza condições de tag na política para controlar o acesso dinamicamente conforme as tags de cada instância. Qualquer instância com a tag correspondente recebe as permissões; instâncias sem a tag ficam excluídas. Essa abordagem escala bem quando as instâncias são organizadas por ambiente, projeto ou equipe.
Etapa 1: Adicionar uma tag à instância do RDS
Acesse a página Instances. Na barra de navegação superior, selecione a região e localize a instância do RDS desejada.
-
Na coluna Tags, clique no ícone
e clique em Edit.
Insira uma Tag Key e um Tag Value e clique em OK. Utilize valores significativos que reflitam a convenção de nomenclatura da sua organização (por exemplo,
env/prodouproject/finance). Nos exemplos abaixo, Tag Key étest-rame Tag Value érds-mysql.
Quando a tag aparecer na coluna Tags, ela terá sido aplicada com sucesso.

Etapa 2: Criar uma política
Faça logon no console do RAM.
No painel de navegação à esquerda, escolha Permissions > Policies.
-
Clique em Create Policy e selecione a aba Visual editor ou JSON.
Visual Editor
Defina Effect como Allow e Service como ApsaraDB RDS.
-
Em Action, selecione Select action(s). Pesquise por
Describee marque as ações de leitura relacionadas.ImportanteSe o documento da política exceder o limite de tamanho devido ao grande número de ações selecionadas, envie um ticketenvie um ticketenvie um ticketenvie um ticketenvie um ticketenvie um ticketenvie um ticketenvie um ticketenvie um ticketenvie um ticketenvie um ticketenvie um ticket para aumentar o limite.
-
Defina Resource como All resource(s) e clique em Add condition. Configure a condição com os seguintes valores fixos:
Campo
Valor
Key
rds:ResourceTagOperator
StringEqualsValue
A chave de tag e o valor de tag da Etapa 1
JSON
Cole a seguinte política no editor de código. Substitua
test-ramerds-mysqlpela chave de tag e pelo valor de tag definidos na Etapa 1:{ "Version": "1", "Statement": [ { "Effect": "Allow", "Action": [ "rds:Describe*" ], "Resource": [ "*" ], "Condition": { "StringEquals": { "rds:ResourceTag/test-ram": [ "rds-mysql" ] } } } ] }
JSON
Clique em OK. Na caixa de diálogo Create Policy, insira um Name e uma Description e clique em OK.
Etapa 3: Anexar a política ao usuário do RAM
No painel de navegação à esquerda, escolha Identities > Users.
Localize o usuário do RAM desejado e clique em Add Permissions na coluna Actions.
Defina Resource Scope para o grupo de recursos apropriado. Em Policy, selecione Custom Policy, pesquise a política criada e selecione-a.
Clique em Done.
Verificar
Faça logon no console do ApsaraDB RDS como o usuário do RAM.
Na barra de navegação superior, selecione a região.
-
Use Filter by Tag para pesquisar a tag adicionada na Etapa 1. O console exibirá apenas as instâncias do RDS com a tag correspondente.

Próximos passos
Após conceder permissões de somente leitura, estenda o acesso do usuário do RAM conforme suas necessidades evoluem:
Para conceder permissões de gravação ou administrativas, crie políticas adicionais com as ações relevantes e anexe-as ao usuário do RAM.
Para revogar o acesso, desanexe a política do usuário do RAM ou remova a instância do grupo de recursos ou da tag.