En esta página, se proporcionan ejemplos de cómo puedes configurar un proyecto para un equipo que trabaja con Gemini Enterprise Agent Platform. En esta página, se supone que ya estás familiarizado con los conceptos de Identity and Access Management (IAM), como las políticas, los roles, los permisos y las principales, como se describe en Control de acceso de Agent Platform con IAM y Conceptos relacionados con la administración del acceso.
Estos ejemplos están destinados a usarse de forma general. Ten en cuenta las necesidades específicas del equipo y ajusta la configuración del proyecto en consecuencia.
Descripción general
Agent Platform usa IAM para administrar el acceso a los recursos. Cuando planifiques el control de acceso para tus recursos, ten en cuenta lo siguiente:
Puedes administrar el acceso a nivel de proyecto o de recursos. 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.
Para otorgar acceso, asigna roles de IAM a las principales. Hay roles predefinidos disponibles para facilitar la configuración del acceso, pero se recomiendan los roles personalizados porque los creas tú, por lo que puedes limitar su acceso solo a los permisos que se requieren.
Para obtener más información sobre el control de acceso, consulta Control de acceso de Agent Platform con IAM.
Un solo proyecto con acceso compartido a los datos y los recursos de Agent Platform
En este ejemplo, un equipo comparte un solo proyecto que contiene sus datos y recursos de Agent Platform.
Puedes configurar un proyecto de esta manera si los datos, los contenedores y otros recursos de Agent Platform del equipo se pueden compartir entre todos los usuarios del proyecto.
La política de IAM de tu proyecto podría ser similar a la siguiente:
{
"version": 1,
"etag": "BwWKmjvelug=",
"bindings": [
{
"role": "roles/aiplatform.user",
"members": [
"user:USER1_EMAIL_ADDRESS",
"user:USER2_EMAIL_ADDRESS"
]
},
{
"role": "roles/storage.admin",
"members": [
"user:USER1_EMAIL_ADDRESS",
"user:USER2_EMAIL_ADDRESS"
]
},
{
"role": "roles/aiplatform.serviceAgent",
"members": [
"user:service-PROJECT_NUMBER@gcp-sa-aiplatform-cc.iam.gserviceaccount.com"
]
}
]
}
Configurar un proyecto de esta manera facilita la colaboración de un equipo para entrenar modelos, depurar código, implementar modelos y observar extremos. Todos los usuarios ven los mismos recursos y pueden entrenar con los mismos datos. Los recursos de Agent Platform operan dentro de un solo proyecto, por lo que no necesitas otorgar acceso a recursos fuera del proyecto. La cuota se comparte en todo el equipo.
Para configurar el control de acceso para el proyecto de tu equipo, consulta Administra el acceso a proyectos, carpetas y organizaciones.
Datos y recursos de Agent Platform separados
En este ejemplo, los datos del equipo se encuentran en un proyecto separado de los recursos de Agent Platform.
Puedes configurar un proyecto de esta manera si se cumplen las siguientes condiciones:
Los datos del equipo son demasiado difíciles de mover al mismo proyecto que los recursos de Agent Platform.
Los datos del equipo requieren un control específico sobre quién puede acceder a ellos.
En estas situaciones, te recomendamos que crees un proyecto para los datos y un proyecto para los recursos de Agent Platform. Los desarrolladores del equipo comparten el proyecto que contiene los recursos de Agent Platform. Usan los recursos de Agent Platform para acceder a los datos almacenados en el otro proyecto y procesarlos. Los administradores de datos otorgan acceso a los recursos de Agent Platform a través de agentes de servicio o cuentas de servicio personalizadas.
Por ejemplo, puedes otorgar a los agentes de servicio predeterminados de Agent Platform acceso a un bucket de Cloud Storage con una política de permiso similar a la siguiente:
{
"version": 1,
"etag": "BwWKmjvelug=",
"bindings": [
{
"role": "roles/storage.objectViewer",
"members": [
"user:service-PROJECT_NUMBER@gcp-sa-aiplatform-cc.iam.gserviceaccount.com",
"user:service-PROJECT_NUMBER@gcp-sa-aiplatform.iam.gserviceaccount.com"
]
}
]
}
Cuando sea posible, especifica una cuenta de servicio para usarla como la identidad del recurso cuando crees recursos de Agent Platform y usa esa cuenta de servicio para administrar el control de acceso. Esto facilita el otorgamiento de acceso a recursos específicos a los datos y la administración de permisos a lo largo del tiempo.
Por ejemplo, puedes otorgar acceso a BigQuery a una cuenta de servicio con una política similar a la siguiente:
{
"version": 1,
"etag": "BwWKmjvelug=",
"bindings": [
{
"role": "roles/bigquery.user",
"members": [
"user:SERVICE_ACCOUNT_NAME@PROJECT_NUMBER.iam.gserviceaccount.com"
]
}
]
}
Para configurar el control de acceso para las cuentas de servicio, consulta Administra el acceso a las cuentas de servicio.
En el proyecto con los recursos de Agent Platform, los administradores pueden otorgar a los usuarios acceso a los datos otorgando el rol de Usuario de cuenta de servicio (roles/iam.serviceAccountUser) en las cuentas de servicio especificadas.
Aísla el código menos confiable en proyectos separados adicionales
Los modelos, los contenedores de predicción y los contenedores de entrenamiento son código. Es importante aislar el código menos confiable de los modelos y datos sensibles. Implementa extremos y etapas de entrenamiento en sus propios proyectos, usa una cuenta de servicio dedicada con permisos muy limitados y usa los Controles del servicio de VPC para aislarlos y reducir el impacto del acceso otorgado a esos contenedores y modelos.
¿Qué sigue?
Para obtener más información sobre el control de acceso a los extremos, consulta Controla el acceso a los extremos de Agent Platform.
Para obtener más información sobre el uso de una cuenta de servicio personalizada para controlar el acceso a recursos específicos, consulta Usa una cuenta de servicio personalizada.