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 in modo programmatico, ad esempio per gestire Google Gruppi, per conto di un amministratore.

Abilitare l'API e configurare le credenziali

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Enable the Cloud Identity API.

    Enable the API

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

    Go to project selector

  6. Make sure that billing is enabled for your Google Cloud project.

  7. Enable the Cloud Identity API.

    Enable the API

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

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

    Crea un account di servizio e configuralo per la delega a livello di dominio

    Per creare un account di servizio e scaricare la account di servizio chiave, procedi nel seguente modo:

    1. Per creare un service account:

      1. Nella console Google Cloud , vai alla pagina degli account di servizio IAM:

        Vai a Service account

      2. Fai clic su Crea service account.

      3. In Dettagli service account, digita un nome, un ID e una descrizione per il 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 al account di servizio.

      5. Fai clic su Continua.

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

      7. Fai clic su Fine.

    2. Per consentire al 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 il service account.

    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 sul tuo computer un file delle credenziali in formato JSON contenente una nuova coppia di chiavi pubblica e privata. Il file contiene l'unica copia delle chiavi. Sei responsabile della sua archiviazione in sicurezza. 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 le azioni dell'account di servizio come se fossero state avviate dall'utente. Questo perché la delega a livello di dominio consente all'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 rappresentato dal account di servizio

    Creazione di 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 rappresentato dal account di servizio

    Ora puoi iniziare a effettuare chiamate all'API Devices.

    Per eseguire l'autenticazione come utente finale, sostituisci l'oggetto credential dell'account di servizio con l'oggetto credential che puoi ottenere in Ottenere 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.