Validação da conta de serviço

A Apigee híbrida fornece validação que garante que o local das chaves das contas de serviço estejam corretas e que as contas tenham as permissões apropriadas no projeto do Google Cloud. Essa validação é ativada por padrão.

Esta seção descreve como ativar ou desativar a validação da conta de serviço. Além disso, esta etapa garante que as APIs apropriadas estejam ativadas no projeto do Google Cloud para que a validação funcione.

Ativar a validação de permissão da conta de serviço

Para ativar a validação de permissões:

  1. Verifique se a API Cloud Resource Manager está ativada no projeto do Google Cloud:
    1. Abra o Console do Google Cloud e faça login com a conta que você criou na Etapa 1: criar uma conta do Google Cloud.
    2. Selecione o projeto que você criou na Etapa 2: criar um projeto do Google Cloud.
    3. Selecione APIs e serviços > Biblioteca.
    4. Pesquise "Cloud Resource Manager".
    5. Localize o serviço da API Cloud Resource Manager e clique nele.
    6. Se não estiver ativado, clique em Ativar.

    Você também pode ativar a API usando o gcloud:

    gcloud services enable cloudresourcemanager.googleapis.com --project GCP_PROJECT_ID
  2. No arquivo de modificações, adicione a propriedade validateServiceAccounts e defina-a como true. Exemplo:
    ...
    # Enables strict validation of service account permissions.
    validateServiceAccounts: true
    ...

Quando a validação está ativada, sempre que apigeectl aplica os componentes de ambiente de execução da Apigee híbrida ao seu cluster, ela valida as chaves da conta de serviço incluídas no arquivo de modificações.

Como solucionar erros de validação

Se a validação falhar, a implantação do ambiente de execução será interrompida e o apigeectl sairá. Para solucionar problemas de falha na conta de serviço, saiba que a validação verifica as permissões nesta ordem:

  1. Permissão para o código do projeto.
  2. (Somente para UDCA e Synchronizer) Se a verificação de permissão no projeto falhar, a validação continuará a verificar a permissão na política de IAM do ambiente da Apigee. Essas SAs têm escopo de ambiente e ambientes compatíveis com permissões mais refinadas.

    Para atualizar a política do IAM de um ambiente específico, acesse a IU híbrida. Acesse Administrador > Ambientes > Acesso

Por exemplo, esta é uma mensagem de erro para uma verificação de permissão com falha:

Invalid Metrics Service Account. Service Account
"apigee-metrics@hybrid-project.iam.gserviceaccount.com" is missing 1 or more required
permissions [monitoring.metricDescriptors.create monitoring.metricDescriptors.get monitoring.metricDescriptors.list
monitoring.monitoredResourceDescriptors.get monitoring.monitoredResourceDescriptors.list monitoring.timeSeries.create].
Visit Service accounts and roles used by
hybrid components for more details on setting up Apigee hybrid service account permissions.

Para resolver esse erro, adicione os papéis necessários à conta de serviço. Para informações sobre como criar e modificar contas de serviço, consulte Criar as contas de serviço. Para verificar as permissões necessárias para cada componente híbrido da Apigee, consulte Contas de serviço e papéis usados por componentes híbridos.

Desativar validação de permissão

Para desativar a validação de permissão da conta de serviço, defina a propriedade validationServiceAccounts no arquivo de modificações como false, conforme mostrado no exemplo a seguir:

...
# Enables strict validation of service account permissions.
validateServiceAccounts: false
...