Configura los controles de acceso para las apps

En esta página, se explica cómo un administrador de Gemini Enterprise puede usar la API para administrar el control de acceso detallado de las apps individuales de Gemini Enterprise.

De forma predeterminada, los permisos de IAM suelen administrarse a nivel del proyecto. El IAM a nivel de la app permite un control más detallado, lo que les permite a los administradores hacer lo siguiente:

  • Restringe el acceso de los usuarios a apps específicas dentro del mismo proyecto de Google Cloud .
  • Alinea los permisos con las necesidades de la organización y los silos de datos para tus implementaciones de Gemini Enterprise.

Por ejemplo, considera una organización con una app de RR.HH. y una app para toda la empresa. Un miembro del equipo de RR.HH. con permisos a nivel del proyecto puede acceder a ambas apps. En cambio, si usas una política de IAM a nivel de la app, puedes otorgar acceso a un miembro del equipo de ventas solo a la app de toda la empresa y, de este modo, impedir que acceda a la app de RR.HH.

Diagrama de ejemplos de políticas de IAM a nivel de la app.

Antes de comenzar

Administra políticas de IAM para apps

Para administrar el acceso a tu app de Gemini Enterprise, puedes usar los métodos de API getIamPolicy y setIamPolicy.

En los siguientes pasos, se muestra cómo recuperar la política actual y, luego, actualizarla para otorgar o revocar el acceso del usuario.

Obtén la política de IAM de la app

Obtén la política de IAM actual de tu app con el método getIamPolicy. Se recomienda recuperar la política existente primero para evitar reemplazar los permisos actuales.

REST

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
"https://ENDPOINT_LOCATION-discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/collections/default_collection/engines/APP_ID:getIamPolicy"

Reemplaza lo siguiente:

  • PROJECT_ID: el ID de tu proyecto.
  • ENDPOINT_LOCATION: Es la región múltiple para tu solicitud a la API. Especifica uno de los siguientes valores:
    • us para la multirregión de EE.UU.
    • eu para la multirregión de la UE
    • global para la ubicación global
    Para obtener más información, consulta Cómo especificar una región múltiple para tu almacén de datos.
  • LOCATION: Es la multirregión de tu almacén de datos: global, us o eu.
  • APP_ID: Es el ID de la app que deseas configurar.

Actualiza la política de IAM de la app

Para otorgar o revocar el acceso de los usuarios a la app, actualiza la política de IAM de la app con el método setIamPolicy.

La política de IAM usa el rol de Usuario de Gemini Enterprise (roles/discoveryengine.agentspaceUser) para otorgar a los usuarios acceso directo a la app.

REST

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-d '{
      "policy": {
         "etag": "ETAG",
         "bindings": [
          {
            "role": "roles/discoveryengine.agentspaceUser",
            "members": [
              "user:USER_EMAIL_1",
              "user:USER_EMAIL_2"
            ]
          }
        ]
      }
    }' \
"https://ENDPOINT_LOCATION-discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/collections/default_collection/engines/APP_ID:setIamPolicy"

Reemplaza lo siguiente:

  • ETAG: Es el valor de etag que obtuviste como respuesta cuando usaste el método getIamPolicy.

  • USER_EMAIL_1, USER_EMAIL_2: Una o más direcciones de correo electrónico del usuario.

    • Para otorgar acceso, agrega los correos electrónicos de los usuarios al array members, cada uno con el prefijo user:

    • Para revocar el acceso, quita las direcciones de correo electrónico del usuario del array members.

  • PROJECT_ID: el ID de tu proyecto.

  • ENDPOINT_LOCATION: Es la región múltiple para tu solicitud a la API. Especifica uno de los siguientes valores:

    • us para la multirregión de EE.UU.
    • eu para la multirregión de la UE
    • global para la ubicación global
    Para obtener más información, consulta Cómo especificar una región múltiple para tu almacén de datos.

  • LOCATION: Es la multirregión de tu almacén de datos: global, us o eu.

  • APP_ID: Es el ID de la app que deseas configurar.

Próximos pasos

Si quieres borrar una app con una política de IAM, puedes quitar a los usuarios de la política antes de borrar la app. Para obtener más información, consulta Prácticas recomendadas para borrar una app con una política de IAM.