Questa pagina spiega come un amministratore di Gemini Enterprise può utilizzare l'API per gestire il controllo dell'accesso granulare per le singole app Gemini Enterprise.
Per impostazione predefinita, le autorizzazioni IAM vengono spesso gestite a livello di progetto. IAM a livello di app consente un controllo più granulare, consentendo agli amministratori di:
- Limitare l'accesso degli utenti a determinate app all'interno dello stesso progetto Google Cloud .
- Allinea le autorizzazioni alle esigenze organizzative e ai silos di dati per i tuoi deployment di Gemini Enterprise.
Ad esempio, considera un'organizzazione con un'app per le risorse RU e un'app a livello aziendale. Un membro del team delleRUe con autorizzazioni a livello di progetto può accedere a entrambe le app. Al contrario, utilizzando un criterio IAM a livello di app, puoi concedere a un membro del team di vendita l'accesso solo all'app a livello aziendale, impedendogli così di accedere all'app RU.

Prima di iniziare
Conferma di disporre del ruolo Amministratore Gemini Enterprise.
Verifica che tutti gli utenti di Gemini Enterprise con una licenza valida dispongano del ruolo Utente Gemini Enterprise con limitazioni.
Transizione dall'accesso a livello di progetto a quello a livello di app
Per limitare gli utenti ad app specifiche, devi rimuovere il ruolo corrispondente dalle autorizzazioni a livello di progetto e poi concederlo a livello di app.
Ad esempio, per spostare un utente con il ruolo Utente Gemini Enterprise
(roles/discoveryengine.agentspaceUser) dal livello di progetto al livello di app, segui
questi passaggi:
- Nella console Google Cloud vai alla pagina IAM.
- Trova l'utente e rimuovi il ruolo
roles/discoveryengine.agentspaceUserdalle sue autorizzazioni a livello di progetto. - Utilizza il metodo
setIamPolicyper concedere all'utente il ruoloroles/discoveryengine.agentspaceUserper l'app specifica. Per ulteriori informazioni, consulta Gestire le policy IAM per le app.
Gestire i criteri IAM per le app
Per gestire l'accesso alla tua app Gemini Enterprise, puoi utilizzare i metodi API getIamPolicy
e setIamPolicy.
I passaggi riportati di seguito mostrano come recuperare il criterio corrente e poi aggiornarlo per concedere o revocare l'accesso utente.
Recupera il criterio IAM dell'app
Recupera la policy IAM attuale della tua app utilizzando il metodo
getIamPolicy. Ti consigliamo di recuperare prima la policy esistente per evitare
di sovrascrivere le autorizzazioni attuali.
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"
Sostituisci quanto segue:
PROJECT_ID: l'ID progetto.ENDPOINT_LOCATION: la multiregione per la tua richiesta API. Specifica uno dei seguenti valori:usper la multi-regione Stati Unitieuper la multiregione EUglobalper la località globale
LOCATION: la regione multipla del datastore:global,usoeuAPP_ID: l'ID dell'app che vuoi configurare.
Aggiorna la policy IAM dell'app
Per concedere o revocare l'accesso utente all'app, aggiorna il criterio IAM dell'app utilizzando il metodo
setIamPolicy.
Il criterio IAM utilizza il ruolo
Utente Gemini Enterprise
(roles/discoveryengine.agentspaceUser) per concedere agli utenti l'accesso diretto all'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"
Sostituisci quanto segue:
ETAG: il valoreetagottenuto come risposta quando hai utilizzato il metodogetIamPolicy.USER_EMAIL,GROUP_EMAIL: uno o più indirizzi email di utenti o gruppi. Oltre auseregroup,principaleprincipalSetsono tipi di membri validi per la federazione delle identità per i workload.Per concedere l'accesso, aggiungi le entità all'array
members. Ad esempio,"user:cloudysanfrancisco@gmail.com"o"group:mcymbalgroup@google.com".Per revocare l'accesso, rimuovi le entità dall'array
members.
POOL_ID: l'ID del pool di identità del workload.SUBJECT_ID: l'identificatore del soggetto per un'identità specifica.NAME: il nome di un attributo.VALUE: il valore di un attributo.PROJECT_ID: l'ID progetto.ENDPOINT_LOCATION: la multiregione per la tua richiesta API. Specifica uno dei seguenti valori:usper la multi-regione Stati Unitieuper la multiregione EUglobalper la località globale
LOCATION: la multiregione del datastore:global,usoeu.APP_ID: l'ID dell'app che vuoi configurare.
Passaggi successivi
Se vuoi eliminare un'app con una policy IAM, puoi rimuovere gli utenti dalla policy prima di eliminare l'app. Per saperne di più, consulta Best practice per l'eliminazione di un'app con una policy IAM.