Entendendo as permissões do RBAC
As funções de acesso ao serviço IAM correspondem ao controle de acesso baseado em funções (RBAC) d Kubernetes, dentro dos clusters d IBM Cloud Kubernetes Service. As funções RBAC e as funções de cluster definem um conjunto de permissões de como os usuários podem interagir com recursos do Kubernetes em seu cluster.
Com o IAM do IBM Cloud, você pode gerenciar automaticamente o RBAC a partir de IBM Cloud, atribuindo aos usuários funções de acesso ao serviço IAM. É possível que você queira entender melhor o uso do RBAC na customização do acesso para os recursos do cluster, como as contas de serviço.
- As funções do IBM Cloud IAM não podem ser designadas a uma conta de serviço. Em vez disso, é possível designar funções RBAC a contas de serviço diretamente.
- Os usuários devem executar o comando
ibmcloud ks cluster configpara que as mudanças de função entrem em vigor.
Quais são os tipos de funções do RBAC?
- O escopo da função do Kubernetes é definido para recursos em um espaço de nomes específico, como uma implementação ou serviço.
- O escopo da função de cluster do Kubernetes é definido para recursos em todo o cluster, como nós do trabalhador, ou para recursos com escopo definido para espaços de nomes que podem ser localizados em cada espaço de nomes, como pods.
O que são associações de funções RBAC e associações de funções em cluster?
As ligações de função aplicam funções RBAC ou funções de cluster a um namespace específico. Ao usar uma ligação de função para aplicar uma função, você fornece a um usuário acesso a um recurso específico em um namespace específico. Ao usar uma ligação de função para aplicar uma função de cluster, você fornece a um usuário acesso a recursos com escopo definido por namespace que podem ser localizados em cada namespace, como pods, mas somente dentro de um namespace específico.
As ligações de função de cluster aplicam funções de cluster RBAC a todos os namespaces no cluster. Ao usar uma ligação de função de cluster para aplicar uma função de cluster, você fornece a um usuário acesso a recursos em todo o cluster (como nós do trabalhador) ou a recursos com escopo definido por namespace em cada namespace, como pods.
Como são essas funções no meu cluster?
Para que os usuários possam interagir com os recursos do Kubernetes em um cluster, deve-se designar o acesso de usuário a um ou mais espaços de nomes por meio de funções de acesso de serviço do IBM Cloud IAM. Cada usuário que é designado a uma função de acesso de serviço é automaticamente designado a uma função de cluster RBAC correspondente. Essas funções de cluster RBAC são predefinidas e permitem que os usuários interajam com recursos do Kubernetes em seu cluster. Além disso, uma ligação de função é criada para aplicar a função de cluster a um namespace específico ou uma ligação de função de cluster é criada para aplicar a função de cluster a todos os namespaces.
Para saber mais sobre as ações permitidas por cada função RBAC, consulte o tópico de referência “Funções de acesso ao serviço IAM do IBM Cloud ”. Para ver as permissões que são concedidas por cada função RBAC para recursos individuais do Kubernetes, efetue o registro de saída de Permissões de recurso do Kubernetes por função RBAC.
Posso criar funções personalizadas ou funções de cluster?
Se você estiver fazendo suas próprias políticas RBAC customizadas, certifique-se de não editar as ligações de função IBM existentes que estão no cluster ou criar ligações de função customizadas com o mesmo nome das ligações IBM existentes. As mudanças feitas nas ligações de função RBAC fornecidas pela IBMnão são retidas nas atualizações.
As funções de cluster view, edit, admin e cluster-admin são funções predefinidas que são criadas automaticamente quando você designa a um usuário a função de acesso ao serviço IBM Cloud IAM
correspondente. Para conceder outras permissões do Kubernetes, é possível criar permissões customizadas de RBAC. As funções RBAC personalizadas são complementares e não alteram nem substituem quaisquer funções RBAC que
você possa ter com funções de acesso a serviços. Observação: para criar permissões RBAC personalizadas, é necessário ter a função de acesso ao serviço IAM Manager ou a função de administrador da plataforma,
que concede a função RBAC “ cluster-admin ” ( Kubernetes ). No entanto, os outros usuários não precisarão de uma função de acesso de serviço do IAM se você gerenciar suas próprias funções RBAC customizadas do Kubernetes.
Quando preciso usar ligações de função de cluster personalizadas e ligações de funções?
Você pode desejar autorizar quem pode criar e atualizar os pods em seu cluster. Com as políticas de segurança de pods (PSPs), você pode usar as associações de funções de cluster existentes que vêm com o seu cluster ou criar as suas próprias.
Você também pode desejar integrar complementos a seu cluster. Por exemplo, ao configurar o Helm no seu cluster.
Criando permissões customizadas de RBAC para usuários, grupos ou contas de serviço
As funções de cluster view, edit, admin e cluster-admin são criadas automaticamente quando você designa a função de acesso ao serviço IBM Cloud IAM correspondente. Você precisa que suas políticas
de acesso do cluster sejam mais granulares do que essas permissões predefinidas permitem? Sem problemas! É possível criar funções RBAC customizadas e funções de cluster.
É possível designar funções de RBAC customizadas e funções de cluster para usuários individuais, grupos de usuários ou contas de serviço. Quando uma ligação é criada para um grupo, ela afeta qualquer usuário que é incluído ou removido desse grupo. Quando você inclui usuários em um grupo, eles obtêm os direitos de acesso do grupo, além de quaisquer direitos de acesso individuais concedidos a eles. Se ele for removido, seu acesso será revogado. Observe que não é possível adicionar contas de serviço a grupos de acesso.
Se você quiser atribuir acesso a um processo de contêiner que é executado em pods, como uma cadeia de ferramentas de entrega contínua, pode usar Kubernetes ServiceAccounts. Para seguir um tutorial que demonstre como configurar contas de serviço para Travis e Jenkins e designar funções RBAC customizadas para as contas de serviço, consulte a postagem
do blog ServiceAccounts do Kubernetes para uso em sistemas automatizados.
Para evitar mudanças drásticas, não altere as funções de cluster predefinidas view, edit, admin e cluster-admin. As funções RBAC personalizadas são complementares e não alteram nem substituem
quaisquer funções RBAC que você possa ter com as funções de acesso ao serviço IAM d IBM Cloud.
-
Acesso ao namespace: para permitir que um usuário, um grupo de acesso ou uma conta de serviço acesse um recurso dentro de um namespace específico, escolha uma das combinações a seguir:
- Criar uma função e aplicá-la a uma ligação de função. Essa opção é útil para controlar o acesso a um recurso exclusivo que existe somente em um namespace, como uma implementação de app.
- Criar uma função de cluster e aplicá-la a uma ligação de função. Essa opção é útil para controlar o acesso a recursos gerais em um namespace, como os pods.
-
Acesso a todo o cluster: para permitir que um usuário ou um grupo de acesso acesse recursos em todo o cluster ou em todos os namespaces, crie uma função de cluster e aplique-a com uma ligação de função de cluster. Essa opção é útil para controlar o acesso a recursos que não estão com escopo definido para namespace (como nós do trabalhador) ou recursos em todos os namespaces em seu cluster (como os pods em cada namespace).
-
Certifique-se de que você tenha a função de acesso ao serviço Manager IAM para todos os namespaces ou a função de plataforma Administrator.
-
Para atribuir acesso a usuários individuais ou a usuários de um grupo de acesso, certifique-se de que o usuário ou grupo tenha recebido pelo menos uma função de acesso à plataforma IAM no nível do serviço IBM Cloud Kubernetes Service.
Para criar permissões RBAC customizadas.
-
Crie um arquivo
.yamlsemelhante ao seguinte para definirroleoucluster role.kind: Role apiVersion: rbac.authorization.k8s.io/v1 metadata: namespace: default name: my_role rules: - apiGroups: [""] resources: ["pods"] verbs: ["get", "watch", "list"] - apiGroups: ["apps", "extensions"] resources: ["daemonsets", "deployments"] verbs: ["get", "list", "watch", "create", "update", "patch", "delete"]Entendendo os parâmetros YAML Parâmetro Descrição kindUse Rolepara conceder acesso a recursos dentro de um namespace específico. UseClusterRolepara conceder acesso a recursos em todo o cluster (como nós do trabalhador) ou a recursos com escopo definido por namespace (como os pods em todos os namespaces).metadata.namespaceSomente para o tipo Role: especifique o namespace do Kubernetes para o qual o acesso é concedido.rules.apiGroupsEspecifique os Grupos de APIs do Kubernetes com os quais você deseja que os usuários interajam, como "apps","batch"ou"extensions". Para acesso ao grupo principal de APIs no caminho de RESTapi/v1, deixe o grupo em branco:[""].rules.resourcesEspecifique os tipos de recurso do Kubernetes aos quais você deseja conceder acesso, como "daemonsets","deployments","events"ou"ingresses". Se você especificar"nodes", o tipo deverá serClusterRole.rules.verbsEspecifique os tipos de ações que você deseja que os usuários executem, como "get","list","describe","create"ou"delete". -
Crie a função ou a função de cluster em seu cluster.
kubectl apply -f my_role.yaml -
Verifique se a função ou a função de cluster foi criada.
- Função:
kubectl get roles -n <namespace> ``` * Função de cluster: ```sh {: pre} kubectl get clusterroles ``` -
Ligue os usuários à função ou função de cluster criando um arquivo
.yaml. Anote a URL exclusiva a ser usada para o nome de cada assunto.kind: RoleBinding apiVersion: rbac.authorization.k8s.io/v1 metadata: name: my_role_binding namespace: default subjects: - kind: User name: IAM#user1@example.com apiGroup: rbac.authorization.k8s.io - kind: Group name: team1 apiGroup: rbac.authorization.k8s.io - kind: ServiceAccount name: <service_account_name> namespace: <kubernetes_namespace> roleRef: kind: Role name: my_role apiGroup: rbac.authorization.k8s.ioEntendendo os parâmetros YAML Parâmetro Descrição kindEspecifique RoleBindingpara umRoleouClusterRoleespecífico de espaço de nomes.
EspecifiqueClusterRoleBindingpara um clusterClusterRoleem todo o cluster.apiVersionUse o rbac.authorization.k8s.io/v1.metadata.namespace- Para o tipo
RoleBinding: especifique o espaço de nomes do Kubernetes ao qual o acesso é concedido. - Para o tipo
ClusterRoleBinding: não use o camponamespace.
metadata.nameNomeie a ligação de função ou a ligação de função de cluster. subjects.kindEspecifique o tipo como um dos seguintes:
User: ligue a função RBAC ou função de cluster a um usuário individual na conta.Group: ligue a função RBAC ou função de cluster a um grupo de acesso do IAM da IBM Cloud na conta.ServiceAccount: ligue a função RBAC ou função de cluster a uma conta de serviço em um espaço de nomes no cluster.
subjects.nameUser: Anexe o endereço de e-mail do usuário individual aIAM#da seguinte forma:IAM#user@email.com.Group: Especifique o nome do grupo de acesso IAM IBM Cloud em sua conta.- Para
ServiceAccount: especifique o nome da conta do serviço.
subjects.apiGroupUserouGroup: Userbac.authorization.k8s.io.- Para
ServiceAccount: não inclua esse campo.
subjects.namespaceServiceAccountsomente: Especifique o nome do namespace Kubernetes no qual a conta de serviço está implantada.roleRef.kindInsira o mesmo valor que o kindno arquivo.yamlde função:RoleouClusterRole.roleRef.nameInsira o nome do arquivo .yamlde função.roleRef.apiGroupUse o rbac.authorization.k8s.io. - Para o tipo
-
Crie a ligação de função ou o recurso de ligação de função de cluster em seu cluster.
kubectl apply -f my_role_binding.yaml -
Verifique se a ligação foi criada.
kubectl get rolebinding -n <namespace> -
Opcional: para cumprir o mesmo nível de acesso de usuário em outros namespaces, é possível copiar as ligações de função para essas funções ou funções de cluster para outros namespaces.
- Copie a ligação de função de um namespace para outro namespace.
kubectl get rolebinding <role_binding_name> -o yaml | sed 's/<namespace_1>/<namespace_2>/g' | kubectl -n <namespace_2> create -f - ``` Por exemplo, copie a ligação de função `custom-role` do namespace `default` para o namespace `testns`. ```sh {: pre} kubectl get rolebinding custom-role -o yaml | sed 's/default/testns/g' | kubectl -n testns create -f - ``` 2. Verifique se a ligação de função foi copiada. Se você incluiu um grupo de acesso do IBM Cloud IAM na ligação de função, cada usuário nesse grupo será incluído individualmente, não como um ID do grupo de acesso. ```sh {: pre} kubectl get rolebinding -n <namespace_2> ```
Agora que você criou e ligou uma função RBAC ou uma função de cluster customizada do Kubernetes, acompanhe os usuários. Peça-lhes para testar uma ação que eles tenham permissão para concluir devido à função, como excluir um pod.
Ampliando permissões existentes agregando funções de cluster
É possível ampliar as permissões existentes de seus usuários, agregando ou combinando funções de cluster com outras funções de cluster. Ao designar a um usuário uma função de acesso ao serviço da IBM Cloud, o usuário é incluído em uma função de cluster RBAC correspondente do Kubernetes. No entanto, talvez você queira permitir que determinados usuários realizem mais operações.
Por exemplo, um usuário com o cluster admin com escopo definido para espaço de nomes não pode usar o comando kubectl top pods para visualizar métricas de pod no espaço de nome. Você pode agregar uma função de cluster
para que os usuários na função de cluster admin estejam autorizados a executar o comando top pods. Para obter mais informações, consulte os Docs do Kubernetes.
Quais são algumas operações comuns para as quais eu poderia querer ampliar as permissões de uma função padrão de cluster?
Analise as operações que cada função padrão do cluster RBAC permite para ter uma ideia do que os usuários podem fazer e, em seguida, compare as operações permitidas com o que você deseja que eles possam fazer.
Se seus usuários na mesma função de cluster encontrarem erros semelhantes ao seguinte para o mesmo tipo de operação, você talvez deseje ampliar a função de cluster para incluir essa operação.
Error from server (Forbidden): pods.metrics.k8s.io is forbidden: User "IAM#myname@example.com" can't list resource "pods" in API group "metrics.k8s.io" in the namespace "mynamespace"
Antes de iniciar: efetue login na sua conta. If applicable, target the appropriate resource group. Configure o contexto para o seu cluster.
-
Crie um arquivo YAML de função de cluster. Na seção
labels, especifique a função de cluster existente para a qual você deseja agregar permissões. O exemplo a seguir amplia a função de clusteradminpredefinida para permitir que os usuários executemkubectl top pods. Para obter mais exemplos, consulte os docs do Kubernetes.apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: name: view-pod-metrics labels: rbac.authorization.k8s.io/aggregate-to-admin: "true" rules: - apiGroups: - "metrics.k8s.io" resources: - pods verbs: - listEntendendo os parâmetros YAML Parâmetro Descrição metadata.nameInsira um nome para a função de cluster. Não use os nomes de função de cluster predefinidos: view,edit,adminecluster-admin.metadata.labelsInclua um rótulo que corresponda à função de cluster que deseja agregar no formato
rbac.authorization.k8s.io/aggregate-to-<cluster_role>: "true". Os rótulos para as funções de cluster predefinidas são os seguintes.- Função de acesso ao serviço Gerenciador do IAM , com escopo definido para um espaço de nomes:
rbac.authorization.k8s.io/aggregate-to-admin: "true" - Função de acesso ao serviço Gravador do IAM:
rbac.authorization.k8s.io/aggregate-to-edit: "true" - Função de acesso ao serviço Leitor do IAM:
rbac.authorization.k8s.io/aggregate-to-view: "true"
rules.apiGroupsEspecifique os Grupos de APIs do Kubernetes com os quais você deseja que os usuários interajam, como "apps","batch"ou"extensions". Para acesso ao grupo principal de APIs no caminho de RESTapi/v1, deixe o grupo em branco:[""].rules.resourcesEspecifique os tipos de recurso do Kubernetes aos quais você deseja conceder acesso, como "daemonsets","deployments","events"ou"ingresses".rules.verbsEspecifique os tipos de ações que você deseja que os usuários executem, como "get","list","describe","create"ou"delete". - Função de acesso ao serviço Gerenciador do IAM , com escopo definido para um espaço de nomes:
-
Crie a função de cluster em seu cluster. Todos os usuários que tenham uma vinculação à função de cluster “
admin” agora contam com as permissões adicionais da função de cluster “view-pod-metrics”.kubectl apply -f <cluster_role_file.yaml> -
Contate os usuários que têm a função de cluster
admin. Solicite a eles para atualizar sua configuração de cluster e testar a ação, comokubectl top pods.
Verificando as funções de RBAC
Verifique o seu RBAC customizado ou o acesso de serviço do IAM sincronizado para funções RBAC em seu cluster IBM Cloud Kubernetes Service.
Verificando funções de RBAC a partir da IU
-
Faça login no console.
-
Clique no cluster com as funções de RBAC que você deseja verificar.
-
Clique no Painel do Kubernetes.
Se você tiver um cluster somente de rede privada, não será possível abrir o painel, a menos que você esteja em uma VPN. Consulte Acessando clusters por meio do terminal em serviço de nuvem privada.
-
Na seção Cluster, revise as Ligações de função de cluster, Funções de cluster, Ligações de função e Funções.
Verificando funções de RBAC com a CLI
-
Verifique se o usuário está incluído na função de RBAC. Os usuários não serão incluídos em uma ligação de função se eles tiverem uma permissão maior. Por exemplo, se os usuários tiverem uma função de cluster e estiverem em uma ligação de função de cluster, eles também não serão incluídos em cada ligação de função de namespace individual.
Você deve ser um administrador de cluster para verificar os vínculos de função e os vínculos de função de cluster. Os administradores de cluster têm a função de acesso ao serviço Manager em todos os namespaces ou a função de acesso à plataforma Administrator.
- Leitor:
kubectl get rolebinding ibm-view -o yaml -n <namespace> ``` * Gravador: ```sh {: pre} kubectl get rolebinding ibm-edit -o yaml -n <namespace> ``` * Gerente, com escopo definido para um namespace: ```sh {: pre} kubectl get rolebinding ibm-operate -o yaml -n <namespace> ``` * Gerente, todos os namespaces: ```sh {: pre} kubectl get clusterrolebinding ibm-admin -o yaml ```
Saída de exemplo
Ao atribuir ao usuário user@email.com e ao grupo de acesso team1 a função de acesso de serviço Leitor e executar kubectl get rolebinding ibm-view -o yaml -n default, você terá a saída
de exemplo abaixo.
apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
creationTimestamp: 2018-05-23T14:34:24Z
name: ibm-view
namespace: default
resourceVersion: "8192510"
selfLink: /apis/rbac.authorization.k8s.io/v1/namespaces/default/rolebindings/ibm-view
uid: 63f62887-5e96-11e8-8a75-b229c11ba64a
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: view
subjects:
- apiGroup: rbac.authorization.k8s.io
kind: User
name: IAM#user@email.com
- apiGroup: rbac.authorization.k8s.io
kind: group
name: team1
Funções de acesso ao serviço Kubernetes e funções RBAC correspondentes
A tabela a seguir mostra as permissões de recursos do Kubernetes que são concedidas por cada função de acesso ao serviço e sua função RBAC correspondente.
| Função de acesso de serviço | Função RBAC Correspondente, Ligação e Escopo | Permissões de recursos do Kubernetes |
|---|---|---|
| Função Leitor | Com escopo definido para um espaço de nomes: função de cluster view aplicada pela ligação de função ibm-view àquele espaço de nomes.-Com escopo definido para todos os espaços de nomes: função de cluster view aplicada pela ligação de função ibm-view em cada espaço de nomes do cluster. Também é possível visualizar o cluster no console e na CLI do IBM
Cloud. |
|
| Função Gravador | Com escopo definido para um espaço de nomes:função de cluster edit aplicada pela ligação de funções ibm-edit nesse espaço de nomes.
Com escopo definido para todos os espaços de nomes: função de cluster |
|
| Função Gerenciador | Com escopo definido para um espaço de nomes: função de cluster admin aplicada pela ligação de funções ibm-operate àquele espaço de nomes
Com escopo definido para todos os espaços de nomes: função de cluster |
Quando restrito a um namespace:
|
Permissões de recurso do Kubernetes por função RBAC
Cada usuário que recebe uma função de acesso ao serviço do IBM Cloud IAM também recebe automaticamente uma função de controle de acesso baseada em função (RBAC) do Kubernetes predefinida correspondente. Se você planeja gerenciar suas próprias funções RBAC customizadas do Kubernetes, consulte Criando permissões customizadas de RBAC para usuários, grupos ou contas de serviço. Para obter detalhes do nome do usuário, consulte Detalhes do emissor do IBM Cloud IAM para usuários do RBAC.
Você está pensando se tem as permissões corretas para executar um determinado comando kubectl em um recurso em um namespace? Tente o comando kubectl auth can-i.
A tabela a seguir mostra as permissões que são concedidas por cada função RBAC para recursos individuais do Kubernetes. As permissões são apresentadas como as ações verbs (ou ações) que um usuário com essa função pode realizar
em relação ao recurso, tais como “obter”, “listar”, “descrever”, “criar” ou “excluir”.
| Recurso do Kubernetes | view |
edit |
admin e cluster-admin |
|---|---|---|---|
bindings |
get, list, watch | get, list, watch | obter, listar, observar cluster-admin apenas: criar, excluir, atualizar. |
configmaps |
get, list, watch | criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
cronjobs.batch |
get, list, watch | criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
daemonsets.apps |
get, list, watch | criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
daemonsets.extensions |
get, list, watch | criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
deployments.apps |
get, list, watch | criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
deployments.apps/rollback |
|
criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
deployments.apps/scale |
get, list, watch | criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
deployments.extensions |
get, list, watch | criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
deployments.extensions/rollback |
|
criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
deployments.extensions/scale |
get, list, watch | criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
endpoints |
get, list, watch | criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
events |
get, list, watch | get, list, watch | get, list, watch |
horizontalpodautoscalers.autoscaling |
get, list, watch | criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
ingresses.extensions |
get, list, watch | criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
jobs.batch |
get, list, watch | criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
limitranges |
get, list, watch | get, list, watch | get, list, watch |
localsubjectaccessreviews |
|
|
create |
namespaces |
get, list, watch | get, list, watch | obter, listar, observar cluster-admin apenas: criar, excluir. |
namespaces/status |
get, list, watch | get, list, watch | get, list, watch |
networkpolicies |
get, list, watch | criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
networkpolicies.extensions |
get, list, watch | criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
node |
Nenhum | Nenhum | admin com escopo definido para um espaço de nomes: nenhum
|
persistentvolume |
Nenhum | Nenhum | criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
persistentvolumeclaims |
get, list, watch | criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
poddisruptionbudgets.policy |
get, list, watch | criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
pods |
get, list, watch | criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
criar, excluir, deletecollection, obter, listar, top, corrigir, atualizar, monitorar |
pods/attach |
|
criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
pods/exec |
|
criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
pods/log |
get, list, watch | get, list, watch | get, list, watch |
pods/portforward |
|
criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
pods/proxy |
|
criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
pods/status |
get, list, watch | get, list, watch | get, list, watch |
replicasets.apps |
get, list, watch | criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
replicasets.apps/scale |
get, list, watch | criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
replicasets.extensions |
get, list, watch | criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
replicasets.extensions/scale |
get, list, watch | criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
replicationcontrollers |
get, list, watch | criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
replicationcontrollers/scale |
get, list, watch | cr}criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
replicationcontrollers/status |
get, list, watch | get, list, watch | get, list, watch |
replicationcontrollers.extensions/scale |
get, list, watch | criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
resourcequotas |
get, list, watch | get, list, watch | get, list, watch |
resourcequotas/status |
get, list, watch | get, list, watch | get, list, watch |
rolebindings |
|
|
criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
roles |
|
|
criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
secrets |
|
criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
serviceaccounts |
get, list, watch | criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar, impersonate |
criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar, impersonate |
services |
get, list, watch | criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
services/proxy |
|
criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
statefulsets.apps |
get, list, watch | criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
statefulsets.apps/scale |
get, list, watch | criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
criar, excluir, deletecollection, obter, listar, corrigir, atualizar, monitorar |
Detalhes do emissor do IBM Cloud IAM para usuários do RBAC
Os usuários com uma função de acesso ao serviço para o IBM Cloud Kubernetes Service no IAM recebem funções de usuário correspondentes no RBAC. Os detalhes do usuário do RBAC incluem um ID de emissor exclusivo, solicitação
de assunto identificador e nome de usuário do Kubernetes. Esses detalhes variam com a versão do Kubernetes do cluster. Quando você atualiza um cluster de uma versão anterior, os detalhes são atualizados automaticamente. Os nomes de usuários
do RBAC são prefixados por IAM#. Para obter mais informações sobre como a autenticação OpenID funciona, consulte a Documentação do Kubernetes.
Será possível usar essas informações se você construir o conjunto de ferramentas de automação dentro do cluster que conta com os detalhes do usuário para autenticar-se no servidor da API do Kubernetes.
| Versão | Issuer | Solicitação | Maiúsculas e minúsculas* |
|---|---|---|---|
| Kubernetes | https://iam.cloud.ibm.com/identity |
realmed_sub_<account_ID> |
minúscula |
*: um exemplo de minúscula é user.name@company.com. Um exemplo de camel case é User.Name@company.com.