Limitazione delle identità per dominio

La condivisione limitata per i domini consente di limitare la condivisione delle risorse in base a un dominio o a una risorsa dell'organizzazione. Quando la condivisione limitata per i domini è attiva, solo alle entità che appartengono a domini o organizzazioni consentiti possono essere concessi ruoli IAM nella tua organizzazione Google Cloud .

Esistono tre tipi di criteri dell'organizzazione che puoi utilizzare per limitare le identità per dominio:

  • Il vincolo gestito iam.managed.allowedPolicyMembers
  • Policy dell'organizzazione personalizzate che fanno riferimento alla risorsa iam.googleapis.com/AllowPolicy
  • Il vincolo gestito legacy iam.allowedPolicyMemberDomains

Prima di iniziare

Scegli il metodo che utilizzerai per implementare la condivisione limitata per i domini. Per scoprire di più su vantaggi e svantaggi di ogni metodo, consulta Metodi per limitare la condivisione per dominio.

Ruoli obbligatori

Per ottenere le autorizzazioni necessarie per applicare la condivisione con limitazioni del dominio, chiedi all'amministratore di concederti il ruolo IAM Amministratore dei criteri dell'organizzazione (roles/orgpolicy.policyAdmin) nell'organizzazione. Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.

Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.

Utilizza il vincolo iam.managed.allowedPolicyMembers per implementare la condivisione limitata per i domini

Console

  1. Nella console Google Cloud , vai alla pagina Policy dell'organizzazione.

    Vai a Policy dell'organizzazione

  2. Nel selettore di progetti, seleziona il progetto, la cartella o l'organizzazione per cui vuoi modificare la policy dell'organizzazione. La pagina Policy dell'organizzazione visualizzata mostra un elenco filtrabile di vincoli delle policy dell'organizzazione disponibili per questa risorsa.

  3. Nell'elenco, seleziona il vincolo gestito Limita i membri delle policy consentiti nelle policy di autorizzazione IAM.

  4. Nella pagina Dettagli norme, fai clic su Gestisci norme.

  5. Nella pagina Modifica policy, seleziona Esegui override della policy dell'unità organizzativa principale.

  6. Seleziona Aggiungi una regola e poi aggiorna la regola dei criteri dell'organizzazione:

  7. In Applicazione forzata, seleziona On.

  8. (Facoltativo) Per rendere la policy dell'organizzazione condizionale in base a un tag, fai clic su Aggiungi condizione. Se aggiungi una regola condizionale a una policy dell'organizzazione, devi aggiungere almeno una regola incondizionata o la policy non può essere salvata. Per maggiori dettagli, vedi Impostazione di un criterio dell'organizzazione con tag.

  9. Nella sezione Parametri, configura i set di membri e entità a cui devono essere concessi ruoli nella tua organizzazione, quindi fai clic su Salva.

  10. (Facoltativo) Per visualizzare l'anteprima dell'effetto della modifica dei criteri dell'organizzazione prima che venga applicata, fai clic su Testa modifiche. Per saperne di più sul test delle modifiche alle policy dell'organizzazione, consulta Testare le modifiche alle policy dell'organizzazione con Policy Simulator.

  11. Per applicare la policy dell'organizzazione in modalità dry run, fai clic su Imposta criterio dry run. Per ulteriori informazioni, vedi Creare una policy dell'organizzazione in modalità di prova.

  12. Dopo aver verificato che la policy dell'organizzazione in modalità di prova funziona come previsto, imposta la policy attiva facendo clic su Imposta policy.

gcloud

  1. Crea un file YAML per definire il criterio dell'organizzazione:

    name: organizations/ORG_ID/policies/CONSTRAINT_NAME
    spec:
    rules:
     - enforce: true
       parameters:
         allowedMemberSubjects:
           - ALLOWED_MEMBER_1
           - ALLOWED_MEMBER_2
         allowedPrincipalSets:
           - ALLOWED_PRINCIPAL_SET_1
           - ALLOWED_PRINCIPAL_SET_2
    

    Sostituisci quanto segue:

    • ORG_ID: l'ID numerico della tua Google Cloud organizzazione.

    • CONSTRAINT_NAME: il nome del vincolo che vuoi impostare.

    • ALLOWED_MEMBER_1, ALLOWED_MEMBER_2: i membri a cui devono essere assegnati i ruoli nella tua organizzazione. Ad esempio user:example-user@example.com.

    • ALLOWED_PRINCIPAL_SET_1, ALLOWED_PRINCIPAL_SET_2: i set di entità a cui devono poter essere concessi ruoli nella tua organizzazione. Ad esempio, //cloudresourcemanager.googleapis.com/organizations/0123456789012.

    (Facoltativo) Per rendere il criterio dell'organizzazione condizionale in base a un tag, aggiungi un blocco condition a rules. Se aggiungi una regola condizionale a una policy dell'organizzazione, devi aggiungere almeno una regola incondizionata o la policy non può essere salvata. Per maggiori dettagli, vedi Impostazione di un criterio dell'organizzazione con tag.

  2. Imposta la policy con il comando org-policies set-policy e il flag spec:

    gcloud org-policies set-policy POLICY_PATH \
      --update-mask=spec
    

    Sostituisci POLICY_PATH con il percorso completo del file YAML del criterio dell'organizzazione.

Per scoprire come testare la policy in modalità dry run prima di applicarla, consulta Creare una policy dell'organizzazione in modalità dry run.

Per scoprire come simulare la policy prima di applicarla, consulta Testare le modifiche ai criteri dell'organizzazione con Policy Simulator.

REST

Per impostare la policy dell'organizzazione, utilizza il metodo organizations.policies.create.

POST https://orgpolicy.googleapis.com/v2/{parent=organizations/ORGANIZATION_ID}/policies

Il corpo JSON della richiesta contiene la definizione di un criterio dell'organizzazione. Se questo vincolo non supporta i parametri, ometti il blocco parameters in rules.

{
  "name": "organizations/ORG_ID/policies/CONSTRAINT_NAME",
  "spec": {
    "rules": [
      {
        "enforce": true,
        "parameters": {
          "allowedMemberSubjects": [
            "ALLOWED_MEMBER_1",
            "ALLOWED_MEMBER_2"
          ],
          "allowedPrincipalSets": [
            "ALLOWED_PRINCIPAL_SET_1",
            "ALLOWED_PRINCIPAL_SET_2"
          ]
        }
      }
    ]
  }
}

Sostituisci quanto segue:

  • ORG_ID: l'ID numerico della tua Google Cloud organizzazione.

  • CONSTRAINT_NAME: il nome del vincolo che vuoi impostare.

  • ALLOWED_MEMBER_1, ALLOWED_MEMBER_2: i membri a cui devono essere assegnati i ruoli nella tua organizzazione. Ad esempio user:example-user@example.com.

  • ALLOWED_PRINCIPAL_SET_1, ALLOWED_PRINCIPAL_SET_2: i set di entità a cui devono poter essere concessi ruoli nella tua organizzazione. Ad esempio, //cloudresourcemanager.googleapis.com/organizations/0123456789012.

(Facoltativo) Per rendere il criterio dell'organizzazione condizionale in base a un tag, aggiungi un blocco condition a rules. Se aggiungi una regola condizionale a una policy dell'organizzazione, devi aggiungere almeno una regola incondizionata o la policy non può essere salvata. Per maggiori dettagli, vedi Impostazione di un criterio dell'organizzazione con tag.

Per scoprire come testare la policy in modalità dry run prima di applicarla, consulta Creare una policy dell'organizzazione in modalità dry run.

Per scoprire come simulare la policy prima di applicarla, consulta Testare le modifiche ai criteri dell'organizzazione con Policy Simulator.

Utilizzare criteri dell'organizzazione personalizzati per implementare la condivisione limitata per i domini

  1. Crea un vincolo personalizzato che limiti le entità a cui possono essere concessi ruoli nella tua organizzazione:

    1. Utilizza la funzione CEL memberInPrincipalSet con l'entità della tua organizzazione impostata per limitare le concessioni di ruoli ai membri della tua organizzazione. Per scoprire come trovare l'ID organizzazione, vedi Recuperare un ID risorsa organizzazione.

      Ad esempio, il seguente vincolo limita le concessioni di ruoli ai membri della tua organizzazione:

      name: organizations/ORG_ID/customConstraints/custom.allowInternalIdentitiesOnly
      methodTypes:
        - CREATE
        - UPDATE
      condition:
        "resource.bindings.all(
          binding,
          binding.members.all(member,
            MemberInPrincipalSet(member, ['//cloudresourcemanager.googleapis.com/organizations/ORG_ID'])
          )
        )"
      actionType: ALLOW
      displayName: Only allow organization members to be granted roles
      
    2. Se vuoi, perfeziona il vincolo aggiungendo altre funzioni CEL, unite a operatori logici (&&, || o !). Puoi aggiungere una qualsiasi delle seguenti funzioni:

      Ad esempio, il seguente vincolo limita le concessioni di ruoli ai membri della tua organizzazione e a admin@example.com:

      name: organizations/ORG_ID/customConstraints/custom.allowInternalIdentitiesOnly
      methodTypes:
        - CREATE
        - UPDATE
      condition:
        "resource.bindings.all(
          binding,
          binding.members.all(member,
            (
              MemberInPrincipalSet(member, ['//cloudresourcemanager.googleapis.com/organizations/ORG_ID'])
              ||
              MemberSubjectMatches(member, ['user:admin@example.com'])
            )
          )
        )"
      actionType: ALLOW
      displayName: Only allow organization members and service agents to be granted roles
      
  2. Configura il vincolo personalizzato:

    Dopo aver creato il file YAML per un nuovo vincolo personalizzato, devi configurarlo per renderlo disponibile per i criteri dell'organizzazione nella tua organizzazione. Per configurare un vincolo personalizzato, utilizza il comando gcloud org-policies set-custom-constraint:
    gcloud org-policies set-custom-constraint CONSTRAINT_PATH
    Sostituisci CONSTRAINT_PATH con il percorso completo del file di vincoli personalizzati. Ad esempio: /home/user/customconstraint.yaml. Una volta completati, i vincoli personalizzati sono disponibili come policy dell'organizzazione nell'elenco delle policy dell'organizzazione Google Cloud . Per verificare che il vincolo personalizzato esista, utilizza il comando gcloud org-policies list-custom-constraints:
    gcloud org-policies list-custom-constraints --organization=ORGANIZATION_ID
    Sostituisci ORGANIZATION_ID con l'ID della risorsa dell'organizzazione. Per saperne di più, consulta Visualizzare le policy dell'organizzazione.
  3. Applica la policy dell'organizzazione personalizzata:

    Puoi applicare un vincolo creando un criterio dell'organizzazione che lo fa riferimento e poi applicando questo criterio dell'organizzazione a una risorsa. Google Cloud

    Console

    1. Nella console Google Cloud , vai alla pagina Policy dell'organizzazione.

      Vai a Policy dell'organizzazione

    2. Nel selettore di progetti, seleziona il progetto per cui vuoi impostare il criterio dell'organizzazione.
    3. Dall'elenco nella pagina Criteri organizzazione, seleziona il vincolo per visualizzare la pagina Dettagli criterio relativa a quel vincolo.
    4. Per configurare la policy dell'organizzazione per questa risorsa, fai clic su Gestisci policy.
    5. Nella pagina Modifica policy, seleziona Esegui override della policy dell'unità organizzativa principale.
    6. Fai clic su Aggiungi una regola.
    7. Nella sezione Applicazione, seleziona se l'applicazione di questa policy dell'organizzazione è attiva o disattivata.
    8. (Facoltativo) Per rendere la policy dell'organizzazione condizionale in base a un tag, fai clic su Aggiungi condizione. Tieni presente che se aggiungi una regola condizionale a una policy dell'organizzazione, devi aggiungere almeno una regola incondizionata o la policy non può essere salvata. Per saperne di più, vedi Impostazione di un criterio dell'organizzazione con tag.
    9. Fai clic su Testa modifiche per simulare l'effetto della policy dell'organizzazione. La simulazione delle policy non è disponibile per i vincoli gestiti legacy. Per saperne di più, consulta Testare le modifiche alle policy dell'organizzazione con Policy Simulator.
    10. Per completare e applicare la policy dell'organizzazione, fai clic su Imposta policy. L'applicazione del criterio richiede fino a 15 minuti.

    gcloud

    Per creare una policy dell'organizzazione con regole booleane, crea un file YAML della policy che faccia riferimento al vincolo:

          name: projects/PROJECT_ID/policies/CONSTRAINT_NAME
          spec:
            rules:
            - enforce: true
        

    Sostituisci quanto segue:

    • PROJECT_ID: il progetto su cui vuoi applicare il vincolo.
    • CONSTRAINT_NAME: il nome del vincolo che vuoi applicare. Ad esempio, compute.disableAllIpv6.

    Per applicare il criterio dell'organizzazione contenente il vincolo, esegui questo comando:

        gcloud org-policies set-policy POLICY_PATH
        

    Sostituisci POLICY_PATH con il percorso completo del file YAML del criterio dell'organizzazione. L'applicazione del criterio richiede fino a 15 minuti.

Utilizza il vincolo iam.allowedPolicyMemberDomains per implementare la condivisione limitata per i domini

Il vincolo di limitazione del dominio è un vincolo gestito legacy con l'elenco constraint_type. Gli ID cliente Google Workspace e gli ID risorsa dell'organizzazione possono essere aggiunti e rimossi dall'elenco allowed_values di un vincolo di restrizione del dominio. Google Cloud Il vincolo di limitazione del dominio non supporta la negazione dei valori e un criterio dell'organizzazione non può essere salvato con ID nell'elenco denied_values.

Tutti i domini associati a un account Google Workspace o a una risorsa dell'organizzazione elencati in allowed_values saranno consentiti dalle norme dell'organizzazione. Tutti gli altri domini verranno negati dal criterio dell'organizzazione.

Puoi creare una policy dell'organizzazione che imponga il vincolo di limitazione del dominio in base a qualsiasi risorsa inclusa nell'elenco delle risorse supportate. Ad esempio, bucket Cloud Storage, set di dati BigQuery o VM Compute Engine.

Console

Per impostare un criterio dell'organizzazione che includa un vincolo di limitazione del dominio, procedi come segue:

  1. Nella console Google Cloud , vai alla pagina Policy dell'organizzazione.

    Vai a Policy dell'organizzazione

  2. Nel selettore di progetti, seleziona la risorsa Organizzazione su cui vuoi impostare il criterio dell'organizzazione.

  3. Nella pagina Criteri organizzazione, seleziona Condivisione con limitazioni al dominio dall'elenco dei vincoli.

  4. Nella pagina Dettagli norme, fai clic su Gestisci norme.

  5. Nella sezione Applicabile a, seleziona Esegui override della policy dell'unità organizzativa principale.

  6. Fai clic su Aggiungi una regola.

  7. In Valori policy, seleziona Personalizzato.

  8. In Tipo di criterio, seleziona Consenti.

  9. In Valori personalizzati, inserisci un ID risorsa organizzazione o un ID cliente Google Workspace nel campo.

    L'inserimento dell'ID risorsa dell'organizzazione consente alle seguenti entità di ricevere ruoli nella tua organizzazione:

    • Tutti i pool di identità della forza lavoro nella tua organizzazione
    • Tutti i service account e i pool di identità del workload in qualsiasi progetto dell'organizzazione
    • Tutti gli agenti di servizio associati alle risorse della tua organizzazione.

    L'inserimento dell'ID cliente Google Workspace consente di concedere ruoli nella tua organizzazione ai seguenti soggetti:

    • Tutte le identità in tutti i domini associati al tuo ID cliente Google Workspace
    • Tutti i pool di identità della forza lavoro nella tua organizzazione
    • Tutti i service account e i pool di identità del workload in qualsiasi progetto dell'organizzazione
    • Tutti gli agenti di servizio associati alle risorse della tua organizzazione.
  10. Se vuoi aggiungere più ID, fai clic su Nuovo valore norma per creare un campo aggiuntivo.

  11. Fai clic su Fine.

  12. (Facoltativo) Per rendere il vincolo di restrizione del dominio condizionale a un tag, fai clic su Aggiungi condizione.

    1. Nel campo Titolo, inserisci un nome per la condizione.

    2. Nel campo Descrizione, fornisci una descrizione della condizione. La descrizione fornisce il contesto dei tag richiesti e il modo in cui influenzano le risorse.

    3. Puoi utilizzare lo Strumento per la creazione di condizioni per creare una condizione che richiede un tag specifico affinché il vincolo abbia effetto.

      1. Nel menu Tipo di condizione nella scheda Generatore di condizioni, seleziona Tag.

      2. Seleziona l'operatore per la condizione. Per trovare la corrispondenza con un intero tag, utilizza l'operatore corrisponde. Per trovare una corrispondenza tra una chiave tag e un valore tag, utilizza l'operatore Corrisponde all'ID.

      3. Se hai selezionato l'operatore corrisponde, inserisci il nome con spazio dei nomi del valore del tag. Se hai selezionato l'operatore corrisponde all'ID, inserisci gli ID chiave e valore.

      4. Puoi creare più condizioni facendo clic su Aggiungi. Se aggiungi un'altra condizione, puoi impostare la logica condizionale in modo che richieda tutte le condizioni attivando E. Puoi impostare la logica condizionale in modo che richieda che solo una delle condizioni sia vera attivando/disattivando l'opzione Or.

      5. Puoi eliminare un'espressione facendo clic sulla X grande a destra dei campi della condizione.

      6. Al termine della modifica delle condizioni, fai clic su Salva.

  13. Per applicare il criterio, fai clic su Imposta criterio.

gcloud

I criteri possono essere impostati tramite Google Cloud CLI. Per creare un criterio che includa il vincolo di restrizione del dominio, esegui questo comando:

Per impostare una policy dell'organizzazione che includa il vincolo di restrizione del dominio, esegui questo comando:

gcloud org-policies set-policy POLICY_PATH

dove POLICY_PATH è il percorso completo del file YAML del criterio dell'organizzazione, che dovrebbe avere il seguente aspetto:

name: organizations/ORGANIZATION_ID/policies/iam.allowedPolicyMemberDomains
spec:
  rules:
  - condition: # This condition applies to the values block.
      expression: "resource.matchTag('ORGANIZATION_ID/environment', 'dev')"
    values:
      allowedValues:
      - PRINCIPAL_SET
  - values:
      allowedValues:
      - PRINCIPAL_SET

Sostituisci quanto segue:

  • ORGANIZATION_ID con l'ID della risorsa organizzazione su cui impostare questo criterio.
  • PRINCIPAL_SET per gli identificatori delle entità Cloud Identity che vuoi consentire, incluso l'ID risorsa dell'organizzazione. Ad esempio is:principalSet://iam.googleapis.com/organizations/01234567890123.

    Gli ID cliente Google Workspace devono essere utilizzati per tutte le altre identità che vuoi consentire. Ad esempio, is:C03g5e3bc.

Una volta applicata questa policy dell'organizzazione, nelle policy di autorizzazione saranno consentite solo le identità appartenenti all'ID risorsa organizzazione o al dominio Google Workspace dell'elenco di allowed_values. Gli utenti e i gruppi Google Workspace devono essere elementi secondari della risorsa dell'organizzazione o far parte del dominio Google Workspace e i service account IAM devono essere elementi secondari di una risorsa dell'organizzazione associata al dominio Google Workspace specificato.

Ad esempio, se hai creato un criterio dell'organizzazione con solo l'ID cliente di Google Workspace della tua azienda, da quel momento in poi solo i principal di quel dominio potrebbero essere aggiunti al criterio di autorizzazione.

Esempio di messaggio di errore

Quando il vincolo gestito legacy iam.allowedPolicyMemberDomains viene violato tentando di aggiungere un'entità non inclusa nell'elenco allowed_values, l'operazione non andrà a buon fine e verrà visualizzato un messaggio di errore.

Console

Screenshot della console

gcloud

ERROR: (gcloud.projects.set-iam-policy) FAILED_PRECONDITION:
One or more users named in the policy do not belong to a permitted customer.

Recupero dell'ID risorsa di un'organizzazione

Puoi ottenere l'ID risorsa dell'organizzazione utilizzando la console Google Cloud , gcloud CLI o l'API Cloud Resource Manager.

console

Per ottenere l'ID risorsa dell'organizzazione utilizzando la console Google Cloud , segui questi passaggi:

  1. Vai alla Google Cloud console:

    Vai alla console Google Cloud

  2. Nel selettore di progetti nella parte superiore della pagina, seleziona la risorsa dell'organizzazione.
  3. Sul lato destro, fai clic su Altro, poi su Impostazioni.

La pagina Impostazioni mostra l'ID risorsa dell'organizzazione.

gcloud

Per trovare l'ID risorsa dell'organizzazione, esegui questo comando:

gcloud organizations list

Questo comando elenca tutte le risorse dell'organizzazione a cui appartieni e i relativi ID risorsa dell'organizzazione.

API

Per trovare l'ID risorsa dell'organizzazione utilizzando l'API Cloud Resource Manager, utilizza il metodo organizations.search(), che include una query per il tuo dominio. Ad esempio:

GET https://cloudresourcemanager.googleapis.com/v3/organizations:search{query=domain:altostrat.com}

La risposta contiene i metadati della risorsa organizzazione che appartiene a altostrat.com, incluso l'ID risorsa organizzazione.

Dopo aver ottenuto l'ID risorsa dell'organizzazione, devi utilizzare l'identificatore corretto per l'insieme di entità che vi appartengono. Ad esempio:

principalSet://iam.googleapis.com/organizations/01234567890123

Per ulteriori informazioni sugli identificatori delle entità IAM, consulta Identificatori delle entità.

Recuperare un ID cliente Google Workspace

L'ID cliente Google Workspace utilizzato dal vincolo di limitazione del dominio può essere ottenuto in due modi:

gcloud

Il comando gcloud organizations list può essere utilizzato per visualizzare tutte le organizzazioni per le quali disponi dell'autorizzazione resourcemanager.organizations.get:

gcloud organizations list

Questo comando restituirà DISPLAY_NAME, ID (ID organizzazione) e DIRECTORY_CUSTOMER_ID. L'ID cliente Google Workspace è DIRECTORY_CUSTOMER_ID.

API

L'API Google Workspace Directory può essere utilizzata per recuperare un ID cliente Google Workspace.

Dopo aver eseguito l'accesso come amministratore di Google Workspace, puoi visitare la documentazione del metodo API Customers: get e fare clic su Esegui. Dopo l'autorizzazione, la risposta mostrerà il tuo ID cliente.

In alternativa, puoi utilizzare un client API:

  1. Ottieni un token di accesso OAuth per l'ambito https://www.googleapis.com/auth/admin.directory.customer.readonly.
  2. Esegui il comando seguente per eseguire query sull'API Google Workspace Directory:

    curl -# -X GET "https://www.googleapis.com/admin/directory/v1/customers/customerKey" \
    -H "Authorization: Bearer $access_token" -H "Content-Type: application/json"
    

Questo comando restituirà una risposta JSON contenente le informazioni del cliente. L'ID cliente Google Workspace è id.

Configurare le eccezioni per la condivisione limitata per i domini

Alcuni Google Cloud servizi utilizzano service account, agenti di servizio e altri account per eseguire azioni per tuo conto. La condivisione con limitazioni del dominio può impedire a questi account di ottenere automaticamente i ruoli IAM di cui hanno bisogno, il che può causare il mancato funzionamento di determinate azioni.

La tabella seguente elenca le azioni in Google Cloud che potrebbero essere interessate dalla condivisione con limitazioni del dominio. Elenca anche gli account a cui devono essere concessi ruoli automaticamente affinché queste azioni vadano a buon fine.

Se utilizzi criteri dell'organizzazione personalizzati o il vincolo iam.managed.allowedPolicyMembers gestito per implementare la condivisione con limitazioni al dominio, valuta la possibilità di aggiungere questi account come eccezioni al vincolo di condivisione con limitazioni al dominio. Per aggiungere un account come eccezione, aggiungi l'identificatore dell'entità per l'account all'elenco dei membri consentiti.

Se utilizzi il vincolo gestito legacy iam.allowedPolicyMemberDomains per implementare la condivisione con limitazioni del dominio, potresti dover forzare l'accesso all'account per consentire a questi account di eseguire le azioni elencate.

Azione Identificatore entità
Collegare Google Analytics 360 a BigQuery serviceAccount:analytics-processing-dev@system.gserviceaccount.com
Abilita il sink di log BigQuery per un account di fatturazione serviceAccount:bUNIQUE_ID@gcp-sa-loggingiam.gserviceaccount.com
Abilita il logging degli accessi allo spazio di archiviazione serviceAccount:cloud-storage-analytics@google.com
Abilita l'API Firebase
  • serviceAccount:service-PROJECT_NUMBER@gcp-sa-firebase.iam.gserviceaccount.com
  • serviceAccount:firebase-service-account@firebase-sa-management.iam.gserviceaccount.com
Utilizzare Pub/Sub come endpoint per un'app Google Chat serviceAccount:chat-api-push@system.gserviceaccount.com
Utilizzare Pub/Sub per ricevere notifiche in tempo reale per lo sviluppatore da Google Play serviceAccount:google-play-developer-notifications@system.gserviceaccount.com

Servizi pubblici Cloud Run

Cloud Run ti consente di rendere pubblici i servizi. Tuttavia, se implementi la condivisione limitata per i domini, gli utenti esterni alla tua organizzazione non potranno accedere ai servizi Cloud Run pubblici.

Per consentire agli utenti di accedere ai servizi Cloud Run pubblici, devi disattivare il controllo IAM Invoker di Cloud Run per i servizi Cloud Run. Per saperne di più, vedi Disattivare Cloud Run Invoker per i servizi.

Condividere pubblicamente altri dati

Se utilizzi criteri dell'organizzazione personalizzati per implementare la condivisione con limitazioni del dominio, puoi aggiungere un'eccezione ai criteri dell'organizzazione per consentire la condivisione pubblica dei dati.

La condivisione pubblica dei dati coinvolge i principal speciali allUsers e allAuthenticatedUsers. Se devi condividere dati pubblicamente durante l'utilizzo della condivisione con limitazioni del dominio, devi aggiungere un'eccezione per questi principal. L'aggiunta di eccezioni è possibile solo se utilizzi criteri dell'organizzazione personalizzati per implementare la condivisione limitata per i domini.

Per aggiungere un'eccezione per allUsers e allAuthenticatedUsers, utilizza la funzione CEL memberSubjectMatches nell'espressione di condizione del vincolo.

Ad esempio, la seguente espressione di condizione limita le concessioni di ruoli ai membri della tua organizzazione, allUsers e allAuthenticatedUsers:

name: organizations/ORG_ID/customConstraints/custom.allowInternalAndSpecialIdentitiesOnly
methodTypes:
  - CREATE
  - UPDATE
condition:
  "resource.bindings.all(
    binding,
    binding.members.all(member,
      (
        MemberInPrincipalSet(member, ['//cloudresourcemanager.googleapis.com/organizations/ORG_ID'])
        ||
        MemberSubjectMatches(member, ['allUsers', 'allAuthenticatedUsers'])
      )
    )
  )"
actionType: ALLOW
displayName: Only allow organization members, allusers, and allAuthenticatedUsers to be granted roles

Forzare l'accesso all'account

Se devi forzare l'accesso all'account per un progetto in violazione delle limitazioni del dominio:

  1. Rimuovi il criterio dell'organizzazione contenente il vincolo di limitazione del dominio.

  2. Concedi all'account l'accesso al progetto.

  3. Implementa di nuovo il criterio dell'organizzazione con il vincolo di restrizione dei domini.

In alternativa, puoi concedere l'accesso a un gruppo Google che contiene gli account di servizio pertinenti:

  1. Crea un gruppo Google all'interno del dominio consentito.

  2. Utilizza il pannello di amministratore di Google Workspace per disattivare la limitazione del dominio per quel gruppo.

  3. Aggiungi il account di servizio al gruppo.

  4. Concedi l'accesso al gruppo Google nella policy di autorizzazione.