Configurare l'API Devices

Questa pagina spiega come configurare l'API Cloud Identity Devices. Puoi utilizzare l'API Devices per eseguire il provisioning delle risorse a livello di programmazione, ad esempio per gestire i Gruppi Google, per conto di un amministratore.

Abilitare l'API e configurare le credenziali

  1. Accedi al tuo Google Cloud account. Se non conosci Google Cloud, crea un account per valutare le prestazioni dei nostri prodotti in scenari reali. I nuovi clienti ricevono anche 300 $di crediti senza costi per l'esecuzione, il test e il deployment dei workload.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. Enable the Cloud Identity API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  6. Verify that billing is enabled for your Google Cloud project.

  7. Enable the Cloud Identity API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

Configurare l'accesso all'API utilizzando un account di servizio con delega a livello di dominio

Questa sezione descrive come creare e utilizzare un account di servizio per accedere alle risorse di Google Workspace. L'autenticazione diretta all'API Devices utilizzando un account di servizio non è supportata, quindi devi utilizzare questo metodo.

Creare un account di servizio e configurarlo per la delega a livello di dominio

Per creare un account di servizio e scaricare la chiave dell'account di servizio:

  1. Per creare un account di servizio, procedi nel seguente modo:

    1. Nellaconsole, vai alla pagina Service account IAM: Google Cloud

      Vai a Service account

    2. Fai clic su Crea account di servizio.

    3. In Dettagli account di servizio, digita un nome, un ID e una descrizione per l' account di servizio, quindi fai clic su Crea e continua.

    4. (Facoltativo) In Concedi a questo account di servizio l'accesso al progetto, seleziona i ruoli IAM da concedere all'account di servizio.

    5. Fai clic su Continua.

    6. (Facoltativo) In Concedi agli utenti l'accesso a questo account di servizio, aggiungi gli utenti o i gruppi autorizzati a utilizzare e gestire l'account di servizio.

    7. Fai clic su Fine.

  2. Per consentire all'account di servizio di accedere all'API Devices utilizzando la delega a livello di dominio, segui le istruzioni riportate in Configurare la delega a livello di dominio per l'account di servizio.

  3. Per creare e scaricare una chiave dell'account di servizio:

    1. Fai clic sull'indirizzo email del account di servizio che hai creato.
    2. Fai clic sulla scheda Chiavi.
    3. Nell'elenco a discesa Aggiungi chiave, seleziona Crea nuova chiave.
    4. Fai clic su Crea.

      Viene generato e scaricato sulla macchina un file di credenziali in formato JSON contenente una nuova coppia di chiavi pubbliche e private. Il file contiene l'unica copia delle chiavi. Sei responsabile della sua archiviazione in modo sicuro. Se perdi la coppia di chiavi, devi generarne una nuova.

Esaminare le voci di log

Quando esamini le voci di log, tieni presente che i log di controllo mostreranno che tutte le azioni account di servizio sono state avviate dall'utente. Questo perché la delega a livello di dominio consente al account di servizio di simulare l'identità di un utente amministratore.

Inizializzare le credenziali

Quando inizializzi la credenziale nel codice, specifica l'indirizzo email su cui agisce il account di servizio chiamando with_subject() sulla credenziale. Ad esempio:

Python

credentials = service_account.Credentials.from_service_account_file(
  'SERVICE_ACCOUNT_CREDENTIAL_FILE',
  scopes=SCOPES).with_subject(USER
)

Sostituisci quanto segue:

  • SERVICE_ACCOUNT_CREDENTIAL_FILE: il file della chiave del account di servizio che hai creato in precedenza in questo documento
  • USER: l'utente di cui il account di servizio simula l'identità

Creare un'istanza di un client

L'esempio seguente mostra come creare un'istanza di un client utilizzando le credenziali del account di servizio.

Python

from google.oauth2 import service_account
import googleapiclient.discovery

SCOPES = ['https://www.googleapis.com/auth/cloud-identity.devices']

def create_service():
  credentials = service_account.Credentials.from_service_account_file(
    'SERVICE_ACCOUNT_CREDENTIAL_FILE',
    scopes=SCOPES
  )

  delegated_credentials = credentials.with_subject('USER')

  service_name = 'cloudidentity'
  api_version = 'v1'
  service = googleapiclient.discovery.build(
    service_name,
    api_version,
    credentials=delegated_credentials)

  return service

Sostituisci quanto segue:

  • SERVICE_ACCOUNT_CREDENTIAL_FILE: il file della chiave del account di servizio che hai creato in precedenza in questo documento
  • USER: l'utente di cui il account di servizio simula l'identità

Ora puoi iniziare a effettuare chiamate all'API Devices.

Per eseguire l'autenticazione come utente finale, sostituisci l'oggetto credential dal account di servizio con la credential che puoi ottenere in Ottenere i token OAuth 2.0.

Installare la libreria client Python

Per installare la libreria client Python, esegui questo comando:

  pip install --upgrade google-api-python-client google-auth \
    google-auth-oauthlib google-auth-httplib2

Per ulteriori informazioni sulla configurazione dell'ambiente di sviluppo Python, consulta la Guida alla configurazione dell'ambiente di sviluppo Python.