Políticas de IAM de Container Instances
En este tema se tratan los detalles de la escritura de políticas para controlar el acceso a Oracle Cloud Infrastructure Container Instances.
Para obtener información sobre IAM, consulte Visión general de IAM.
Tipos de recursos
Tipos de recursos individuales
compute-container-instances
compute-containers
Tipo de recurso agregado
compute-container-family
Comentarios
Una política que utiliza <verb> compute-container-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.
Variables soportadas
Las políticas de IAM de Container Instances admiten todas las variables de política generales. Consulte Variables generales para todas las solicitudes.
Detalles de las combinaciones de verbo + tipo de recurso
En las siguientes tablas, se muestran los permisos y las operaciones de API que cubre cada verbo. El nivel de acceso es acumulativo a medida que pasa de inspect
> read
> use
> manage
. Un signo más (+) en una celda de la tabla indica un acceso incremental en comparación con la celda situada directamente encima, mientras que "sin extra" indica que no hay un acceso incremental.
Por ejemplo, los verbos read
y use
para el tipo de recurso vcns
no incluyen permisos ni operaciones de API adicionales en comparación con el verbo inspect
. Sin embargo, el verbo manage
incluye varios permisos y operaciones de API adicionales.
Para tipos de recursos compute-container-family
En las siguientes tablas, se muestran los permisos y las operaciones de API que abarca cada uno de los tipos de recursos individuales incluidos en compute-container-family
.
Verbos | Permisos | API totalmente cubiertas | API parcialmente cubiertas |
---|---|---|---|
inspeccionar |
COMPUTE_CONTAINER_INSTANCE_INSPECT |
ListContainerInstanceShapes ListContainerInstances ListWorkRequests ListWorkRequestErrors ListWorkRequestLogs |
ninguna |
leído |
INSPECCIONAR + COMPUTE_CONTAINER_INSTANCE_READ |
GetWorkRequest |
GetContainerInstance (también necesita |
usar |
LEER + COMPUTE_CONTAINER_INSTANCE_UPDATE COMPUTE_CONTAINER_INSTANCE_START COMPUTE_CONTAINER_INSTANCE_STOP COMPUTE_CONTAINER_INSTANCE_RESTART |
UpdateContainerInstance StartContainerInstance StopContainerInstance RestartContainerInstance |
sin más |
gestionar |
USAR + COMPUTE_CONTAINER_INSTANCE_CREATE COMPUTE_CONTAINER_INSTANCE_DELETE COMPUTE_CONTAINER_INSTANCE_MOVE |
ChangeContainerInstanceCompartment |
CreateContainerInstance (también necesita DeleteContainerInstance (también necesita |
Verbos | Permisos | API totalmente cubiertas | API parcialmente cubiertas |
---|---|---|---|
inspeccionar |
COMPUTE_CONTAINER_INSPECT |
ListContainers |
GetContainerInstance (también necesita |
leído |
INSPECCIONAR + COMPUTE_CONTAINER_READ |
GetContainer |
sin más |
usar |
LEER + COMPUTE_CONTAINER_UPDATE COMPUTE_CONTAINER_LOG_RETRIEVE |
UpdateContainer RetrieveLogs |
sin más |
gestionar |
USAR + COMPUTE_CONTAINER_CREATE COMPUTE_CONTAINER_DELETE |
sin más |
CreateContainerInstance (también necesita DeleteContainerInstance (también necesita |
Permisos necesarios para cada operación de API
En la siguiente tabla se muestran las operaciones de API agrupadas por tipo de recurso. Los tipos de recursos se muestran por defecto.
Para obtener información sobre los permisos, consulte Permisos.
Operación de API | Permisos necesarios para utilizar la operación |
---|---|
GetContainer | COMPUTE_CONTAINER_READ |
ListContainers | COMPUTE_CONTAINER_INSPECT |
RetrieveLogs | COMPUTE_CONTAINER_LOG_RETRIEVE |
UpdateContainer | COMPUTE_CONTAINER_UPDATE |
CreateContainerInstance | COMPUTE_CONTAINER_INSTANCE_CREATE, VNIC_CREATE, SUBNET_USE y COMPUTE_CONTAINER_CREATE |
GetContainerInstance | COMPUTE_CONTAINER_INSTANCE_READ y COMPUTE_CONTAINER_INSPECT |
ListContainerInstances | COMPUTE_CONTAINER_INSTANCE_INSPECT |
ListContainerInstanceShapes | COMPUTE_CONTAINER_INSTANCE_INSPECT |
UpdateContainerInstance | COMPUTE_CONTAINER_INSTANCE_UPDATE |
StartContainerInstance | COMPUTE_CONTAINER_INSTANCE_START |
StopContainerInstance | COMPUTE_CONTAINER_INSTANCE_STOP |
RestartContainerInstance | COMPUTE_CONTAINER_INSTANCE_RESTART |
ChangeContainerInstanceCompartment | COMPUTE_CONTAINER_INSTANCE_MOVE |
DeleteContainerInstance | COMPUTE_CONTAINER_INSTANCE_DELETE, VNIC_DELETE, SUBNET_USE y COMPUTE_CONTAINER_DELETE |
GetWorkRequest | COMPUTE_CONTAINER_INSTANCE_READ |
ListWorkRequestLogs | COMPUTE_CONTAINER_INSTANCE_INSPECT |
ListWorkRequestErrors | COMPUTE_CONTAINER_INSTANCE_INSPECT |
ListWorkRequests | COMPUTE_CONTAINER_INSTANCE_INSPECT |
Ejemplos de políticas
Los siguientes ejemplos permiten configurar rápidamente su arrendamiento. Para obtener más personalización de las políticas de su arrendamiento, consulte Funciones avanzadas de las políticas de IAM.
Permitir a los usuarios crear instancias de contenedor
Tipo de acceso: permite a los usuarios crear instancias de contenedor en el compartimento <container-instance-compartment-name>
y utilizar subredes en el compartimento <subnet-compartment-name>
.
Dónde crear la política: el enfoque más sencillo es colocar esta política en el arrendamiento. Si desea que los administradores de los compartimentos individuales tengan control sobre las sentencias de política individuales para sus compartimentos, consulte Asociación de políticas.
Allow group ContainerInstanceLaunchers to manage compute-container-family in compartment <container-instance-compartment-name>
Allow group ContainerInstanceLaunchers to use virtual-network-family in compartment <subnet-compartment-name>
Allow group ContainerInstanceLaunchers to read repos in tenancy
Para permitir a los usuarios crear nuevas redes y subredes en la nube, consulte Permitir a los administradores de red gestionar una red en la nube.
Permitir que Container Instances extraiga imágenes de Container Registry
Tipo de acceso: permite al servicio Container Instances la capacidad de leer imágenes de repositorios privados de Container Registry.
Dónde crear la política: el enfoque más sencillo es colocar esta política en el arrendamiento.
- Cree un grupo dinámico con Container Instances como tipo de recurso. Agregue una regla con la siguiente sintaxis:
ALL {resource.type='computecontainerinstance', resource.compartment.id = '<container-instance-compartment-ocid>'}
-
Escriba la siguiente política para otorgar acceso al grupo dinámico:
Allow dynamic-group ContainerInstanceDynamicGroup to read repos in compartment <container-registry-repo-compartment-name>
Selección de la imagen de contenedor mediante la consola
Tipo de acceso: al crear la instancia de contenedor en la consola, puede seleccionar la imagen de contenedor. Para generar la dirección correcta de la imagen de contenedor, debe agregar esta política para leer los espacios de nombres de Object Storage.
Dónde crear la política: el enfoque más sencillo es colocar esta política en el arrendamiento.
Allow group ContainerInstanceLaunchers to read objectstorage-namespaces in tenancy