As tags ajudam a identificar e classificar recursos de nuvem. Utilize políticas de permissão do RAM para gerenciar identidades de usuários e controlar o acesso aos recursos. Adicione tags para classificar os recursos de clusters ACK, associe-as às políticas de permissão do RAM para obter um controle de acesso refinado e conceda a diferentes usuários acesso a clusters distintos.
Procedimento
Crie uma política personalizada que exija tags específicas para acessar clusters ACK e, em seguida, anexe essa política a um usuário RAM.
-
Faça login no console RAM com sua conta Alibaba Cloud e crie uma política personalizada. Utilize o elemento Condition para definir condições de tag nos recursos de nuvem.
NotaUma conta Alibaba Cloud possui permissões totais sobre todos os recursos. Você também pode conceder a permissão AdministratorAccess a um usuário RAM para torná-lo administrador da conta, com capacidade de gerenciar todos os recursos. Consulte Criar um usuário RAM como administrador de conta.
O ACK oferece suporte às seguintes chaves de condição:
Chave de condição
Descrição
acs:RequestTagExige que as solicitações incluam tags específicas.
Caso a solicitação de API não contenha um parâmetro de tag, as condições
acs:RequestTagresultarão em falha na autorização.acs:ResourceTagExige que os recursos possuam tags específicas.
Se a solicitação de API não incluir um parâmetro de ID de recurso, as condições
acs:ResourceTagcausarão falha na autorização.Consulte Casos de uso para ver exemplos de políticas.
-
Anexe a política personalizada ao usuário RAM. Consulte Gerencie as permissões de um usuário RAM. Ao criar a política, verifique os Tipos de recursos compatíveis com tags e as Ações que não oferecem suporte à autorização baseada em tags.
NotaAntes de conceder permissões a um usuário RAM, revise suas políticas existentes para evitar duplicações ou conflitos.
Casos de uso
Adapte estes modelos de política personalizada seguindo o princípio do menor privilégio.
|
Política de permissão |
Descrição |
Resultado |
|
Permite criar apenas clusters com a tag |
|
|
Permite visualizar apenas clusters com a tag |
|
|
Impede que o usuário modifique tags. |
Qualquer tentativa de modificar uma tag resultará em falha na operação. Código de erro: |
Referências
Tipos de recursos compatíveis com tags
O ACK suporta autorização baseada em tags apenas para os seguintes tipos de recursos.
|
Nome do serviço |
Código do serviço |
Tipo de recurso |
|
ACK |
cs |
cluster: cluster |
Ações que não oferecem suporte à autorização baseada em tags
As ações listadas abaixo do ACK não são compatíveis com autorização baseada em tags. Consulte Exemplos de políticas personalizadas.
|
Ação |
Descrição |
|
cs:OpenAckService |
Ativar o ACK |
|
cs:ListOperationPlans |
Consultar os cronogramas automáticos de O&M de um cluster |
|
cs:CancelOperationPlan |
Cancelar um plano automático de O&M pendente |
|
cs:DescribeTaskInfo |
Consultar os detalhes de uma tarefa |
|
cs:PauseTask |
Pausar uma tarefa |
|
cs:CancelTask |
Cancelar uma tarefa |
|
cs:ResumeTask |
Retomar uma tarefa |
|
cs:CreateKubernetesTrigger |
Criar um gatilho de aplicativo |
|
cs:DeleteTriggerHook |
Excluir um gatilho |
|
cs:CreateTemplate |
Criar um modelo de orquestração |
|
cs:DeleteTemplate |
Excluir um modelo de orquestração |
|
cs:UpdateTemplate |
Atualizar um modelo de orquestração |
|
cs:DescribeTemplates |
Consultar todos os modelos de orquestração |
|
cs:DescribeTemplateAttribute |
Consultar os detalhes de um modelo de orquestração |
|
cs:ListUserKubeConfigStates |
Consultar a lista de status do KubeConfig de todos os clusters pertencentes a um usuário específico |
|
cs:ListAddons |
Consultar add-ons disponíveis |
|
cs:DescribeAddon |
Consultar um add-on específico |
|
cs:DescribeAddons |
Consultar todos os add-ons |
|
cs:DescribeEvents |
Consultar detalhes de eventos |
|
cs:DescribeEventsForRegion |
Consultar eventos em uma região específica |
|
cs:DescribeKubernetesVersionMetadata |
Consultar os detalhes de uma versão do Kubernetes |
|
cs:CheckServiceRole |
Verificar se uma função de serviço específica está atribuída |
|
cs:DescribePatternTypes |
Consultar tipos de instância |
|
cs:CheckUserClustersActivity |
Verificar o status ativo de um usuário em um cluster específico |
|
cs:CreateSessionMessage |
Criar uma sessão do Assistente de IA do ACK |
|
cs:UpdateMessageFeedback |
Atualizar o feedback de mensagens do Assistente de IA do ACK |
|
cs:DescribeKubeConfigManagementTaskList |
Listar tarefas relacionadas a arquivos kubeconfig |
|
cs:ListHaveKubeconfigDeletedAccounts |
Consultar usuários cujas contas tiveram usuários RAM ou funções RAM excluídos, mas cujos arquivos kubeconfig permanecem ativos. |
|
cs:ListKubeConfigRecycle |
Listar arquivos kubeconfig na lixeira da conta Alibaba Cloud atual |
|
cs:RestoreKubeConfigRecycleItem |
Restaurar um arquivo kubeconfig excluído da lixeira |
|
cs:RestoreMultiKubeConfigRecycleItems |
Restaurar em lote arquivos kubeconfig excluídos da lixeira |
|
cs:DeleteKubeConfigRecycleItem |
Excluir permanentemente um arquivo kubeconfig da lixeira |
|
cs:DescribeKubernetesVersionMetadata |
Consultar os detalhes de uma versão do Kubernetes |
|
cs:DescribePolicies |
Consultar a lista de políticas |
|
cs:DescribePolicyDetails |
Consultar os detalhes de uma política específica |
|
cs:DescribeUserInstances |
Obter a lista de nós necessária para adicionar um nó existente |
|
cs:DescribeUserPermission |
Consultar as permissões de um usuário RAM ou de uma função RAM |
|
cs:UpdateUserPermissions |
Atualizar as permissões de Controle de Acesso Baseado em Função (RBAC) de um usuário RAM ou função RAM específica |
|
cs:CleanUserPermissions |
Limpar o certificado de um usuário específico e as permissões RBAC associadas |
|
cs:QueryAlertContact |
Consultar um contato de alerta |
|
cs:AddOrUpdateAlertContact |
Atualizar um contato de alerta |
|
cs:DeleteAlertContact |
Excluir um contato de alerta |
|
cs:QueryAlertContactGroup |
Consultar grupos de contatos de alerta |
|
cs:AddOrUpdateAlertContactGroup |
Atualizar um grupo de contatos de alerta |
|
cs:DeleteAlertContactGroup |
Excluir um grupo de contatos de alerta |
|
cs:DescribeUserQuota |
Consultar informações de cota |
|
cs:ListOperationPlans |
Consultar a lista de planos de tarefas automáticas de O&M |
|
cs:CancelOperationPlan |
Cancelar planos de tarefas automáticas de O&M |
|
cs:DescribeTasks |
Consultar a lista de tarefas |
Exemplos de políticas personalizadas
Um usuário RAM ou uma função RAM com permissões no nível da conta pode executar operações em recursos de toda a conta. Certifique-se de que as permissões concedidas atendam às suas expectativas e sigam o princípio do menor privilégio.
Políticas com condições de tag não se aplicam a ações incompatíveis com autorização baseada em tags. Crie uma política separada para essas ações, definindo o escopo do recurso como Account e sem condições de tag.
Ajuste estes exemplos conforme necessário.
-
A lista de
Actioninclui todas as ações somente leitura que não suportam autorização baseada em tags.{ "Version": "1", "Statement": [ { "Effect": "Allow", "Action": [ "cs:DescribeAddon", "cs:DescribeAddons", "cs:DescribeEvents", "cs:DescribeEventsForRegion", "cs:DescribeKubeConfigManagementTaskList", "cs:DescribeKubernetesVersionMetadata", "cs:DescribePatternTypes", "cs:DescribePolicies", "cs:DescribePolicyDetails", "cs:DescribeTaskInfo", "cs:DescribeTemplateAttribute", "cs:DescribeTemplates", "cs:DescribeUserInstances", "cs:DescribeUserPermission", "cs:ListAddons", "cs:ListHaveKubeconfigDeletedAccounts", "cs:ListKubeConfigRecycle", "cs:ListOperationPlans", "cs:ListUserKubeConfigStates", "cs:QueryAlertContact", "cs:QueryAlertContactGroup", "cs:CheckServiceRole", "cs:DescribeTasks", "cs:DescribeUserQuota", "cs:ListOperationPlans", "cs:CheckUserClustersActivity" ], "Resource": "*" } ] } -
A lista de
Actionabrange todas as ações que não oferecem suporte à autorização baseada em tags.{ "Version": "1", "Statement": [ { "Effect": "Allow", "Action": [ "cs:AddOrUpdateAlertContact", "cs:AddOrUpdateAlertContactGroup", "cs:CancelOperationPlan", "cs:CancelTask", "cs:CheckServiceRole", "cs:CheckUserClustersActivity", "cs:CleanUserPermissions", "cs:CreateKubernetesTrigger", "cs:CreateSessionMessage", "cs:CreateTemplate", "cs:DeleteAlertContact", "cs:DeleteAlertContactGroup", "cs:DeleteKubeConfigRecycleItem", "cs:DeleteTemplate", "cs:DeleteTriggerHook", "cs:DescribeAddon", "cs:DescribeAddons", "cs:DescribeEvents", "cs:DescribeEventsForRegion", "cs:DescribeKubeConfigManagementTaskList", "cs:DescribeKubernetesVersionMetadata", "cs:DescribePatternTypes", "cs:DescribePolicies", "cs:DescribePolicyDetails", "cs:DescribeTaskInfo", "cs:DescribeTemplateAttribute", "cs:DescribeTemplates", "cs:DescribeUserInstances", "cs:DescribeUserPermission", "cs:ListAddons", "cs:ListHaveKubeconfigDeletedAccounts", "cs:ListKubeConfigRecycle", "cs:ListOperationPlans", "cs:ListUserKubeConfigStates", "cs:OpenAckService", "cs:DescribeTasks", "cs:PauseTask", "cs:QueryAlertContact", "cs:QueryAlertContactGroup", "cs:RestoreKubeConfigRecycleItem", "cs:RestoreMultiKubeConfigRecycleItems", "cs:ResumeTask", "cs:UpdateMessageFeedback", "cs:DescribeUserQuota", "cs:ListOperationPlans", "cs:CancelOperationPlan", "cs:UpdateTemplate", "cs:UpdateUserPermissions" ], "Resource": "*" } ] }