Questa pagina descrive come gli amministratori di Google Cloud possono testare le restrizioni dell'organizzazione senza dover configurare un proxy in uscita.
Per creare e testare l'intestazione delle limitazioni dell'organizzazione:
Per ottenere l'ID organizzazione Google Cloud dell'organizzazione, utilizza il comando
gcloud organizations list
:gcloud organizations list
Di seguito è riportato l'output di esempio:
DISPLAY_NAME: Organization A ID: 123456789 DIRECTORY_CUSTOMER_ID: a1b2c3d4
Dopo aver ottenuto l'ID organizzazione, componi la rappresentazione JSON per l'intestazione nel seguente formato:
{ "resources": ["organizations/123456789"], "options": "strict" }
Codifica il valore per l'intestazione della richiesta seguendo le specifiche della Sezione 5 del documento RFC 4648.
Ad esempio, se la rappresentazione JSON per il valore dell'intestazione viene archiviata
authorized_orgs.json
, la seguente è la codifica tramite basenc:$ OR_HEADER=`cat authorized_orgs.json | basenc --base64url -w0` $ echo $OR_HEADER ewogInJlc291cmNlcyI6IFsib3JnYW5pemF0aW9ucy8xMjM0NTY3ODkiXQogIm9wdGlvbnMiOiAic3RyaWN0Igp9Cgo=
Per verificare se la configurazione dell'intestazione consente l'accesso a una risorsa all'interno di un'organizzazione Google Cloud autorizzata, crea una richiesta curl a una risorsa all'interno di un'organizzazione Google Cloud autorizzata. Ecco un esempio di richiesta curl:
# Get auth token $ TOKEN=$(gcloud auth print-access-token) # Make a request that includes the organization restriction header; this call makes a request to the logging API for a project within the same organization listed in the header $ curl -H "X-Goog-Allowed-Resources: ${OR_HEADER}" -X POST -d '{"projectIds": ["my-project-123"]}' -H 'Content-Type: application/json' -H "Authorization: Bearer ${TOKEN}" "https://logging.googleapis.com/v2/entries:list" # A successful request returns log entries in this project
Per verificare se la configurazione dell'intestazione nega l'accesso a una risorsa esterna all'organizzazione Google Cloud autorizzata, crea una richiesta curl a una risorsa esterna a un'organizzazione Google Cloud autorizzata. Ecco un esempio di richiesta curl:
# Get auth token $ TOKEN=$(gcloud auth print-access-token) # Make a request that includes the organization restriction header; this call makes a request to the logging API for a project not within the same organization listed in the header $ curl -H "X-Goog-Allowed-Resources: ${OR_HEADER}" -X POST -d '{"projectIds": ["other-project-123"]}' -H 'Content-Type: application/json' -H "Authorization: Bearer ${TOKEN}" "https://logging.googleapis.com/v2/entries:list" { "error": { "code": 403, "message": "Access denied by organization restriction. Contact your administrator for additional information.", "status": "PERMISSION_DENIED", "details": [ { "@type": "type.googleapis.com/google.rpc.ErrorInfo", "reason": "ORG_RESTRICTION_VIOLATION", "domain": "googleapis.com", "metadata": { "service": "logging.googleapis.com", "consumer": "other-project-123" } } ] } }
Un messaggio di errore di accesso negato indica che la richiesta alla risorsa è stata rifiutata.
Passaggi successivi
- Scopri di più sull'utilizzo delle limitazioni dell'organizzazione.
- Scopri i servizi supportati dalle limitazioni dell'organizzazione.