Todos os produtos
Search
Central de documentação

Container Service for Kubernetes:Autorizar operações no cluster com RBAC

Última atualização: Jun 27, 2026

A operação de recursos Kubernetes em um cluster ACK baseia-se em um modelo de autorização dupla: Resource Access Management (RAM) e Kubernetes Role-Based Access Control (RBAC). A conta Alibaba Cloud possui ambas as permissões por padrão. Usuários RAM e funções RAM precisam receber essas permissões explicitamente para acessar os recursos do cluster.

Como funciona

O sistema de autorização do ACK é composto por duas camadas: o RAM da Alibaba Cloud e o RBAC do Kubernetes. Juntas, elas formam uma cadeia completa de autorização que abrange desde os recursos na nuvem até os recursos internos do cluster.

  • RAM: Define quem pode acessar o cluster. Atua no nível de recursos da nuvem e controla as permissões de uma entidade de segurança para operações de API em clusters ACK e seus serviços dependentes.

  • RBAC: Define o que uma entidade de segurança pode fazer dentro do cluster. Oferece autorização granular ao especificar quais operações (como criar ou excluir) uma entidade pode executar em recursos Kubernetes específicos (como Pods e Deployments).

Mecanismo RBAC do Kubernetes

image
  • Uma ClusterRole define um conjunto de permissões aplicáveis a todo o cluster. Uma ClusterRoleBinding associa essa função a uma entidade de segurança, tornando as permissões válidas em todo o cluster.

  • Uma Role define um conjunto de permissões restritas a um único namespace. Uma RoleBinding vincula essa função a uma entidade de segurança, limitando sua validade apenas àquele namespace.

Cenário 1: Autorizar com uma conta Alibaba Cloud

  1. Faça login no ACK console. No painel de navegação à esquerda, clique em Authorizations.

  2. Na página Authorizations, configure as permissões.

    • Para conceder permissões a um usuário RAM: Clique na aba RAM Users, localize o usuário RAM desejado e clique em Modify Permissions na coluna Actions para acessar a página Permissions.

    • Para conceder permissões a uma função RAM: Clique na aba RAM Role, localize a função RAM desejada e clique em Modify Permissions para acessar a página Permission Management.

  3. Clique em + Add Permissions. Siga as instruções na tela para adicionar uma permissão ao usuário RAM ou à função RAM no nível do cluster ou do namespace e selecione uma função predefinida. Escolha a função de acordo com as responsabilidades do usuário. Para detalhes sobre as permissões de cada função predefinida, consulte Apêndice: Funções predefinidas.

Cenário 2: Autorizar com um usuário ou função RAM

Por padrão, um usuário RAM ou uma função RAM não pode conceder permissões RBAC a outras entidades de segurança. Para simplificar o gerenciamento, designe um usuário RAM ou uma função RAM como administrador de permissões. Esse administrador poderá então conceder permissões RBAC a outras entidades.

Etapa 1: Definir um usuário ou função RAM como administrador

1. Conceder permissões RAM para autorização

Método 1: Usar políticas do sistema

Importante

As políticas do sistema AliyunRAMReadOnlyAccess e AliyunCSFullAccess concedem permissões amplas. Para um controle mais granular, consulte Método 2: Conceder permissões granulares usando uma política personalizada.

  1. Faça login no RAM console com sua conta Alibaba Cloud e localize o usuário RAM ou a função RAM desejada.

    • Para um usuário RAM: Escolha Credential Management > User. Na lista de usuários, localize o usuário desejado e clique em Add Permissions na coluna Actions.

    • Para uma função RAM: Escolha Credential Management > Role. Na lista de funções, localize a função desejada e clique em Add Permissions na coluna Actions.

  2. Defina o Resource Scope como Account. Na seção Policies, localize e selecione as políticas do sistema AliyunRAMReadOnlyAccess e AliyunCSFullAccess. Siga as instruções para concluir a autorização.

Método 2: Usar uma política personalizada

Um administrador de permissões necessita das seguintes permissões:

  • Visualize informações sobre outras entidades de segurança RAM.

  • Visualize listas e detalhes de clusters.

  • Visualize configurações RBAC existentes de um cluster.

  • Executar operações de autorização RBAC em um cluster.

Faça login no RAM console e conceda as permissões RAM necessárias ao usuário RAM ou à função RAM desejada utilizando o exemplo de política abaixo. Para mais detalhes, consulte Conceder permissões usando uma política personalizada.

{
    "Statement": [{
            "Action": [
                "ram:Get*",
                "ram:List*",
                "cs:Get*",
                "cs:Describe*",
                "cs:List*",
                "cs:GrantPermission"
            ],
            "Resource": "*",
            "Effect": "Allow"
        }
    ],
    "Version": "1"
}

2. Conceder a função RBAC Administrator

Faça login no ACK console com sua conta Alibaba Cloud e conceda a função predefinida Administrator ao usuário RAM ou à função RAM desejada no nível do cluster.

  1. Faça login no ACK console. No painel de navegação à esquerda, clique em Authorizations.

  2. Na página Authorizations, configure as permissões.

    • Para conceder permissões a um usuário RAM: Clique na aba RAM Users, localize o usuário RAM desejado e clique em Modify Permissions na coluna Actions para acessar a página Permissions.

    • Para conceder permissões a uma função RAM: Clique na aba RAM Role, localize a função RAM desejada e clique em Modify Permissions para acessar a página Permission Management.

  3. Clique em + Add Permissions, siga as instruções para adicionar uma permissão no nível do cluster ou do namespace e selecione Administrator como a função predefinida.

    Conceder permissões com o escopo All Clusters estende automaticamente o acesso do administrador de permissões a quaisquer novos clusters, eliminando a necessidade de autorizações repetidas.

Etapa 2: Conceder permissões RBAC a outros usuários

Após receber a autorização, o administrador de permissões pode conceder permissões RBAC a outros usuários RAM ou funções RAM na página Authorizations seguindo o procedimento descrito no Cenário 1. Após a autorização, os usuários RAM ou funções RAM poderão operar recursos Kubernetes dentro de seu escopo de permissões.

Melhores práticas para ambientes de produção

Para aumentar a segurança e a manutenibilidade do gerenciamento de permissões, siga estas melhores práticas.

  • Siga o princípio do menor privilégio

    Conceda às entidades de segurança, como usuários e funções RAM, apenas o conjunto mínimo de permissões necessário para realizar suas tarefas. Evite conceder indiscriminadamente funções de alto privilégio, como Administrator.

  • Implemente autorização granular

    • Utilize autorização em camadas: Diferencie as responsabilidades entre o RAM para acesso a recursos da nuvem e o RBAC para acesso a recursos internos do cluster.

    • Restrinja o escopo: Sempre que possível, use uma RoleBinding para limitar as permissões a um namespace específico em vez de usar uma ClusterRoleBinding abrangente.

    • Escolha funções com precisão: Utilize as funções predefinidas fornecidas pelo ACK. Caso precise criar funções personalizadas, defina as regras de permissão com exatidão e evite o uso de curingas (*).

  • Pratique governança contínua

    O gerenciamento de permissões é um processo dinâmico. Estabeleça um mecanismo de auditoria regular para revogar prontamente permissões redundantes ou excessivas. Registre e monitore as operações de funções com altos privilégios, como administradores de permissões.

Apêndice: Funções predefinidas

Para simplificar o gerenciamento de permissões e atender a casos de uso comuns, o ACK oferece diversas funções predefinidas padronizadas baseadas no mecanismo RBAC.

Função predefinida

Permissões RBAC no cluster

Administrator

Acesso total de leitura/gravação a todos os recursos Kubernetes em todos os namespaces, incluindo nós do cluster, PVs, namespaces e cotas de recursos.

Read-only Administrator

Acesso somente leitura a todos os recursos Kubernetes em todos os namespaces, incluindo nós do cluster, PVs, namespaces e cotas de recursos.

OM Engineer

Acesso de leitura/gravação aos recursos expostos no console em todos os namespaces. Inclui acesso de leitura/atualização a nós do cluster, PVs e namespaces, além de acesso somente leitura a todos os outros recursos.

Developer

Acesso de leitura/gravação aos recursos expostos no console em todos os namespaces ou em namespaces específicos do cluster.

Restricted User

Acesso somente leitura aos recursos expostos no console em todos os namespaces ou em namespaces específicos do cluster.

Custom

As permissões dependem da ClusterRole especificada. Para evitar que identidades obtenham acesso não intencional, verifique as permissões da ClusterRole antes de atribuí-la. Consulte Restringir operações de recursos com RBAC personalizado.

Importante

Qualquer usuário RAM ou função RAM com a permissão cluster-admin tem controle total sobre todos os recursos do cluster, equivalente a uma conta root da Alibaba Cloud. Conceda essa permissão com extrema cautela.

FAQ

Tratamento de erros de permissão

Se uma operação realizada pelo console ou por uma API não possuir as permissões RBAC necessárias, o sistema retornará um erro de permissão. Consulte a tabela a seguir para obter soluções:

Código ou mensagem de erro

Descrição

Solução

ForbiddenCheckControlPlaneLog

Sem autorização para visualizar logs do plano de controle.

Conceda ao usuário a função Administrator ou O&M Engineer.

ForbiddenHelmUsage

Sem autorização para executar operações do Helm.

Conceda ao usuário a função Administrator.

ForbiddenRotateCert

Sem autorização para realizar rotação de certificados.

Conceda ao usuário a função Administrator.

ForbiddenAttachInstance

Sem autorização para adicionar um nó.

Conceda ao usuário a função Administrator ou O&M Engineer.

ForbiddenUpdateKMSState

Sem autorização para modificar o status de criptografia em repouso do cluster.

Conceda ao usuário a função Administrator ou O&M Engineer.

Forbidden get trigger

Sem autorização para recuperar informações de gatilho de aplicação.

Conceda ao usuário a função Administrator, O&M Engineer ou Developer.

ForbiddenQueryClusterNamespace

Sem autorização para consultar namespaces do cluster.

Conceda ao usuário a função Administrator, O&M Engineer, Developer ou Restricted User.

Criação de permissões personalizadas

Crie uma Role ou ClusterRole personalizada escrevendo um manifesto YAML. Por exemplo, crie uma ClusterRole que permita apenas visualizar Pods e selecione essa função personalizada ao conceder permissões. Para mais detalhes, consulte Usar RBAC personalizado para restringir operações em recursos do cluster.

As políticas RBAC do Kubernetes são aditivas e suportam apenas regras Allow. Não existe uma regra Deny explícita.

Tópicos relacionados