Para permitir que o código do aplicativo use a API Video Intelligence, configure as credenciais adequadas para o aplicativo. Assim, será possível autenticar a identidade do aplicativo para o serviço e receber a autorização para executar tarefas. Esses mecanismos de credenciais são conhecidos como esquemas de autenticação.
A autenticação e a autorização da API Google Cloud (normalmente agrupadas como "auth") geralmente são feitas usando uma conta de serviço. Uma conta de serviço permite que seu código envie credenciais de aplicativo diretamente para a API Video Intelligence. Uma conta de serviço, como uma conta de usuário, é representada por um endereço de e-mail. Ao contrário de uma conta de usuário, uma conta de serviço é associada apenas a um aplicativo.
Ative a API
Antes de autenticar, você deve primeiro ativar a API Video Intelligence.
- 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.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Cloud Video Intelligence API.
-
Create a service account:
-
In the Google Cloud console, go to the Create service account page.
Go to Create service account - Select your project.
-
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
. - Click Create and continue.
-
Click Done to finish creating the service account.
Do not close your browser window. You will use it in the next step.
-
-
Create a service account key:
- In the Google Cloud console, click the email address for the service account that you created.
- Click Keys.
- Click Add key, and then click Create new key.
- Click Create. A JSON key file is downloaded to your computer.
- Click Close.
-
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. - Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Cloud Video Intelligence API.
-
Create a service account:
-
In the Google Cloud console, go to the Create service account page.
Go to Create service account - Select your project.
-
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
. - Click Create and continue.
-
Click Done to finish creating the service account.
Do not close your browser window. You will use it in the next step.
-
-
Create a service account key:
- In the Google Cloud console, click the email address for the service account that you created.
- Click Keys.
- Click Add key, and then click Create new key.
- Click Create. A JSON key file is downloaded to your computer.
- Click Close.
-
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. - Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
Como criar uma conta de serviço no console do Google Cloud
Para criar uma conta de serviço usando o console do Google Cloud, faça o seguinte:
Na página Credenciais do console do Google Cloud, selecione Criar credenciais > Chave de conta de serviço.
Em seguida, em Conta de serviço, selecione Nova conta de serviço.
No campo Nome da conta de serviço, insira um nome para a conta de serviço. Esse nome é usado como padrão para o ID da conta de serviço, localizado à esquerda de "@" no endereço gerado desse ID conta de serviço. Entretanto, é possível alterar o nome do ID da conta de serviço. Esses nomes são arbitrários. É importante apenas que você os memorize.
Em Tipo de chave, selecione JSON para a maioria dos novos projetos.
Clique em Criar.
O console do Google Cloud gera uma chave JSON (como um arquivo de texto .json
), solicita que você faça o download do arquivo no computador e
mostra uma caixa de diálogo Conta de serviço criada.
A chave JSON gerada é semelhante a esta amostra de chave:
{ "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 esse arquivo JSON em segurança, já que ele contém a chave privada e é a única cópia dessa chave. Você precisará consultar esse arquivo de chave da conta de serviço no seu código ao enviar solicitações de anotação para a API Video Intelligence.
Como autenticar com o Application Default Credentials
A maneira mais simples de autenticar os aplicativos na API Video Intelligence é usar o Application Default Credentials (ADC).
Nos serviços que usam o ADC, as credenciais são procuradas em primeiro lugar na variável de ambiente GOOGLE_APPLICATION_CREDENTIALS
. A menos que você precise especificamente do ADC para usar outras credenciais (por exemplo, credenciais de usuário), defina essa variável de ambiente para apontar para o arquivo de chave da conta de serviço (o arquivo .json
salvo quando você criou uma chave de conta de serviço).
$ export GOOGLE_APPLICATION_CREDENTIALS=PATH_TO_SERVICE_ACCOUNT_FILE