Definición de políticas de acceso de IAM para Container Registry

Como administrador, puede definir políticas de acceso a IBM Cloud® Identity and Access Management (IAM) para crear diferentes niveles de acceso para diferentes usuarios en IBM Cloud® Container Registry. Por ejemplo, puede autorizar a algunos usuarios a ver cuotas y a otros usuarios a establecer cuotas.

Debe definir políticas de accesoMétodo para asignar acceso a los recursos de una cuenta a los usuarios, ID de servicio y grupos de acceso. Una política de acceso incluye un asunto, un destino y un rol. IAM para cada usuario que trabaje con IBM Cloud Container Registry. El ámbito de una política de acceso IAM se basa en el rol o roles del usuario que determinan las acciones que pueden realizar. Algunas funciones están predefinidas, pero pueden definirse funciones personalizadas.

Para obtener más información sobre las políticas de acceso de IAM, consulte Roles de acceso a plataformas y servicios para permisos.

Puede asignar espacios de nombres de Container Registry a un grupo de recursos y aplicar políticas de acceso a ese grupo; consulte Planificación de espacios de nombres. No obstante, puede definir políticas de acceso que se apliquen a espacios de nombres individuales de Container Registry o a todos los espacios de nombres que pertenezcan a la cuenta.

Creación de políticas

Antes de empezar, complete las tareas siguientes:

  • Decida qué roles necesita cada usuario y sobre qué recursos en IBM Cloud Container Registry, consulte Roles IAM. Puede crear múltiples políticas, por ejemplo, puede conceder acceso de escritura en un recurso pero conceder acceso de lectura sólo en otro recurso. Las políticas son aditivas, lo que significa que una política de lectura global y una política de escritura limitada a un recurso otorga acceso tanto de lectura como de escritura sobre dicho recurso.

  • Invitar a los usuarios a una cuenta.

    Si desea que los usuarios creen clústeres en IBM Cloud Kubernetes Service, asegúrese de asignarles la función de administrador de IBM Cloud Container Registry y no les asigne un grupo de recursos. Para obtener más información, consulte Preparar su cuenta para crear clústeres.

Para crear políticas para IBM Cloud Container Registry, el campo de nombre de servicio debe ser container-registry.

Si desea acceder a los recursos, debe asignar funciones a los usuarios o ID de servicio. Si desea otorgar acceso a todo, no especifique un tipo de recurso ni un recurso. Si desea otorgar acceso a un espacio de nombres específico, especifique el tipo de recurso como namespace y utilice el nombre del espacio de nombres como recurso.

Para ver un ejemplo de políticas de acceso útiles para IBM Cloud Container Registry, consulte el tutorial Concesión de acceso a los recursos de Container Registry.

Configuración de políticas regionales para IAM

Para todas las regiones que no sean globales, puede utilizar el campo de región cuando cree una regla. Así, por ejemplo, en la interfaz de comando (CLI), para us-south se utiliza la opción --region us-south. Sin embargo, como global es una geografía y no una región, debe omitir la opción --region y añadir geography=global en el campo --attributes.

Políticas de usuarios basadas en regiones

El siguiente ejemplo muestra el comando para crear una política de usuario para asignar un rol a un usuario en us-south, donde USER_ID es el ID de usuario (name@example.com) y ROLES es el rol o roles que desea asignar:

ibmcloud iam user-policy-create USER_ID --roles ROLES --service-name container-registry --region us-south

El siguiente ejemplo muestra el comando para crear una política de usuario para asignar un rol a un usuario en global, donde USER_ID es el ID de usuario (name@example.com) y ROLES es el rol o roles que desea asignar:

ibmcloud iam user-policy-create USER_ID --roles ROLES --service-name container-registry --attributes "geography=global"

Políticas de identificación de servicios por regiones

El siguiente ejemplo muestra el comando para crear una política de ID de servicio en us-south, donde SERVICE_ID es el ID de servicio y ROLES es el rol o roles que desea asignar:

ibmcloud iam service-policy-create SERVICE_ID --roles ROLES --service-name container-registry --region us-south

El siguiente ejemplo muestra el comando para crear una política de ID de servicio en global, donde SERVICE_ID es el ID de servicio y ROLES es el rol o roles que desea asignar:

ibmcloud iam service-policy-create SERVICE_ID --roles ROLES --service-name container-registry --attributes "geography=global"