Concessione e revoca dell'accesso all'API

Controllare chi ha accesso a un'API è parte integrante dello sviluppo. Per Ad esempio, quando testi l'API, potresti voler automatizzare il nuovo deployment Configurazioni di Cloud Endpoints utilizzando un account di servizio con l'autorizzazione a farlo. Per impostazione predefinita, solo il proprietario del progetto può gestire l'accesso a un tramite Google Cloud CLI o tramite l'API Compute Engine. Questa pagina mostra come concedere e revocare l'accesso all'API utilizzando il metodo console Google Cloud o Google Cloud CLI.

Endpoint utilizza Identity and Access Management ruoli per concedere e revocare l'accesso a livello di API. Puoi concedere e revocare l'accesso a un utente, un account di servizio o Gruppo Google.

Google Gruppi consente di concedere o revocare l'accesso a una raccolta utenti. Puoi concedere o revocare l'accesso per un intero gruppo contemporaneamente, anziché la concessione o la revoca dell'accesso uno alla volta per singoli utenti o servizi . Puoi anche aggiungere e rimuovere membri da una gruppo Google invece di concedere o revocare il ruolo IAM per ogni membro.

Concessione dell'accesso

Console Google Cloud

  1. Nella console Google Cloud, vai alla sezione Endpoint > Servizi per il tuo progetto.

    Vai alla pagina dei servizi Endpoints

  2. Se disponi di più API, fai clic sul nome.
  3. Se il riquadro laterale Autorizzazioni non è aperto, fai clic su Autorizzazioni.
  4. Nella casella Aggiungi membri, inserisci l'indirizzo email di un utente, del servizio account o un gruppo Google.
  5. Nel menu a discesa Seleziona un ruolo, fai clic su Gestione servizio e seleziona uno dei seguenti ruoli:
      .
    • Consumatore di servizi: questo ruolo contiene la classe le autorizzazioni per un non membro del progetto per visualizzare e abilitare l'API nei propri progetto. Se hai creato un portal per il tuo API, questo ruolo consente agli utenti API di accedere al portale.
    • Controller di servizi: questo ruolo contiene i autorizzazioni per effettuare chiamate ai metodi check e report in Infrastruttura di servizi durante il runtime.
    • Editor configurazione servizio: questo ruolo contiene le autorizzazioni minime. richiesto da Service Management per eseguire il deployment configurazione a un servizio esistente.
    • Amministratore Service Management: questo ruolo contiene i campi autorizzazioni in Service Config Editor, Service Consumer e Service I ruoli Controller, più le autorizzazioni necessarie per concedere l'accesso questa API utilizzando gcloud o i metodi programmatici descritto in Concessione, modifica e revoca dell'accesso alle risorse.

    Vedi il controllo dell'accesso all'API Service Management per informazioni su questo ruolo. Anche se la console Google Cloud ti consente di selezionare altri ruoli, non sono utili per gestire l'API.

  6. Per aggiungere il membro al ruolo IAM specificato, fai clic su Aggiungi.
  7. Ripeti l'aggiunta dei membri e seleziona il ruolo in base alle necessità.
  8. I ruoli Service Management non consentono agli utenti di accedere agli Endpoint > la pagina Servizi nella console Google Cloud. Se vuoi che gli utenti siano possono accedere agli Endpoint > Servizi, devi concedere al cliente Visualizzatore progetto o un ruolo superiore nel progetto. Consulta: Concedere, modificare e la revoca dell'accesso alle risorse per maggiori dettagli.

gcloud

  1. Apri Cloud Shell oppure, se hai installato Google Cloud CLI, apri un finestra del terminale.
  2. Inserisci il comando gcloud applicabile:
    • Se stai concedendo l'accesso a un utente, esegui questo comando:
      gcloud endpoints services add-iam-policy-binding [SERVICE-NAME] \
        --member='user:[EMAIL-ADDRESS]' \
        --role='[ROLE]'

      Per il ruolo, specifica uno dei seguenti ruoli IAM:

      • roles/servicemanagement.configEditor: questo ruolo contiene le autorizzazioni minime richieste da Service Management eseguire il deployment di una configurazione di Endpoints completamente gestito di Google Cloud.
      • roles/servicemanagement.admin: questo ruolo contiene i campi autorizzazioni in roles/servicemanagement.configEditor, roles/servicemanagement.serviceConsumer e roles/servicemanagement.serviceController, più il autorizzazioni necessarie per concedere l'accesso a questa API mediante gcloud o i metodi programmatici descritti in Concedi, la modifica e la revoca dell'accesso alle risorse.

      Ad esempio:

      gcloud endpoints services add-iam-policy-binding example-service-name \
        --member='user:example-user@gmail.com' \
        --role='roles/servicemanagement.admin'

    • Se stai concedendo l'accesso a un account di servizio, esegui questo comando:
      gcloud endpoints services add-iam-policy-binding [SERVICE-NAME] \
        --member='serviceAccount:[EMAIL-ADDRESS]' \
        --role='[ROLE]'

      Ad esempio:

      gcloud endpoints services add-iam-policy-binding example-service-name \
        --member='serviceAccount:example-service-account@example-project.iam.gserviceaccount.com' \
        --role='roles/servicemanagement.configEditor'

    • Se stai concedendo l'accesso a un gruppo Google, esegui questo comando:
      gcloud endpoints services add-iam-policy-binding [SERVICE-NAME] \
        --member='group:[GROUP-NAME]@googlegroups.com' \
        --role='[ROLE]'

      Ad esempio:

      gcloud endpoints services add-iam-policy-binding example-service-name \
        --member='group:example-group@googlegroups.com' \
        --role='roles/servicemanagement.configEditor'

  3. I ruoli Service Management non consentono agli utenti di accedere Endpoint > la pagina Servizi nella console Google Cloud. Se vuoi che gli utenti possano accedere agli Endpoint > Servizi, deve concedere Visualizzatore progetto o un ruolo superiore nel progetto. Consulta: Concedere, modificare e la revoca dell'accesso alle risorse per maggiori dettagli.

Revoca dell'accesso

Per revocare l'accesso all'API, rimuovi il ruolo IAM dal membro che in precedenza ha ricoperto il ruolo.

Console Google Cloud

  1. Nella console Google Cloud, vai a Endpoint > Pagina Servizi per il tuo progetto.

    Vai alla pagina dei servizi Endpoints

  2. Se disponi di più API, fai clic sul nome.
  3. Se il riquadro laterale Autorizzazioni non è aperto, fai clic su Autorizzazioni.
  4. Individua il membro per cui vuoi revocare l'accesso. Puoi fare clic sulla scheda Ruolo applicabile per visualizzare un elenco dei membri; in alternativa, puoi inserire un nome o un ruolo nella casella Cerca membri.
  5. Fai clic su Elimina .
  6. Se vuoi anche revocare l'accesso di un utente a Google Cloud consulta la sezione Concessione, la modifica e la revoca dell'accesso alle risorse per maggiori dettagli.

gcloud

  1. Apri Cloud Shell oppure, se hai installato gcloud CLI, apri una finestra del terminale.
  2. Inserisci il comando gcloud applicabile:
    • Se stai revocando l'accesso per un utente, esegui questo comando:
      gcloud endpoints services remove-iam-policy-binding [SERVICE-NAME] \
        --member='user:[EMAIL-ADDRESS]' \
        --role='[ROLE-NAME]'

      Ad esempio:

      gcloud endpoints services remove-iam-policy-binding example-service-name \
        --member='user:example-user@gmail.com' \
        --role='roles/editor'
    • Se stai revocando l'accesso per un account di servizio, esegui questo comando:
      gcloud endpoints services remove-iam-policy-binding [SERVICE-NAME] \
        --member='serviceAccount:[EMAIL-ADDRESS]' \
        --role='[ROLE-NAME]'

      Ad esempio:

      gcloud endpoints services remove-iam-policy-binding example-service-name \
        --member='serviceAccount:example-service-account@example-project.iam.gserviceaccount.com' \
        --role='roles/servicemanagement.configEditor'
    • Se intendi revocare l'accesso per un gruppo Google, esegui questo comando:
      gcloud endpoints services remove-iam-policy-binding [SERVICE-NAME] \
            --member='group:[GROUP-NAME]@googlegroups.com' \
            --role='[ROLE-NAME]'

      Ad esempio:

      gcloud endpoints services remove-iam-policy-binding example-service-name \
            --member='group:example-group@googlegroups.com' \
            --role='roles/viewer'
  3. Se vuoi anche revocare l'accesso di un utente a Google Cloud consulta la sezione Concessione, la modifica e la revoca dell'accesso alle risorse per maggiori dettagli.

Passaggi successivi

Scopri di più su: