Ao gerenciar recursos do ECI em várias equipes ou ambientes, listar IDs de recursos individuais em cada política do RAM não é escalável. Com o controle de acesso baseado em tags — também conhecido como controle de acesso baseado em atributos (ABAC) —, uma única política rege todos os recursos que possuem a tag necessária, eliminando as atualizações de política por recurso.
Este documento mostra como configurar uma política do RAM que restringe um usuário do RAM aos recursos do ECI com a tag env:test e explica como o ECI avalia as condições de tag para cada tipo de operação.
O diagrama a seguir mostra como funciona a autenticação baseada em tags.

As tags podem ser vinculadas a instâncias de contêiner elásticas, caches de imagem e nós virtuais. Você só pode anexar tags ao criar ou atualizar um recurso. Para obter mais informações, consulte Use tags para gerenciar instâncias de contêiner elásticas .
Como funciona
O ECI oferece suporte a duas chaves de condição de tag para políticas do RAM:
|
Chave de condição |
O que ela verifica |
Quando usar |
|
|
A tag incluída na própria solicitação da API |
Operações da API que aceitam parâmetros de tag (por exemplo, operações de criação) |
|
|
A tag já anexada ao recurso de destino |
Operações da API que exigem um ID de recurso (por exemplo, operações de atualização, exclusão e outras operações de ciclo de vida) |
A chave aplicável depende se a operação da API aceita um ID de recurso, uma tag ou ambos. Consulte Lógica de autenticação por tipo de operação para obter um detalhamento completo.
Exemplo de configuração
Este exemplo concede a um usuário do RAM acesso apenas aos recursos do ECI com a tag env:test.

A política abrange três requisitos:
|
Requisito |
Ação permitida |
|
Crie |
O usuário do RAM pode criar recursos do ECI apenas se a tag |
|
Operar |
O usuário do RAM pode executar qualquer operação em recursos do ECI que já possuam a tag |
|
Visualize |
O usuário do RAM pode listar ou descrever apenas os recursos do ECI com a tag |
Etapa 1: Crie uma política personalizada e anexe-a ao usuário do RAM
Faça logon no console do RAM com sua conta Alibaba Cloud.
No painel de navegação à esquerda, escolha Permissions > Policies.
Na página Policies, clique em Create Policy.
Clique na guia Import Policy. Na caixa de diálogo, selecione System Policy na lista suspensa Policy Template, pesquise
AliyunECIFullAccessna caixa Filter templates, selecione a política e clique em Import.AliyunECIFullAccessé a política padrão para o ECI. Ela concede permissões para operar recursos do ECI, consultar dependências como grupos de segurança e VPCs, e criar a função vinculada ao serviço do ECI.-
Clique na guia JSON Editor e substitua o documento de política pelo seguinte: A política mapeia cada requisito para uma chave de condição específica:
acs:RequestTagverifica a tag enviada na solicitação (usada para operações de criação e descrição).acs:ResourceTagverifica a tag já presente no recurso de destino (usada para operações de execução).
Cada instrução inclui
Effect,Action,Resourcee, opcionalmente,Condition. Para obter mais informações, consulte Policy structure and syntax e Policy elements .Requisito
Ação
Chave de condição
Valor da condição
Crie com tag
eci:Create*acs:RequestTag/envtestOperar recursos com tag
eci:*acs:ResourceTag/envtestVisualize recursos com tag
eci:Describe*acs:RequestTag/envtest{ "Version": "1", "Statement": [ { "Effect": "Allow", "Action": "eci:Create*", "Resource": "*", "Condition": { "StringEquals": { "acs:RequestTag/env": "test" } } }, { "Effect": "Allow", "Action": "eci:*", "Resource": "*", "Condition": { "StringEquals": { "acs:ResourceTag/env": "test" } } }, { "Effect": "Allow", "Action": "eci:Describe*", "Resource": "*", "Condition": { "StringEquals": { "acs:RequestTag/env": "test" } } }, { "Action": ["ecs:DescribeSecurityGroups"], "Resource": "*", "Effect": "Allow" }, { "Action": [ "vpc:DescribeVSwitches", "vpc:DescribeVpcs", "vpc:DescribeEipAddresses" ], "Resource": "*", "Effect": "Allow" }, { "Action": "ram:CreateServiceLinkedRole", "Resource": "*", "Effect": "Allow", "Condition": { "StringEquals": { "ram:ServiceName": [ "eci.aliyuncs.com", "vnode.eci.aliyuncs.com" ] } } } ] } Clique em Next to edit policy information, insira um nome para a política e clique em OK.
-
Anexe a política ao usuário do RAM:
No painel de navegação à esquerda, escolha Identities > Users.
Se você ainda não tiver um usuário do RAM, crie um. Para obter mais informações, consulte Criar um usuário RAM.
Anexe a política personalizada ao usuário do RAM. Para obter mais informações, consulte Gerenciar permissões de usuário RAM.
A política acima abrange o acesso baseado em API. Se o usuário do RAM também precisar de acesso ao console, anexe políticas adicionais. Para obter mais informações, consulte Grant permissions to RAM users .
Etapa 2: Verifique a política
Faça logon no console do OpenAPI Explorer como o usuário do RAM e teste cada operação:
|
Operação |
Cenário |
Resultado esperado |
|
Crie |
A solicitação inclui a tag |
Bem-sucedido |
|
Crie |
A solicitação não tem tag ou tem uma tag diferente |
Falha — permissão negada |
|
Exclua |
A instância de destino tem a tag |
Bem-sucedido |
|
Exclua |
A instância de destino não tem a tag |
Falha — permissão negada |
|
Consultar |
Especifique um ID de instância (a instância tem |
Retorna a instância |
|
Consultar |
Especifique um ID de instância (a instância tem |
Retorna a instância |
|
Consultar |
Especifique um ID de instância (a instância não tem |
Retorna resultado vazio |
|
Consultar |
Especifique apenas a tag |
Retorna todas as instâncias com |
|
Consultar |
Nenhum ID de instância e nenhuma tag especificada |
Retorna resultado vazio |
Lógica de autenticação por tipo de operação
Após anexar uma política baseada em tags a um usuário do RAM, o ECI avalia cada solicitação de API em relação à condição relevante. A condição usada depende do tipo de operação.
|
Tipo de operação |
Exemplos de operações |
ID de recurso necessário |
Condição avaliada |
Regras de autenticação |
|
Crie |
|
Não |
|
Bem-sucedido se a solicitação incluir uma tag que corresponda à condição da política. Falha se nenhuma tag ou uma tag não correspondente for incluída. |
|
Consultar |
|
ID ou tag necessária |
|
Bem-sucedido se: a tag do recurso corresponder a |
|
Atualize |
|
Sim |
|
Bem-sucedido se a tag do recurso corresponder a |
|
Outro ciclo de vida |
|
Sim |
|
Bem-sucedido se a tag do recurso corresponder a |
Para operações de consulta, a falha de autenticação retorna um resultado vazio em vez de um erro.
Próximos passos
Para vincular tags aos recursos do ECI, consulte Use tags para gerenciar instâncias de contêiner elásticas.
Para saber mais sobre a estrutura de políticas do RAM, consulte Policy structure and syntax.