Autenticação na API Video Intelligence

Esta página descreve o que é uma conta de serviço, como criar uma para autenticar pedidos à Video Intelligence API e como usar a sua conta de serviço para definir as credenciais predefinidas da aplicação.

Para permitir que o código da sua aplicação use a Video Intelligence API, tem de configurar as credenciais adequadas para que a sua aplicação autentique a respetiva identidade no serviço e obtenha autorização para realizar tarefas. (Estes mecanismos relacionados com credenciais são conhecidos como esquemas de autorização.)

Google Cloud A autenticação e a autorização da API (normalmente, agrupadas como "autenticação") são feitas, normalmente, através de uma conta de serviço. Uma conta de serviço permite que o seu código envie credenciais da aplicação diretamente para a Video Intelligence API. Uma conta de serviço, como uma conta de utilizador, é representada por um endereço de email. Ao contrário de uma conta de utilizador, uma conta de serviço está associada apenas a uma aplicação.

Ativar a API

Antes de poder autenticar, tem de ativar a API Video Intelligence.

  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. Verify that billing is enabled for your Google Cloud project.

  4. Enable the Cloud Video Intelligence API.

    Enable the API

  5. Create a service account:

    1. In the Google Cloud console, go to the Create service account page.

      Go to Create service account
    2. Select your project.
    3. In the Service account name field, enter a name. The Google Cloud console fills in the Service account ID field based on this name.

      In the Service account description field, enter a description. For example, Service account for quickstart.

    4. Click Create and continue.
    5. Click Done to finish creating the service account.

      Do not close your browser window. You will use it in the next step.

  6. Create a service account key:

    1. In the Google Cloud console, click the email address for the service account that you created.
    2. Click Keys.
    3. Click Add key, and then click Create new key.
    4. Click Create. A JSON key file is downloaded to your computer.
    5. Click Close.
  7. Set the environment variable GOOGLE_APPLICATION_CREDENTIALS to the path of the JSON file that contains your credentials. This variable applies only to your current shell session, so if you open a new session, set the variable again.

  8. Install the Google Cloud CLI.

  9. Se estiver a usar um fornecedor de identidade (IdP) externo, primeiro, tem de iniciar sessão na CLI gcloud com a sua identidade federada.

  10. Para inicializar a CLI gcloud, execute o seguinte comando:

    gcloud init
  11. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

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

  13. Enable the Cloud Video Intelligence API.

    Enable the API

  14. Create a service account:

    1. In the Google Cloud console, go to the Create service account page.

      Go to Create service account
    2. Select your project.
    3. In the Service account name field, enter a name. The Google Cloud console fills in the Service account ID field based on this name.

      In the Service account description field, enter a description. For example, Service account for quickstart.

    4. Click Create and continue.
    5. Click Done to finish creating the service account.

      Do not close your browser window. You will use it in the next step.

  15. Create a service account key:

    1. In the Google Cloud console, click the email address for the service account that you created.
    2. Click Keys.
    3. Click Add key, and then click Create new key.
    4. Click Create. A JSON key file is downloaded to your computer.
    5. Click Close.
  16. Set the environment variable GOOGLE_APPLICATION_CREDENTIALS to the path of the JSON file that contains your credentials. This variable applies only to your current shell session, so if you open a new session, set the variable again.

  17. Install the Google Cloud CLI.

  18. Se estiver a usar um fornecedor de identidade (IdP) externo, primeiro, tem de iniciar sessão na CLI gcloud com a sua identidade federada.

  19. Para inicializar a CLI gcloud, execute o seguinte comando:

    gcloud init
  20. Criar uma conta de serviço na Google Cloud consola

    Para criar uma conta de serviço através da Google Cloud consola, faça o seguinte:

    1. Na página Credenciais da Google Cloud consola, selecione Criar credenciais > Chave de conta de serviço.

    2. Em seguida, em Conta de serviço, selecione Nova conta de serviço.

    3. Na caixa Nome da conta de serviço, introduza um nome para a conta de serviço. Este nome é usado como o nome predefinido do ID da conta de serviço (à esquerda do "@" no endereço do ID da conta de serviço gerado), mas pode alterar este nome do ID da conta de serviço. Estes nomes são arbitrários. O importante é que se lembre deles.

    4. Em Tipo de chave, selecione JSON para a maioria dos novos projetos.

    5. Clique em Criar.

    Em seguida, a Google Cloud consola gera uma chave JSON (como um .json ficheiro de texto), pede-lhe que transfira o ficheiro para o computador e apresenta uma caixa de diálogo Conta de serviço criada.

    A chave JSON gerada é semelhante à seguinte chave JSON de exemplo:

    {
      "type": "service_account",
      "project_id": "PROJECT_ID",
      "private_key_id": "SOME_NUMBER",
      "private_key": "-----BEGIN PRIVATE KEY-----\nPRIVATE_KEY\n-----END PRIVATE KEY-----\n",
      "client_email": "SERVICE_ACCOUNT_EMAIL",
      "client_id": "...",
      "auth_uri": "https://accounts.google.com/o/oauth2/auth",
      "token_uri": "https://accounts.google.com/o/oauth2/token",
      "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
      "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/SERVICE_ACCOUNT_EMAIL"
    }
    

    Armazene este ficheiro JSON de forma segura, uma vez que contém a sua chave privada (e este ficheiro é a única cópia dessa chave). Tem de consultar este ficheiro de chave da conta de serviço no seu código quando enviar pedidos de anotação para a API Video Intelligence.

    Autenticação com as Credenciais padrão da aplicação

    A forma mais simples de as aplicações se autenticarem na API Video Intelligence é através das Credenciais padrão da aplicação (ADC). Os serviços que usam o ADC procuram primeiro credenciais numa variável de ambiente.GOOGLE_APPLICATION_CREDENTIALS A menos que exija especificamente que o ADC use outras credenciais (por exemplo, credenciais do utilizador), deve definir esta variável de ambiente para apontar para o ficheiro de chave da conta de serviço (o ficheiro .json transferido quando criou uma chave da conta de serviço).

    $ export GOOGLE_APPLICATION_CREDENTIALS=PATH_TO_SERVICE_ACCOUNT_FILE