Use esta página para entender as permissões do RBAC que os componentes do Knative serving detêm para manter o acesso ao cluster. Essas permissões são obrigatórias e ativadas por padrão no Knative serving. Não tente desativá-las.
| Componentes | Namespace | Conta de serviço | 
|---|---|---|
activator | 
  knative-serving | controlador | 
autoscaler | 
  knative-serving | controlador | 
controller | 
  knative-serving | controlador | 
webhook | 
  knative-serving | controlador | 
storage-version-migration-serving | 
  knative-serving | controlador | 
webhook | 
  knative-serving | controlador | 
cloud-run-operator | 
  cloud-run-system | cloud-run-operator | 
A conta de serviço cloud-run-operator tem o mesmo conjunto de
permissões que controller. O operador é o que implanta todos os componentes do Knative serving, incluindo definições e controladores de recursos personalizados.
RBAC para contas de serviço do Knative serving
Use as definições de apiGroup a seguir para entender quais permissões de controle de acesso
cada recurso tem no Knative serving para as contas de serviço controller
e cloud-run-operator.
- apiGroups:
  - ""
  resources:
  - pods
  - secrets
  verbs:
  - deletecollection
- apiGroups:
  - ""
  resources:
  - nodes
  verbs:
  - get
  - watch
  - list
- apiGroups:
  - ""
  resources:
  - pods
  - namespaces
  - secrets
  - configmaps
  - endpoints
  - services
  - events
  - serviceaccounts
  verbs:
  - get
  - list
  - create
  - update
  - delete
  - patch
  - watch
- apiGroups:
  - ""
  resources:
  - endpoints/restricted
  verbs:
  - create
- apiGroups:
  - ""
  resources:
  - namespaces/finalizers
  verbs:
  - update
- apiGroups:
  - apps
  resources:
  - deployments
  - deployments/finalizers
  verbs:
  - get
  - list
  - create
  - update
  - delete
  - patch
  - watch
- apiGroups:
  - admissionregistration.k8s.io
  resources:
  - mutatingwebhookconfigurations
  - validatingwebhookconfigurations
  verbs:
  - get
  - list
  - create
  - update
  - delete
  - patch
  - watch
- apiGroups:
  - apiextensions.k8s.io
  resources:
  - customresourcedefinitions
  - customresourcedefinitions/status
  verbs:
  - get
  - list
  - create
  - update
  - delete
  - patch
  - watch
- apiGroups:
  - autoscaling
  resources:
  - horizontalpodautoscalers
  verbs:
  - get
  - list
  - create
  - update
  - delete
  - patch
  - watch
- apiGroups:
  - coordination.k8s.io
  resources:
  - leases
  verbs:
  - get
  - list
  - create
  - update
  - delete
  - patch
  - watch
- apiGroups:
  - admissionregistration.k8s.io
  resources:
  - validatingwebhookconfigurations
  verbs:
  - get
  - list
  - create
  - update
  - delete
  - patch
  - watch
A tabela a seguir lista como as permissões do RBAC são usadas no Knative serving, em que:
- view inclui os verbos: get, list, watch
 - modify inclui os verbos: create, update, delete, patch
 
| Permissões | Motivos | 
|---|---|
Pode ver todos os secrets | 
  O webhook precisa ler o secret do namespace knative-serving.
    O controlador do mapeamento de domínios precisa ler o secret do certificado gerada pelo recurso TLS automático e, em seguida, copiá-las para o namespace gke-system. | 
  
Pode modificar pods | 
  O controlador do mapeamento de domínios precisa criar um pod para exibir solicitações ao desafio HTTP01 correspondente. | 
Pode modificar secrets | 
  O controlador de mapeamento de domínio precisa criar ou atualizar o secret do certificado.
O webhook precisa ler o secret do namespace knative-serving. | 
  
Pode modificar configmaps | 
  Usado no recurso de URL padrão. O controlador precisa atualizar o configmap "config-domain" no namespace "knative-serving" para adicionar o URL "nip.io". | 
Pode modificar endpoints | 
  O controlador sem servidor precisa criar, atualizar ou excluir os endpoints. O controlador de rotas precisa criar, atualizar ou excluir os endpoints. | 
Pode modificar services | 
  O controlador de rotas precisa criar, atualizar ou excluir um serviço. O controlador sem servidor precisa criar, atualizar ou excluir um serviço. O controlador de mapeamento de domínio precisa criar um serviço para atender a solicitações de desafio HTTP01. | 
Pode modificar events | 
  O controlador do Knative serving cria e emite eventos para os recursos gerenciados pelo Knative. | 
Pode modificar serviceaccounts | 
  O Knative serving precisa ler uma conta de serviço indiretamente. | 
Pode modificar endpoints/restricted | 
  O Knative serving precisa criar endpoints quando o RestrictedEndpointsAdmission está ativado. | 
Pode modificar deployments | 
  O controlador de revisão precisa criar ou atualizar uma implantação para o serviço Knative. | 
Pode modificar mutatingwebhookconfiguration | 
  O webhook do Knative adiciona caBundle a mutatingwebhookconfigurations de propriedade do Knative. | 
Pode modificar validatingwebhookconfiguration | 
  O webhook do Knative adiciona o caBundle a validatingwebhookconfigurations de propriedade do Knative. | 
Pode modificar customresourcedifinitions customresourcedefinitions/status | 
  O job de pós-instalação do Knative precisa fazer upgrade dos CRDs relacionados ao Knative para a versão v1. | 
Pode modificar horizontalpodautoscalers | 
  O Knative é compatível com o escalonamento automático baseado em HPA. | 
Pode modificar namespace/finalizer | 
  O Knative serving precisa definir ownerreference para o namespace do Knative serving. |