En esta página se describe cómo usar Gestión de Identidades y Accesos (IAM) para gestionar el acceso a los recursos de Vertex AI. Para gestionar el acceso a las instancias de Vertex AI Workbench, consulta Control de acceso a instancias de Vertex AI Workbench.
Información general
Vertex AI usa IAM para gestionar el acceso a los recursos. Cuando planifiques el control de acceso de tus recursos, ten en cuenta lo siguiente:
Puedes gestionar el acceso a nivel de proyecto o de recurso. El acceso a nivel de proyecto se aplica a todos los recursos de ese proyecto. El acceso a un recurso específico solo se aplica a ese recurso. Consulta Acceso a nivel de proyecto y a nivel de recurso.
Para conceder acceso, asigna roles de gestión de identidades y accesos a los principales. Hay roles predefinidos disponibles para facilitar la configuración del acceso, pero se recomiendan los roles personalizados porque los creas tú y, por lo tanto, puedes limitar su acceso solo a los permisos necesarios. Consulta Roles de gestión de identidades y accesos.
Roles de gestión de identidades y accesos
Hay distintos tipos de roles de gestión de identidades y accesos que se pueden usar en Vertex AI:
Los roles personalizados te permiten elegir un conjunto específico de permisos, crear tu propio rol con esos permisos y conceder el rol a los usuarios de tu organización.
Los roles predefinidos te permiten conceder un conjunto de permisos relacionados a tus recursos de Vertex AI a nivel de proyecto.
Los roles básicos (Propietario, Editor y Lector) proporcionan control de acceso a tus recursos de Vertex AI a nivel de proyecto y son comunes a todos los servicios de Google Cloud .
Para añadir, actualizar o quitar estos roles en tu proyecto de Vertex AI, consulta la documentación sobre cómo conceder, cambiar y revocar acceso.
Roles personalizados
Los roles personalizados te permiten elegir un conjunto específico de permisos, crear tu propio rol con esos permisos y conceder el rol a los usuarios de tu organización. Para obtener más información, consulta el artículo Conocer los roles personalizados de gestión de identidades y accesos.
Usar roles personalizados para conceder permisos de mínimos accesos
Los roles predefinidos suelen contener más permisos de los que necesitas. Puedes crear roles personalizados para conceder a tus principales solo los permisos específicos que necesiten.
Por ejemplo, puedes crear un rol personalizado con el permiso aiplatform.endpoints.predict
y, a continuación, asignarlo a una cuenta de servicio en un endpoint. De esta forma, la cuenta de servicio podrá llamar al endpoint para obtener predicciones, pero no controlarlo.
Roles predefinidos de Vertex AI
Role | Permissions |
---|---|
Vertex AI Administrator( Grants full access to all resources in Vertex AI |
|
Vertex AI Batch Prediction Service Agent( Vertex AI Batch Prediction Service Agent for serving batch prediction requests. |
|
Colab Enterprise Admin( Admin role of using colab enterprise. |
|
Colab Enterprise User( User role of using colab enterprise. |
|
Vertex AI Colab Service Agent( Gives Vertex AI Colab the proper permissions to function. |
|
Vertex AI Custom Code Service Agent( Gives Vertex AI Custom Code the proper permissions. |
|
Vertex AI Feature Store EntityType owner( Provides full access to all permissions for a particular entity type resource. Lowest-level resources where you can grant this role:
|
|
Vertex AI Platform Express Admin Beta( Grants admin access to Vertex AI Express |
|
Vertex AI Platform Express User Beta( Grants user access to Vertex AI Express |
|
Vertex AI Extension Custom Code Service Agent( Gives Vertex AI Extension that executes custom code the permissions it needs to function. |
|
Vertex AI Extension Service Agent( Gives Vertex AI Extension the permissions it needs to function. |
|
Vertex AI Feature Store Admin( Grants full access to all resources in Vertex AI Feature Store Lowest-level resources where you can grant this role:
|
|
Vertex AI Feature Store Data Viewer( This role provides permissions to read Feature data. Lowest-level resources where you can grant this role:
|
|
Vertex AI Feature Store Data Writer( This role provides permissions to read and write Feature data. Lowest-level resources where you can grant this role:
|
|
Vertex AI Feature Store Instance Creator( Administrator of Featurestore resources, but not the child resources under Featurestores. Lowest-level resources where you can grant this role:
|
|
Vertex AI Feature Store Resource Viewer( Viewer of all resources in Vertex AI Feature Store but cannot make changes. Lowest-level resources where you can grant this role:
|
|
Vertex AI Feature Store User Beta( Deprecated. Use featurestoreAdmin instead. |
|
Vertex AI Migration Service User( Grants access to use migration service in Vertex AI |
|
Vertex AI Model Monitoring Service Agent( Gives Vertex AI Model Monitoring the permissions it needs to function. |
|
Notebook Executor User Beta( Grants users full access to schedules and notebook execution jobs. |
|
Notebook Runtime Admin( Grants full access to all runtime templates and runtimes in Notebook Service. |
|
Notebook Runtime User( Grants users permissions to create runtime resources using a runtime template and manage the runtime resources they created. |
|
Vertex AI Notebook Service Agent( Vertex AI Service Agent used to run Notebook managed resources in user project with restricted permissions. |
|
Vertex AI Online Prediction Service Agent( Gives Vertex AI Online Prediction the permissions it needs to function. |
|
Vertex AI Platform Provisioned Throughput Admin Beta( Grants access to use all resources related to Vertex AI Provisioned Throughput |
|
Vertex AI RAG Data Service Agent( Vertex AI Service Agent used by Vertex RAG to access user imported data, Vertex AI, Document AI processors in the project |
|
Vertex AI Rapid Eval Service Agent( Vertex AI Service Agent used by GenAI Rapid Evaluation Service to access publisher model endpoints in the user project |
|
Vertex AI Reasoning Engine Service Agent( Gives Vertex AI Reasoning Engine the proper permissions to function. |
|
Vertex AI Service Agent( Gives Vertex AI the permissions it needs to function. |
|
Vertex AI Telemetry Service Agent( Allows Vertex AI Telemetry Service Agent to access telemetry data. |
|
Vertex AI Tensorboard Web App User Beta( Grants access to the Vertex AI TensorBoard web app. |
|
Vertex AI Tuning Service Agent( Vertex AI Service Agent used for tuning in user project. |
|
Vertex AI User( Grants access to use all resource in Vertex AI |
|
Vertex AI Viewer( Grants access to view all resource in Vertex AI |
|
Roles básicos
Los roles básicos Google Cloud anteriores son comunes a todos los servicios Google Cloud . Estos roles son Propietario, Editor y Lector.
Acceso a nivel de proyecto frente a acceso a nivel de recurso
Puedes gestionar el acceso a nivel de proyecto o de recurso. También puedes gestionar el acceso a nivel de carpeta u organización.
En la mayoría de los recursos de Vertex AI, el acceso solo se puede controlar por proyecto, carpeta y organización. El acceso a recursos individuales solo se puede conceder a tipos de recursos específicos, como un endpoint o un almacén de características.
Los usuarios comparten el control de todos los recursos a los que pueden acceder. Por ejemplo, si un usuario registra un modelo, todos los demás usuarios autorizados del proyecto pueden acceder al modelo, cambiarlo y eliminarlo.
Para conceder acceso a los recursos a nivel de proyecto, asigna uno o varios roles a una entidad (usuario, grupo o cuenta de servicio).
En el caso de los recursos de Vertex AI que te permiten conceder acceso a nivel de recurso, debes definir una política de gestión de identidades y accesos en ese recurso. La política define qué roles se asignan a qué principales.
Definir una política a nivel de recurso no afecta a las políticas a nivel de proyecto. Un recurso hereda todas las políticas de sus elementos superiores. Puedes usar estos dos niveles de granularidad para personalizar los permisos. Por ejemplo, puede conceder a los usuarios permisos de lectura a nivel de proyecto para que puedan leer todos los recursos del proyecto y, a continuación, concederles permisos de escritura por recurso (a nivel de recurso).
No todos los roles y recursos predefinidos de Vertex AI admiten políticas a nivel de recurso. Para saber qué roles se pueden usar en qué recursos, consulta la tabla de roles predefinidos.
Recursos compatibles
Vertex AI admite recursos de tipo de entidad y de almacén de características de Vertex AI Feature Store. Para obtener más información, consulta el artículo sobre cómo controlar el acceso a los recursos de Vertex AI Feature Store.
Después de conceder o revocar el acceso a un recurso, los cambios tardan en propagarse. Para obtener más información, consulta Propagación de cambios de acceso.
Recursos, cuentas de servicio y agentes de servicio
Los servicios de Vertex AI suelen gestionar recursos de larga duración que realizan acciones, como ejecutar un trabajo de entrenamiento que lee datos de entrenamiento o servir un modelo de aprendizaje automático que lee el peso del modelo. Estos recursos independientes tienen su propia identidad de recurso al realizar acciones. Esta identidad es distinta de la identidad de la entidad de seguridad que creó el recurso. Los permisos concedidos a la identidad del recurso definen a qué datos y otros recursos puede acceder la identidad del recurso, no los permisos de la entidad que creó el recurso.
De forma predeterminada, los recursos de Vertex AI usan cuentas de servicio gestionadas por Vertex AI como identidad de recurso. Estas cuentas de servicio se denominan agentes de servicio de Vertex AI y se adjuntan al proyecto en el que se crea el recurso. Los usuarios con permisos específicos de Vertex AI pueden crear recursos que usen agentes de servicio de Vertex AI. En algunos servicios, puedes especificar una cuenta de servicio para asociarla al recurso. El recurso usa esta cuenta de servicio para acceder a otros recursos y servicios. Para obtener más información sobre las cuentas de servicio, consulta el artículo Cuentas de servicio.
Vertex AI usa diferentes agentes de servicio en función de las APIs a las que se llame. Cada agente de servicio tiene permisos de IAM específicos en el proyecto al que está vinculado. La identidad del recurso usa estos permisos para realizar acciones. Los permisos pueden incluir acceso de solo lectura a todos los recursos de Cloud Storage y a los datos de BigQuery del proyecto.
Cuentas de servicio
Una cuenta de servicio es una cuenta especial que usan las aplicaciones o las instancias de máquinas virtuales (VM), no las personas. Puedes crear y asignar permisos a cuentas de servicio para proporcionar permisos específicos a un recurso o una aplicación.
Para obtener información sobre cómo usar una cuenta de servicio para personalizar los permisos disponibles en un contenedor de entrenamiento personalizado o en un contenedor que proporcione predicciones online para un modelo con entrenamiento personalizado, consulta el artículo Usar una cuenta de servicio personalizada.
Las cuentas de servicio se identifican mediante una dirección de correo electrónico.
Agentes de servicio
Los agentes de servicio se proporcionan automáticamente y permiten que un servicio acceda a los recursos en tu nombre.
Cuando se crea un agente de servicio, se le asigna un rol predefinido a tu proyecto. En la siguiente tabla se muestran los agentes de servicio de Vertex AI, sus direcciones de correo electrónico y sus respectivos roles:
Nombre | Se usa en: | Dirección de correo electrónico | Rol |
---|---|---|---|
Agente de servicio de Vertex AI | Funciones de Vertex AI | service-PROJECT_NUMBER@gcp-sa-aiplatform.iam.gserviceaccount.com |
roles/aiplatform.serviceAgent |
Agente de servicio de datos de RAG de Vertex AI | Vertex AI RAG accede a los datos importados por el usuario, a Vertex AI y a los procesadores de Document AI del proyecto | service-PROJECT_NUMBER@gcp-sa-vertex-rag.iam.gserviceaccount.com |
roles/ |
Agente de servicio del código personalizado de Vertex AI |
Código de entrenamiento personalizado Código de aplicación de Ray en Vertex AI |
service-PROJECT_NUMBER@gcp-sa-aiplatform-cc.iam.gserviceaccount.com |
roles/aiplatform.customCodeServiceAgent |
Agente de servicio de extensiones de Vertex AI | Extensiones de Vertex | service-PROJECT_NUMBER@gcp-sa-vertex-ex.iam.gserviceaccount.com |
|
Cuenta de servicio de Cloud AI Platform Notebooks | Funciones de Vertex AI Workbench | service-PROJECT_NUMBER@gcp-sa-notebooks.iam.gserviceaccount.com |
roles/notebooks.serviceAgent |
El agente de servicio de código personalizado de Vertex AI solo se crea si ejecutas código de entrenamiento personalizado para entrenar un modelo con entrenamiento personalizado.
Roles y permisos de agente de servicio
Consulta los siguientes roles y permisos que se conceden a los agentes de servicio de Vertex AI.
Rol | Permisos |
---|---|
Agente de servicio de Vertex AI( Concede a Vertex AI los permisos que requiere para funcionar. |
|
Agente de servicio de datos de RAG de Vertex AI( Agente de servicio de Vertex AI usado por Vertex RAG para acceder a datos importados por el usuario, Vertex AI y procesadores de Document AI en el proyecto. |
|
Agente de servicio del código personalizado de Vertex AI( Concede los permisos adecuados al código personalizado de Vertex AI. |
|
Agente de servicio de extensiones de Vertex AI( Concede a la extensión de Vertex AI los permisos que requiere para funcionar. |
|
Agente de servicio de cuadernos de AI Platform( Permite que el agente de servicios de los cuadernos gestione las instancias de cuadernos en proyectos de usuario. |
|
Conceder acceso a otros recursos a los agentes de servicio de Vertex AI
A veces, debes conceder roles adicionales a un agente de servicio de Vertex AI. Por ejemplo, si necesitas que Vertex AI acceda a un segmento de Cloud Storage de otro proyecto, tendrás que conceder uno o varios roles adicionales al agente de servicio.
Requisitos para añadir roles en BigQuery
En la siguiente tabla se describen los roles adicionales necesarios que se deben añadir al agente de servicio de Vertex AI para las tablas o vistas de BigQuery de otro proyecto o respaldadas por una fuente de datos externa.
El término proyecto principal hace referencia al proyecto en el que se encuentra el conjunto de datos o el modelo de Vertex AI. El término otro proyecto hace referencia a cualquier otro proyecto.
Tipo de tabla | Proyecto de tabla | Proyecto de fuente de datos | Es necesario añadir un rol |
---|---|---|---|
Tabla nativa de BigQuery | Proyecto principal | N/A | Ninguno |
Tabla nativa de BigQuery | Otro proyecto | N/A | BigQuery Data Viewer para otro proyecto. Más información |
Vista de BigQuery | Proyecto principal | N/A | Ninguno |
Vista de BigQuery | Otro proyecto | N/A | BigQuery Data Viewer para otro proyecto. Más información |
Fuente de datos externa de BigQuery respaldada por Bigtable | Proyecto principal | Proyecto principal | Bigtable Reader para un proyecto de casa. Más información |
Fuente de datos externa de BigQuery respaldada por Bigtable | Proyecto principal | Otro proyecto | Bigtable Reader para otro proyecto. Más información |
Fuente de datos externa de BigQuery respaldada por Bigtable | Otro proyecto | Otro proyecto | BigQuery Reader y Bigtable Reader para diferentes proyectos. Más información |
Fuente de datos externa de BigQuery respaldada por Cloud Storage | Proyecto principal | Proyecto principal | Ninguno |
Fuente de datos externa de BigQuery respaldada por Cloud Storage | Proyecto principal | Otro proyecto | Storage Object Viewer para otro proyecto. Más información |
Fuente de datos externa de BigQuery respaldada por Cloud Storage | Otro proyecto | Otro proyecto | Storage Object Viewer y BigQuery Data Viewer para diferentes proyectos. Más información |
Fuente de datos externa de BigQuery respaldada por Hojas de cálculo de Google | Proyecto principal | N/A | Comparte tu archivo de Hojas de cálculo con la cuenta de servicio de Vertex AI. Más información |
Fuente de datos externa de BigQuery respaldada por Hojas de cálculo de Google | Otro proyecto | N/A | BigQuery Reader para otro proyecto y comparte tu archivo de Hojas de cálculo con la cuenta de servicio de Vertex AI. |
Requisitos para añadir roles en Cloud Storage
Si accedes a datos de un segmento de Cloud Storage de otro proyecto, debes asignar el rol Storage > Storage Object Viewer
a Vertex AI en ese proyecto. Más información
Si usas un segmento de Cloud Storage para recibir datos de tu ordenador local en una operación de importación y el segmento está en un proyecto distinto al proyectoGoogle Cloud , debes asignar el rol Storage > Storage Object Creator
a Vertex AI en ese proyecto. Más información
Conceder acceso a Vertex AI a los recursos de tu proyecto principal
Para conceder roles adicionales a un agente de servicio de Vertex AI en tu proyecto principal, sigue estos pasos:
Ve a la página Gestión de identidades y accesos de la Google Cloud consola de tu proyecto principal.
Selecciona la casilla Incluir concesiones de roles proporcionadas por Google.
Determina el agente de servicio al que quieres conceder los permisos y haz clic en el icono de lápiz .
Puede filtrar por Principal:@gcp-sa-aiplatform-cc.iam.gserviceaccount.com para encontrar los agentes de servicio de Vertex AI.
Asigna los roles necesarios al agente de servicio y guarda los cambios.
Conceder acceso a Vertex AI a recursos de otro proyecto
Cuando uses fuentes de datos o destinos en otro proyecto, debes dar permisos al agente de servicio de Vertex AI en ese proyecto. El agente de servicio de Vertex AI se crea después de iniciar la primera tarea asíncrona (por ejemplo, crear un endpoint). También puedes crear explícitamente el agente de servicio de Vertex AI. Para obtener más información, consulta gcloud beta services identity create. Este comando de Google Cloud CLI crea el agente de servicio principal y el agente de servicio de código personalizado. Sin embargo, en la respuesta solo se devuelve el agente de servicio principal.
Para añadir permisos a Vertex AI en otro proyecto, sigue estos pasos:
Ve a la página Gestión de identidades y accesos de la Google Cloud consola de tu proyecto principal (el proyecto en el que usas Vertex AI).
Selecciona la casilla Incluir concesiones de roles proporcionadas por Google.
Determina el agente de servicio al que quieres conceder los permisos y copia su dirección de correo (que aparece en Principal).
Puede filtrar por Principal:@gcp-sa-aiplatform-cc.iam.gserviceaccount.com para encontrar los agentes de servicio de Vertex AI.
Cambia al proyecto en el que necesites conceder los permisos.
Haz clic en Añadir e introduce la dirección de correo en Nuevos principales.
Añade todos los roles necesarios y haz clic en Guardar.
Proporcionar acceso a Hojas de cálculo de Google
Si usas una fuente de datos externa de BigQuery respaldada por Hojas de cálculo de Google, debes compartir tu hoja con la cuenta de servicio de Vertex AI. La cuenta de servicio de Vertex AI se crea después de iniciar el primer trabajo asíncrono (por ejemplo, crear un endpoint). También puedes crear explícitamente la cuenta de servicio de Vertex AI con la CLI de gcloud siguiendo estas instrucciones.
Para autorizar a Vertex AI a acceder a tu archivo de Hojas de cálculo, sigue estos pasos:
Ve a la página Gestión de identidades y accesos de la consola de Google Cloud .
Busca la cuenta de servicio con el nombre
Vertex AI Service Agent
y copia su dirección de correo (que aparece en Principal).Abre el archivo de Hojas de cálculo y compártelo con esa dirección.
Siguientes pasos
- Más información sobre la gestión de identidades y accesos
- Consulta información sobre permisos de gestión de identidades y accesos específicos y las operaciones que admiten.
- Para obtener información sobre las formas recomendadas de configurar un proyecto para un equipo, consulta Configurar un proyecto para un equipo.
- Consulta una descripción general de Vertex AI.