Gestión del acceso de IAM para Inferencia de IA de Red Hat
El acceso a los proyectos de Red Hat AI Inference para los usuarios de su cuenta se controla mediante IBM Cloud® Identity and Access Management (IAM). A cada usuario que acceda al servicio Red Hat AI Inference en la cuenta se le debe asignar una política de acceso con un rol de IAM. Consulta los siguientes roles, acciones y otros aspectos para determinar cuál es la mejor forma de asignar el acceso a Red Hat AI Inference.
La política de acceso que asignes a los usuarios de tu cuenta determina qué acciones puede realizar un usuario en el contexto del servicio o del proyecto específico que selecciones. Las acciones permitidas se personalizan y definen mediante el Red Hat AI Inference como operaciones que se pueden realizar en el servicio. Cada acción se correlaciona con una plataforma de IAM o un rol de servicio que puede asignar a un usuario.
Asegúrate también de que tienes el rol de Viewer para los grupos de recursos que quieras utilizar.
Las políticas de acceso de IAM permiten el acceso a distintos niveles. Algunas opciones son las siguientes:
- Conceder acceso de lectura o escritura a un proyecto específico.
- Conceder acceso de lectura o escritura a un grupo de recursos específico en el que podría haber muchos proyectos.
- Conceder acceso de Lector o Escritor a toda la cuenta, en la que puede haber muchos grupos de recursos con numerosos proyectos.
- Conceder al usuario acceso a los proyectos Inferencia de IA de Red Hat dentro de un grupo de recursos y a nivel de cuenta.
- Conceder acceso de creación para crear uno o varios proyectos de Inferencia de IA de Red Hat dentro de un grupo de recursos y a nivel de cuenta.
Si un rol específico y sus acciones no se ajustan al caso práctico que desea abordar, puede crear un rol personalizado y seleccionar las acciones que desea incluir.
Consulta las siguientes tablas, en las que se describen los tipos de tareas que permite realizar cada rol al trabajar con el servicio Red Hat AI Inference. Las funciones de gestión de la plataforma permiten a los usuarios realizar tareas en los recursos del servicio a nivel de plataforma; por ejemplo, asignar acceso de usuario al servicio, crear o eliminar proyectos y vincular proyectos a aplicaciones. Los roles de acceso al servicio permiten a los usuarios acceder a Red Hat AI Inference y utilizar la API de Red Hat AI Inference.
Esta es una visión general de lo que los roles de la plataforma permiten hacer a los usuarios. Utiliza un lenguaje sencillo para describir qué tipo de tareas se pueden realizar o las funciones habituales que los usuarios pueden esperar desempeñar al tener asignado cada rol.
Acciones y roles de IAM
| Rol de plataforma | Descripción |
|---|---|
| Visor | Como usuario con permisos de visualización, puedes ver los proyectos, pero no puedes modificarlos. |
| Operador | Como operador, puedes realizar las acciones de la plataforma necesarias para configurar y gestionar proyectos, como consultar el panel de control de un servicio. |
| Editor | Como editor, puede realizar todas las acciones de plataforma excepto gestionar la cuenta y asignar políticas de acceso. |
| Administrador | Como administrador, puede realizar todas las acciones de plataforma en función del recurso al que se asigne este rol, incluida la asignación de políticas de acceso a otros usuarios. |
| Lector del configurador de servicios | La capacidad de leer la configuración de servicios para la gestión de gobierno. |
| Key Manager | Como gestor de claves, el servicio puede realizar las acciones de la plataforma necesarias para gestionar las claves de recursos, como crear una nueva clave de recurso. |
| Rol de servicio | Descripción |
|---|---|
| Lector | Como lector, puede realizar acciones de sólo lectura dentro de un servicio como la visualización de recursos específicos del servicio. |
| Writer | Como escritor, tiene permisos más allá del rol de lector, incluida la creación y edición de recursos específicos del servicio. |
| Gestor | Como gestor, tiene permisos más allá del rol de escritor para completar las acciones privilegiadas tal como define el servicio. Además, puede crear y editar recursos específicos del servicio. |
| acciones y eventos | Descripción | Roles |
|---|---|---|
instructlab.dashboard.view |
Ver los paneles de control de Red Hat AI Inference. | Operador, administrador, editor |
instructlab.taxonomy.read |
Consulta los detalles de una taxonomía. | Lector, Escritor, Gestor |
instructlab.taxonomy.create |
Crear taxonomías | Escritor, Gestor |
instructlab.taxonomy.list |
Taxonomías de listas. | Lector, Escritor, Gestor |
instructlab.taxonomy.delete |
Eliminar taxonomías. | Escritor, Gestor |
instructlab.sdgdata.read |
Consulta los detalles de una ejecución de generación de datos. | Lector, Escritor, Gestor |
instructlab.sdgdata.list |
Enumerar las ejecuciones de generación de datos. | Lector, Escritor, Gestor |
instructlab.sdgdata.create |
Crear una ejecución de generación de datos. | Escritor, Gestor |
instructlab.sdgdata.delete |
Eliminar una ejecución de generación de datos. | Escritor, Gestor |
instructlab.sdgdata.stop |
Detener una ejecución de generación de datos. | Escritor, Gestor |
instructlab.sdgdata.stop |
Detener una ejecución de generación de datos. | Escritor, Gestor |
instructlab.model.read |
Consulta los detalles de una sesión de entrenamiento del modelo. | Lector, Escritor, Gestor |
instructlab.model.list |
Enumerar las ejecuciones de entrenamiento del modelo. | Lector, Escritor, Gestor |
instructlab.model.create |
Crea una sesión de entrenamiento del modelo. | Escritor, Gestor |
instructlab.model.delete |
Eliminar una ejecución de entrenamiento de un modelo. | Escritor, Gestor |
instructlab.model.stop |
Detener una sesión de entrenamiento de un modelo. | Escritor, Gestor |
Conceder a InstuctLab permiso para crear y actualizar los artefactos de Object Storage
Otorga a Inferencia de IA de Red Hat el rol de acceso Writer para el servicio Object Storage. El usuario que haya iniciado sesión también debe tener el mismo permiso.
-
Crea la política de autorización para Inferencia de IA de Red Hat y Object Storage.
ibmcloud iam authorization-policy-create Writer --source-service-name instructlab --target-service-name cloud-object-storageSi ya dispones de recursos de Object Storage, puedes limitar la autorización únicamente a esos recursos.
ibmcloud iam authorization-policy-create Writer --source-service-name instructlab --target-service-name cloud-object-storage --target-service-instance-id CLOUD-OBJECT-STORAGE-INSTANCE-ID --target-resource CLOUD-OBJECT-STORAGE-BUCKET --target-resource-type bucket -
Comprueba que se haya creado la política de autorización.
ibmcloud iam authorization-policiesResultado cuando la autorización no se limita a un depósito específico de Object Storage:
Getting authorization policies under account abc1234 as user... OK ID: <id> Source service name: instructlab Source service instance: All instances Target service name: cloud-object-storage Target service instance: All instances Roles: WriterResultado cuando la autorización se limita a un depósito específico de Object Storage:
Getting authorization policies under account abc1234 as user... OK ID: <id> Source service name: instructlab Source service instance: All instances Target service name: cloud-object-storage Target service instance: bucket Roles: Writer -
Opcional: si utilizas un repositorio privado, crea otra autorización de servicio para Inferencia de IA de Red Hat y Secrets Manager
ibmcloud iam authorization-policy-create Reader --source-service-name instructlab --target-service-name secrets-manager -
Si es necesario, concede el permiso
Writeral usuario que haya iniciado sesión. Incluye el ID de instancia del servicio Object Storage del paso anterior.ibmcloud iam user-policy-create <user> --roles Writer --service-instance <cloud-object-storage-instance-id>
Asigna acceso de usuario a tus recursos
Puedes controlar qué usuarios (o grupos de usuarios) de tu cuenta pueden acceder a tus recursos de Red Hat AI Inference. Sigue estos pasos para asignar permisos de acceso en la consola.
Para obtener más detalles sobre cómo asignar permisos de acceso, los pasos para utilizar la CLI o las diferentes formas de delimitar el acceso a Red Hat AI Inference o a su depósito de Object Storage, consulte Gestión del acceso de IAM para Red Hat AI Inference.
Hay dos formas habituales de asignar permisos de acceso:
- Políticas de acceso por usuario.
- Puede gestionar políticas de acceso por usuario desde la página Gestionar > Acceso (IAM) > Usuarios de la consola. Para obtener información sobre los pasos para asignar acceso de IAM, consulte Gestión del acceso a los recursos en la consola.
- Grupos de acceso.
- Los grupos de acceso se utilizan para agilizar la gestión de accesos mediante la asignación de acceso a un grupo una vez y, a continuación, puede añadir o eliminar usuarios según sea necesario del grupo para controlar su acceso. Puede gestionar los grupos de acceso y su acceso desde la página Gestionar > Acceso (IAM) > Grupos de acceso de la consola. Para obtener más información, consulte Asignación de acceso a un grupo en la consola.
{{../iam/iam-mng-access.md#access-resources-console}}
{{../iam/iam-mng-access.md#access-to-resources-console}}
{{../iam/iam-mng-access.md#access-to-resource-group}}
Asignación de acceso a Inferencia de IA de Red Hat mediante la CLI
Para obtener instrucciones detalladas para asignar, eliminar y revisar el acceso, consulte Asignación de acceso a recursos utilizando la CLI. El
siguiente ejemplo muestra un comando para asignar el rol Writer a instructlab:
Utilice instructlab para el nombre de servicio. Para encontrar los ID de los roles, ejecuta el comando ibmcloud iam roles. Además, utiliza comillas para los nombres de roles que consten de más de una palabra. Por
ejemplo "Service Configuration Reader".
Ejemplo comando comando para asignar a un usuario el rol de Viewer para un proyecto específico de Inferencia de IA de Red Hat en la cuenta.
ibmcloud iam user-policy-create name@example.com --roles Viewer --service-name instructlab --attributes "projectId=1b111111-1ef1-11f1-1111-111bae11111a"
Ejemplo comando comando para asignar a un usuario el rol de Key Manager para un proyecto específico de Inferencia de IA de Red Hat en la cuenta.
ibmcloud iam user-policy-create name@email.com --roles "Key Manager" --service-name instructlab
Ejemplo comando para asignar a un usuario el rol de Writer para todos los proyectos de Inferencia de IA de Red Hat de la cuenta.
ibmcloud iam user-policy-create USER@EXAMPLE.COM --service-name instructlab --roles Writer
Ejemplo comando para asignar el rol de administrador a todas las instancias del servicio Inferencia de IA de Red Hat de la cuenta.
ibmcloud iam user-policy-create name@example.com --roles Administrator --service-name instructlab
Ejemplo comando para asignar el rol de Viewer a todos los grupos de recursos de la cuenta.
ibmcloud iam user-policy-create name@example.com --roles Viewer --resource-type resource-group
Ejemplo comando para asignar el rol de Viewer a todos los usuarios de un grupo de recursos específico.
ibmcloud iam user-policy-create name@example.com --roles Viewer --resource-type resource-group
Ejemplo comando para asignar el rol de administrador a un grupo de recursos.
ibmcloud iam service-policy-create test --roles Administrator --resource-group-name sample-resource-group
Asignación de acceso de usuario a Inferencia de IA de Red Hat mediante la API
Para obtener instrucciones paso a paso para asignar, eliminar y revisar el acceso, consulte Asignación de acceso a recursos utilizando la API o Crear documentos de API de política. Los nombres de recurso de nube de rol (CRN) de la tabla siguiente se utilizan para asignar acceso con la API.
Utilice para instructlab el nombre del servicio y consulte la tabla de valores CRN de roles para asegurarse de que está utilizando el valor correcto para el rol. Consulta la siguiente lista de CRN de roles.
| Rol | CRN |
|---|---|
| Lector | crn:v1:bluemix:public:iam::::serviceRole:Reader |
| Writer | crn:v1:bluemix:public:iam::::serviceRole:Writer |
| Gestor | crn:v1:bluemix:public:iam::::serviceRole:Manager |
| Visor | crn:v1:bluemix:public:iam::::role:Viewer |
| Operador | crn:v1:bluemix:public:iam::::role:Operator |
| Editor | crn:v1:bluemix:public:iam::::role:Editor |
| Administrador | crn:v1:bluemix:public:iam::::role:Administrator |
| Lector del configurador de servicios | crn:v1:bluemix:public:iam::::role:ConfigReader |
| Key Manager | crn:v1:bluemix:public:resource-controller::::role:KeyManager |
El siguiente ejemplo asigna el rol Writer a instructlab.
curl -X POST 'https://iam.cloud.ibm.com/v1/policies' -H 'Authorization: Bearer $TOKEN' -H 'Content-Type: application/json' -d '{
"type": "access",
"description": "Writer role for InstructLab",
"subjects": [
{
"attributes": [
{
"name": "iam_id",
"value": "IBMid-123453user"
}
]
}'
],
"roles":[
{
"role_id": "crn:v1:bluemix:public:iam::::serviceRole:Writer"
}
],
"resources":[
{
"attributes": [
{
"name": "accountId",
"value": "$ACCOUNT_ID"
},
{
"name": "serviceName",
"value": "instructlab"
}
]
}
]
}
{{../iam/iam-mng-access.md#access-resources-api}}
{{../iam/iam-mng-access.md#access-resourcegroups-api}}