Nesta página, explicamos como um administrador do Gemini Enterprise pode usar a API para gerenciar o controle de acesso detalhado de apps individuais do Gemini Enterprise.
Por padrão, as permissões do IAM são gerenciadas no nível do projeto. O IAM no nível do app permite um controle mais granular, permitindo que os administradores:
- Restrinjam o acesso do usuário a apps específicos no mesmo Google Cloud projeto.
- Alinhem as permissões às necessidades organizacionais e aos silos de dados para as implantações do Gemini Enterprise.
Por exemplo, considere uma organização com um app de RH e um app para toda a empresa. Um membro da equipe de RH com permissões no nível do projeto pode acessar os dois apps. Por outro lado, usando uma política do IAM no nível do app, é possível conceder a um membro da equipe de vendas acesso apenas ao app de toda a empresa, impedindo que ele acesse o app de RH.

Antes de começar
Confirme se você tem o papel de administrador do Gemini Enterprise.
Confirme se todos os usuários do Gemini Enterprise com uma licença válida têm o papel de usuário restrito do Gemini Enterprise.
Transição do acesso para envolvidos no projeto para o acesso no nível do app
Para restringir os usuários a apps específicos, remova o papel correspondente das permissões no nível do projeto e conceda-o no nível do app.
Por exemplo, para mover um usuário com a função de usuário do Gemini Enterprise (roles/discoveryengine.agentspaceUser) para envolvidos no projeto para o nível do app, siga estas etapas:
- No Google Cloud console, acesse a página IAM.
- Encontre o usuário e remova o papel
roles/discoveryengine.agentspaceUserdas permissões para envolvidos no projeto. - Use o método
setIamPolicypara conceder ao usuário oroles/discoveryengine.agentspaceUserpapel para o app específico. Para mais informações, consulte Gerenciar políticas do IAM para apps.
Gerenciar políticas do IAM para apps
Para gerenciar o acesso ao app Gemini Enterprise, use os métodos de API getIamPolicy e setIamPolicy.
As etapas a seguir mostram como recuperar a política atual e atualizá-la para conceder ou revogar o acesso do usuário.
Receber a política do IAM do app
Receba a política do IAM atual do app usando o
getIamPolicy
método. Recomendamos buscar a política atual primeiro para evitar a substituição de permissões atuais.
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"
Substitua:
PROJECT_ID: ID do projeto.ENDPOINT_LOCATION: a multirregião da sua solicitação de API. Especifique um dos seguintes valores:uspara a multirregião dos EUAeupara a multirregião da UEglobalpara o local global
LOCATION: a multirregião do seu repositório de dados:global,usoueuAPP_ID: o ID do app que você quer configurar.
Atualizar a política do IAM do app
Para conceder ou revogar o acesso do usuário ao app, atualize a política do IAM
do app usando o
setIamPolicy
método.
A política do IAM usa o
papel de usuário do Gemini Enterprise
(roles/discoveryengine.agentspaceUser) para conceder aos usuários acesso direto ao 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",
"group:GROUP_EMAIL",
"principal://iam.googleapis.com/locations/global/workloadIdentityPools/POOL_ID/subject/SUBJECT_ID",
"principalSet://iam.googleapis.com/locations/global/workloadIdentityPools/POOL_ID/attribute.NAME/VALUE"
]
}
]
}
}' \
"https://ENDPOINT_LOCATION-discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/collections/default_collection/engines/APP_ID:setIamPolicy"
Substitua:
ETAG: o valoretagque você recebeu como resposta ao usar o métodogetIamPolicy.USER_EMAIL,GROUP_EMAIL: um ou mais endereços de e-mail de usuários ou grupos. Além deuseregroup,principaleprincipalSetsão tipos de membros válidos para a federação de identidade da carga de trabalho.Para conceder acesso, adicione principais à matriz
members. Por exemplo,"user:cloudysanfrancisco@gmail.com"ou"group:mcymbalgroup@google.com".Para revogar o acesso, remova os principais da matriz
members.
POOL_ID: o ID do pool de Identidade da carga de trabalho.SUBJECT_ID: o identificador de assunto de uma identidade específica.NAME: o nome de um atributo.VALUE: o valor de um atributo.PROJECT_ID: ID do projeto.ENDPOINT_LOCATION: a multirregião da sua solicitação de API. Especifique um dos seguintes valores:uspara a multirregião dos EUAeupara a multirregião da UEglobalpara o local global
LOCATION: a multirregião do seu repositório de dados:global,usoueu.APP_ID: o ID do app que você quer configurar.
A seguir
Se você quiser excluir um app com uma política do IAM, remova os usuários da política antes de excluir o app. Para mais informações, consulte Práticas recomendadas para excluir um app com uma política do IAM.