Você pode executar comandos do Cloud Assistant apenas em instâncias do Elastic Compute Service (ECS) com tags específicas, usando uma função do RAM ou como usuário do RAM. A execução falha se as instâncias do ECS não tiverem as tags especificadas. Este tópico descreve como executar comandos do Cloud Assistant em instâncias do ECS com tags específicas como usuário do RAM. Também são fornecidos exemplos de políticas personalizadas aplicáveis, além de problemas comuns e suas respectivas soluções.
Procedimento
-
Crie um usuário do RAM usando uma conta Alibaba Cloud ou um usuário do RAM com permissões administrativas.
Para mais informações, consulte Criar um usuário do RAM.
-
Crie políticas personalizadas usando a conta Alibaba Cloud ou o usuário do RAM com permissões administrativas.
Este tópico apresenta os seguintes exemplos de criação de políticas personalizadas:
Para mais informações, consulte Criar uma política personalizada.
-
Anexe as políticas personalizadas ao usuário do RAM criado usando a conta Alibaba Cloud ou um usuário do RAM com permissões administrativas.
Para mais informações, consulte Conceder permissões ao usuário do RAM.
-
Faça login no console do ECS como o usuário do RAM criado e acesse a página do Cloud Assistant para testar se as permissões definidas nas políticas personalizadas foram concedidas corretamente.
A execução falha ao executar um comando em instâncias do ECS sem a tag
user:alice.A execução é concluída com êxito ao executar um comando em instâncias do ECS com a tag
user:alice.
Para obter detalhes sobre como fazer login no Console de Gerenciamento da Alibaba Cloud como usuário do RAM, consulte Fazer login no Console de Gerenciamento da Alibaba Cloud como usuário do RAM.
Política 1: Permitir que um usuário do RAM execute comandos e transfira arquivos apenas para instâncias do ECS com tags específicas
Esta política permite que o usuário do RAM execute comandos do Cloud Assistant e transfira arquivos exclusivamente para instâncias do ECS com a tag user:alice.
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"ecs:InvokeCommand",
"ecs:RunCommand",
"ecs:StopInvocation",
"ecs:SendFile"
],
"Resource": "acs:ecs:*:*:instance/*",
"Condition": {
"StringEquals": {
"acs:ResourceTag/user": "alice"
}
}
},
{
"Effect": "Allow",
"Action": [
"ecs:InvokeCommand",
"ecs:RunCommand",
"ecs:StopInvocation",
"ecs:SendFile"
],
"Resource": "acs:ecs:*:*:command/*"
}
]
}
Política 2: Permitir que um usuário do RAM consulte tags adicionadas a instâncias do ECS, consulte instâncias do ECS e gerencie comandos do Cloud Assistant
Esta política permite apenas que o usuário do RAM consulte tags associadas a instâncias do ECS, liste instâncias do ECS e gerencie comandos do Cloud Assistant.
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"ecs:DescribeTag*",
"ecs:DescribeInstance*",
"ecs:DescribeCommands",
"ecs:CreateCommand",
"ecs:DeleteCommand",
"ecs:ModifyCommand",
"ecs:DescribeInvocationResults",
"ecs:DescribeSendFileResults",
"ecs:DescribeInstances",
"ecs:DescribeCloudAssistantStatus",
"ecs:DescribeInvocations",
"ecs:DescribeResourceByTags",
"ecs:DescribeTagKeys",
"ecs:DescribeTags",
"ecs:ListTagResources",
"ecs:DescribeManagedInstances"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": "oos:ListSecretParameters",
"Resource": "*"
}
]
}
Problemas comuns e soluções
Se as políticas personalizadas não surtirem efeito, verifique se o elemento Effect das seguintes permissões está definido como Allow:
["ecs:InvokeCommand","ecs:RunCommand", "ecs:StopInvocation","ecs:SendFile"].
Caso o elemento Effect dessas permissões esteja definido como Allow, remova-as das políticas personalizadas.
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"ecs:InvokeCommand",
"ecs:RunCommand",
"ecs:StopInvocation",
"ecs:SendFile"
],
"Resource": "*"
}
]
}