Autenticar na Vertex AI para Pesquisa para varejo

Neste documento, descrevemos como se autenticar na Vertex AI para Pesquisa para Retail de maneira programática. Como A autenticação na Vertex AI para Pesquisa para Retail depende da interface usada para acessar a API e o ambiente em que o código é executado.

Para mais informações sobre a autenticação do Google Cloud, consulte a visão geral da autenticação.

Acesso à API

A Vertex AI para Pesquisa para Retail oferece suporte ao acesso programático. Você pode acessar a API das seguintes maneiras:

Bibliotecas de cliente

As bibliotecas de cliente da Vertex AI para Pesquisa para varejo oferecem suporte a linguagens de alto nível para autenticação na Vertex AI para Pesquisa para Retail programaticamente. Para autenticar as chamadas feitas às APIs do Google Cloud, as bibliotecas de cliente dão suporte ao Application Default Credentials (ADC). As bibliotecas procuram credenciais em um conjunto de locais definidos e as usam para autenticar as solicitações feitas à API. Com o ADC, é possível disponibilizar credenciais para seu aplicativo em uma variedade de ambientes, como desenvolvimento ou produção local, sem precisar modificar o código do aplicativo.

REST

É possível autenticar no a API Vertex AI para Pesquisa para Retail usando as credenciais da CLI gcloud ou Application Default Credentials. Para mais informações sobre a autenticação para solicitações REST, consulte Autenticar-se usando REST. Para informações sobre os tipos de credenciais, consulte credenciais da CLI da gcloud e credenciais do ADC.

Chaves de API

As chaves de API fornecem uma maneira de associar uma chamada de API a um projeto, que é usado para fins de faturamento e cota, sem determinar a identidade do autor da chamada. As chaves de API só podem ser usadas com métodos de API compatíveis com chaves de API.

A Vertex AI para Pesquisa para Retail oferece suporte a chaves de API para os seguintes métodos de API:

  • userEvents.collect

Para mais informações sobre como usar chaves de API com a Vertex AI para Pesquisa para Retail, consulte Crie uma chave de API. Para informações gerais sobre o uso de chaves de API, consulte Autenticar usando chaves de API.

Credenciais do usuário e ADC para a Vertex AI para Pesquisa para Retail

Uma maneira de fornecer credenciais ao ADC é usar a CLI gcloud para inserir suas credenciais de usuário em um arquivo de credenciais. Esse arquivo é colocado no sistema de arquivos local e encontrado pelo ADC. Em seguida, o ADC usa as credenciais de usuário fornecidas para autenticar as solicitações. Esse método é muito usado para desenvolvimento local.

Se você usar esse método, poderá encontrar um erro de autenticação ao tentar autenticar na Vertex AI Search para varejo. Para mais informações sobre esse erro e como resolvê-lo, consulte Credenciais do usuário que não funcionam.

Configurar a autenticação para a Vertex AI para Pesquisa para varejo

A configuração da autenticação depende do ambiente em que o código está sendo executado.

As opções a seguir para configuração da autenticação são as mais usadas. Para mais opções e informações sobre autenticação, consulte Métodos de autenticação.

Antes de concluir estas instruções, você deve concluir a configuração básica do Vertex AI para Pesquisa para Retail, conforme descrito em Antes de começar.

Para um ambiente de desenvolvimento local

É possível configurar credenciais para um ambiente de desenvolvimento local das seguintes maneiras:

Bibliotecas de cliente ou ferramentas de terceiros

Configure o Application Default Credentials (ADC) no ambiente local:

  1. Install the Google Cloud CLI, then initialize it by running the following command:

    gcloud init
  2. If you're using a local shell, then create local authentication credentials for your user account:

    gcloud auth application-default login

    You don't need to do this if you're using Cloud Shell.

    Uma tela de login será exibida. Após o login, suas credenciais são armazenadas no arquivo de credenciais local usado pelo ADC.

Para mais informações sobre como trabalhar com o ADC em um ambiente local, consulte Ambiente de desenvolvimento local.

Solicitações REST usando a linha de comando

Ao fazer uma solicitação REST usando a linha de comando, use as credenciais da CLI gcloud incluindo gcloud auth print-access-token como parte do comando que envia a solicitação.

No exemplo a seguir, listamos as contas de serviço do projeto especificado. É possível usar o mesmo padrão em qualquer solicitação REST.

Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:

  • PROJECT_ID pelo ID do projeto no Google Cloud.

Para enviar a solicitação, expanda uma destas opções:

 

Para mais informações sobre como autenticar usando REST e gRPC, consulte Autenticar para usar REST. Para mais informações sobre a diferença entre as credenciais locais da ADC e as credenciais da CLI da gcloud, consulte Credenciais da CLI da gcloud e credenciais do ADC.

No Google Cloud

Para autenticar uma carga de trabalho em execução no Google Cloud, use as credenciais da conta de serviço anexada ao recurso de computação em que seu código está sendo executado, como uma instância de máquina virtual (VM) do Compute Engine. Essa abordagem é o método de autenticação preferencial para códigos em execução em um recurso de computação do Google Cloud.

Para a maioria dos serviços, você precisa anexar a conta de serviço ao criar o recurso que executará o código. Não será possível adicionar ou substituir a conta de serviço mais tarde. O Compute Engine é uma exceção. Ele permite anexar uma conta de serviço a uma instância de VM a qualquer momento.

Use a CLI gcloud para criar uma conta de serviço e anexá-la ao recurso:

  1. Install the Google Cloud CLI, then initialize it by running the following command:

    gcloud init
  2. Set up authentication:

    1. Create the service account:

      gcloud iam service-accounts create SERVICE_ACCOUNT_NAME

      Replace SERVICE_ACCOUNT_NAME with a name for the service account.

    2. To provide access to your project and your resources, grant a role to the service account:

      gcloud projects add-iam-policy-binding PROJECT_ID --member="serviceAccount:SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com" --role=ROLE

      Replace the following:

      • SERVICE_ACCOUNT_NAME: the name of the service account
      • PROJECT_ID: the project ID where you created the service account
      • ROLE: the role to grant
    3. To grant another role to the service account, run the command as you did in the previous step.
    4. Grant the required role to the principal that will attach the service account to other resources.

      gcloud iam service-accounts add-iam-policy-binding SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com --member="user:USER_EMAIL" --role=roles/iam.serviceAccountUser

      Replace the following:

      • SERVICE_ACCOUNT_NAME: the name of the service account
      • PROJECT_ID: the project ID where you created the service account
      • USER_EMAIL: the email address for a Google Account
  3. Crie o recurso que executará o código e anexe a conta de serviço a ele. Por exemplo, se você usar o Compute Engine:

    Create a Compute Engine instance. Configure the instance as follows:
    • Substitua INSTANCE_NAME pelo nome de instância de sua preferência.
    • Defina a sinalização --zone com a zona onde será criada a instância.
    • Defina a sinalização --service-account como o endereço de e-mail da conta de serviço que você criou.
    • gcloud compute instances create INSTANCE_NAME --zone=ZONE --service-account=SERVICE_ACCOUNT_EMAIL

Para mais informações sobre a autenticação nas APIs do Google, consulte Métodos de autenticação.

No local ou em outro provedor de nuvem

O método preferencial para configurar a autenticação de fora do Google Cloud é usar a federação de identidade da carga de trabalho. Para mais informações, consulte No local ou em outro provedor de nuvem na documentação de autenticação.

Controle de acesso da Vertex AI para Pesquisa para Retail

Depois de autenticar o Vertex AI para Pesquisa para varejo, você precisa ter autorização para acessar os recursos do Google Cloud. A Vertex AI Search para varejo usa o Identity and Access Management (IAM) para autorização.

Para mais informações sobre os papéis da Vertex AI para Pesquisa para Retail, consulte Identity and Access Management (IAM). Para mais informações sobre o IAM e a autorização, consulte Visão geral do IAM.

A seguir