Detalles de Container Engine for Kubernetes

En este tema, se tratan los detalles de la escritura de políticas para controlar el acceso a Container Engine for Kubernetes.

Tipos de recursos

Tipo de recurso agregado

  • cluster-family

Tipos de recursos Individuales

  • clusters
  • cluster-node-pools
  • cluster-pod-shapes
  • cluster-virtualnode-pools
  • cluster-work-requests
  • cluster-workload-mappings

Comentarios

Una política que utiliza <verb> cluster-family es equivalente a escribir una política con una sentencia <verb> <individual resource-type> independiente para cada uno de los tipos de recursos individuales.

Consulte en la tabla Detalles de combinaciones de verbo + tipo de recurso los detalles de las operaciones de API que cubre cada verbo para cada tipo de recurso individual incluido en cluster-family.

Variables soportadas

Container Engine for Kubernetes soporta todas las variables generales (consulte Variables generales para todas las solicitudes), además de las que se muestran aquí.

El tipo de recurso clusters puede utilizar las siguientes variables:

Variable Tipo de variable Comentarios
target.cluster.id Entidad (OCID)  

El tipo de recurso cluster-node-pools puede utilizar las siguientes variables:

Variable Tipo de variable Comentarios
target.nodepool.id Entidad (OCID)  

El tipo de recurso cluster-virtual-node-pools puede utilizar las siguientes variables:

Variable Tipo de variable Comentarios
target.virtualnodepool.id Entidad (OCID)
target.cluster.id Entidad (OCID)  

El tipo de recurso cluster-workload-mappings puede utilizar las siguientes variables:

Variable Tipo de variable Comentarios
target.clusterworkloadmapping.id Entidad (OCID)
target.mapping.cluster_id Entidad (OCID)  

Detalles de combinaciones de verbo + tipo de recurso

En las siguientes tablas, se muestran los permisos y las operaciones de API que abarca cada verbo. El nivel de acceso es acumulativo al recorrer la progresión inspect > read > use > manage. Por ejemplo, un grupo que puede utilizar un recurso también puede inspeccionar y leer ese recurso. Un signo más (+) en una celda de la tabla indica un acceso incremental en comparación con la celda directamente por encima, mientras que "no extra" indica que no hay acceso incremental.

Por ejemplo, el verbo read para el tipo de recurso clusters incluye los mismos permisos y operaciones de API que el verbo inspect, además del permiso CLUSTER_READ y una serie de operaciones de API (p. ej., GetCluster, etc.). El verbo use abarca otros permisos y operaciones de API en comparación con read. Por último, manage abarca más permisos y operaciones en comparación con use.

clusters
Verbos Permisos API totalmente cubiertas API parcialmente cubiertas
inspect

CLUSTER_INSPECT

ListClusters

ListWorkRequests

ninguna

read

INSPECT +

CLUSTER_READ

INSPECT +

GetCluster

GetWorkRequest

ListWorkRequestErrors

ListWorkRequestLogs

ListAddons

GetAddon

GetCredentialRotationStatus

ninguna

use

READ +

CLUSTER_USE

READ +

CreateKubeconfig

ninguna

manage

USE +

CLUSTER_CREATE

CLUSTER_DELETE

CLUSTER_UPDATE

CLUSTER_MANAGE

CLUSTER_JOIN

USE +

UpdateCluster

AdministerK8s

InstallAddon

UpdateAddon

DisableAddon

JoinCluster

StartCredentialRotation

CompleteCredentialRotation

CreateCluster (también necesita use subnets, read virtual-network-family, inspect compartments, use vnics, use network-security-groups, use private-ips y manage public-ips)

DeleteCluster (también necesita manage cluster-node-pools, manage instance-family, use subnets, use vnics, use private-ips y manage public-ips)

UpdateClusterEndpointConfig (también necesita use vnics, use network-security-groups, use private-ips y manage public-ips)

cluster-node-pools
Verbos Permisos API totalmente cubiertas API parcialmente cubiertas
inspect

CLUSTER_NODE_POOL_INSPECT

ListNodePools

ListWorkRequests

ninguna

read

INSPECT +

CLUSTER_NODE_POOL_READ

INSPECT +

GetNodePool

GetWorkRequest

ListWorkRequestErrors

ListWorkRequestLogs

ninguna

use

no extra

no extra

ninguna

manage

USE +

CLUSTER_NODE_POOL_CREATE

CLUSTER_NODE_POOL_DELETE

CLUSTER_NODE_POOL_UPDATE

no extra

CreateNodePool, DeleteNodePool y UpdateNodePool (también necesitan manage instance-family, use subnets, use vnics e inspect compartments)
unidades de pod de cluster
Verbos Permisos API totalmente cubiertas API parcialmente cubiertas
inspect

CLUSTER_VIRTUAL_NODE_POOL_INSPECT

ListPodShapes

ninguna

read

no extra

 

no extra

ninguna

use

no extra

no extra

ninguna

manage

no extra

no extra

ninguna

agrupaciones de nodos virtuales de cluster
Verbos Permisos API totalmente cubiertas API parcialmente cubiertas
inspect

CLUSTER_VIRTUAL_NODE_POOL_INSPECT

ListVirtualNodePools

ListPodShapes

ninguna

read

INSPECT +

CLUSTER_VIRTUAL_NODE_POOL_READ

 

INSPECT +

GetVirtualNodePool

ListPodShapes

ListVirtualNodes

GetVirtualNode

ninguna

use

no extra

no extra

ninguna

manage

USE +

CLUSTER_VIRTUAL_NODE_POOL_CREATE

CLUSTER_VIRTUAL_NODE_POOL_UPDATE

CLUSTER_VIRTUAL_NODE_POOL_DELETE

USE +

CreateVirtualNodePool

UpdateVirtualNodePool

DeleteVirtualNodePool

UpdateVirtualNode

DeleteVirtualNode

ninguna

cluster-work-requests
Verbos Permisos API totalmente cubiertas API parcialmente cubiertas
inspect

CLUSTER_WORK_REQUEST_INSPECT

ListWorkRequests

ninguna

read

INSPECT +

CLUSTER_WORK_REQUEST_READ

 

INSPECT +

GetWorkRequest

ListWorkRequestErrors

ListWorkRequestLogs

ninguna

use

no extra

no extra

ninguna

manage

USE +

CLUSTER_WORK_REQUEST_DELETE

USE +

DeleteWorkRequest

ninguna

asignaciones de carga de trabajo de cluster
Verbos Permisos API totalmente cubiertas API parcialmente cubiertas
inspect

CLUSTER_WORKLOAD_MAPPING_INSPECT

ListWorkloadMappings

ninguna

read

INSPECT +

CLUSTER_WORKLOAD_MAPPING_READ

 

INSPECT +

GetWorkloadMapping

ninguna

use

READ +

CLUSTER_WORKLOAD_MAPPING_UPDATE

CLUSTER_WORKLOAD_COMPARTMENT_BIND

CLUSTER_WORKLOAD_COMPARTMENT_UNBIND

UpdateWorkloadMapping

ninguna

manage

USE +

CLUSTER_WORKLOAD_MAPPING_CREATE

CLUSTER_WORKLOAD_MAPPING_DELETE

USE +

CreateWorkloadMapping

DeleteWorkloadMapping

ninguna

Permisos necesarios para cada operación de API

En la siguiente tabla, se muestran las operaciones de API en un orden lógico, agrupadas por tipo de recurso. Para obtener más información sobre los permisos, consulte Permisos.

Operación de API Permisos necesarios para utilizar la operación
ListClusters CLUSTER_INSPECT
CreateCluster CLUSTER_CREATE
CreateKubeconfig CLUSTER_USE
GetCluster CLUSTER_READ
UpdateCluster CLUSTER_UPDATE
JoinCluster CLUSTER_MANAGE
DeleteCluster CLUSTER_DELETE, CLUSTER_NODE_POOL_DELETE
UpdateClusterEndpointConfig CLUSTER_MANAGE
AdministerK8s CLUSTER_MANAGE
GetCredentialRotationStatus CLUSTER_READ
StartCredentialRotation CLUSTER_UPDATE
CompleteCredentialRotation CLUSTER_UPDATE
ListNodePools CLUSTER_NODE_POOL_INSPECT
CreateNodePool CLUSTER_NODE_POOL_CREATE
GetNodePool CLUSTER_NODE_POOL_READ
GetNodePoolOptions CLUSTER_READ
UpdateNodePool CLUSTER_NODE_POOL_UPDATE
DeleteNodePool CLUSTER_NODE_POOL_DELETE
ListWorkRequests CLUSTER_WORK_REQUEST_INSPECT, CLUSTER_NODE_POOL_INSPECT, CLUSTER_INSPECT
GetWorkRequest CLUSTER_WORK_REQUEST_READ, CLUSTER_NODE_POOL_READ, CLUSTER_READ
ListWorkRequestErrors CLUSTER_WORK_REQUEST_READ, CLUSTER_NODE_POOL_READ, CLUSTER_READ
ListWorkRequestLogs CLUSTER_WORK_REQUEST_READ, CLUSTER_NODE_POOL_READ, CLUSTER_READ
DeleteWorkRequest CLUSTER_WORK_REQUEST_DELETE
ListVirtualNodePools CLUSTER_VIRTUAL_NODE_POOL_INSPECT
GetVirtualNodePool CLUSTER_VIRTUAL_NODE_POOL_READ
CreateVirtualNodePool CLUSTER_VIRTUAL_NODE_POOL_CREATE
UpdateVirtualNodePool CLUSTER_VIRTUAL_NODE_POOL_UPDATE
DeleteVirtualNodePool CLUSTER_VIRTUAL_NODE_POOL_DELETE
ListVirtualNodes CLUSTER_VIRTUAL_NODE_POOL_READ
GetVirtualNode CLUSTER_VIRTUAL_NODE_POOL_READ
DeleteVirtualNode CLUSTER_VIRTUAL_NODE_POOL_UPDATE
ListPodShapes CLUSTER_VIRTUAL_NODE_POOL_INSPECT
GetVirtualNode CLUSTER_VIRTUAL_NODE_POOL_READ
ListVirtualNodes CLUSTER_VIRTUAL_NODE_POOL_READ
DeleteVirtualNode CLUSTER_VIRTUAL_NODE_POOL_UPDATE
UpdateVirtualNode CLUSTER_VIRTUAL_NODE_POOL_UPDATE
ListAddons CLUSTER_READ
GetAddon CLUSTER_READ
UpdateAddon CLUSTER_UPDATE
DisableAddon CLUSTER_UPDATE
InstallAddon CLUSTER_UPDATE
ListWorkloadMappings CLUSTER_WORKLOAD_MAPPING_INSPECT
GetWorkloadMapping CLUSTER_WORKLOAD_MAPPING_READ
CreateWorkloadMapping CLUSTER_WORKLOAD_MAPPING_CREATE, CLUSTER_WORKLOAD_COMPARTMENT_BIND
UpdateWorkloadMapping CLUSTER_WORKLOAD_MAPPING_UPDATE, CLUSTER_WORKLOAD_COMPARTMENT_BIND, CLUSTER_WORKLOAD_COMPARTMENT_UNBIND
DeleteWorkloadMapping CLUSTER_WORKLOAD_MAPPING_DELETE, CLUSTER_WORKLOAD_COMPARTMENT_UNBIND