Gestión del acceso mediante la aplicación de etiquetas a recursos relacionados con el cluster

Descubra cómo utilizar etiquetas y políticas de IAM para gestionar el acceso a los recursos relacionados con los clusters que cree mediante Container Engine for Kubernetes (OKE).

Una vez aplicadas las etiquetas a los recursos relacionados con clusters, puede controlar el acceso a otros recursos mediante la inclusión de las etiquetas en las políticas de IAM.

La inclusión de etiquetas en las políticas de IAM resulta especialmente útil al autorizar a los nodos de trabajador a acceder a otros recursos. Si especifica etiquetas de nodo al definir inicialmente un pool de nodos y el pool de nodos se amplía posteriormente, las etiquetas de nodo se aplican automáticamente a cualquier nuevo nodo de trabajador que se cree. Si ha incluido las etiquetas de nodo en una política de IAM que otorga acceso a otros recursos, los nuevos nodos de trabajador se autorizan automáticamente a acceder a los mismos recursos que los nodos de trabajador existentes en el pool de nodos.

Tenga en cuenta que no puede utilizar etiquetas de formato libre en políticas de IAM para controlar el acceso a los recursos.

Ejemplo: autorización de un pool de nodos gestionado para leer objetos de almacenamiento de objetos

Para autorizar solo a los nodos de trabajador de un pool de nodos gestionado concreto a leer objetos de almacenamiento de objetos en un compartimento determinado:

  1. Defina un nuevo pool de nodos gestionados y especifique:
    • Nombre del pool de nodos que es único en el compartimento. Por ejemplo, acme-pool-one
    • Un juego de etiquetas de nodo con el nombre del pool de nodos. Por ejemplo, una etiqueta definida denominada acme-nodepool-name en un espacio de nombres de etiqueta denominado acme-project, definida en el valor acme-pool-one.

    Al crear el pool de nodos, la etiqueta de nodo acme-project.acme-nodepool-name='acme-pool-one' se aplica a todas las instancias informáticas que alojan nodos de trabajador en el pool de nodos.

  2. Defina un grupo dinámico para representar el pool de nodos:
    1. Abra el menú de navegación y haga clic en Identidad y seguridad. En Identidad, haga clic en Dominios. En Dominio de identidad, haga clic en Grupos dinámicos.
    2. Siga las instrucciones en Para crear un grupo dinámico y asígnele un nombre al grupo dinámico (por ejemplo, acme-oke-pool-one-dyn-grp).
    3. Introduzca una regla que incluya todos los nodos de trabajador del compartimento al que se ha aplicado la etiqueta de nodo, con el siguiente formato:

      All {instance.compartment.id = '<compartment_ocid>', tag.<tagnamespace>.<tagkey>.value = '<tagvalue>'}

      Por ejemplo:

      All {instance.compartment.id = 'ocid1.compartment.oc1..aaaaaaaa23______smwa', tag.acme-project.acme-nodepool-name.value = 'acme-pool-one'}
    4. Haga clic en Crear grupo dinámico.
  3. Defina una política de IAM que autorice al grupo dinámico a leer objetos de almacenamiento de objetos en un compartimento:
    1. Abra el menú de navegación y haga clic en Identidad y seguridad. En Identidad, haga clic en Políticas.
    2. Siga las instrucciones en Para crear una política y asigne un nombre a la política (por ejemplo, acme-oke-read-object-dyn-grp-policy).
    3. Introduzca una sentencia de política para permitir que el grupo dinámico lea objetos de almacenamiento de objetos con el formato:

      Allow dynamic-group <dynamic-group-name> to read objects in compartment <compartment-name>

      donde:

      • <dynamic-group-name> es el nombre del grupo dinámico que ha creado antes. Tenga en cuenta que si un grupo dinámico no está en el dominio de identidad por defecto, agregue un prefijo al nombre de grupo dinámico con el nombre de dominio de identidad, con el formato dynamic-group '<identity-domain-name>'/'<dynamic-group-name>'. También puede especificar el grupo dinámico mediante su OCID, con el formato dynamic-group id <dynamic-group-ocid>.
      • <compartment-name> es el nombre del compartimento que contiene los objetos de almacenamiento de objetos.

      Por ejemplo:

      Allow dynamic-group acme-oke-pool-one-dyn-grp to read objects in compartment acme-oke-obj-storage-comp
    4. Haga clic en Crear para crear la nueva política.

    Todos los nodos de trabajador del pool de nodos ahora pueden leer objetos de almacenamiento de objetos en el compartimento especificado.