O Apigee hybrid fornece validação que garante que a localização das chaves das suas contas de serviço está correta e que as contas têm as autorizações adequadas no seu projeto do GCP. Esta validação está ativada por predefinição.
Esta secção descreve como ativar ou desativar a validação da conta de serviço. Além disso, este passo garante que tem as APIs adequadas ativadas para o seu projeto da GCP, para que a validação funcione.
Ative a validação da autorização da conta de serviço
Para ativar a validação de autorizações:
- Certifique-se de que a
API Cloud Resource Manager está ativada para o seu projeto do GCP:
- Abra a Google Cloud Console e inicie sessão com a conta que criou no Passo 1: crie uma conta do Google Cloud.
- Selecione o projeto que criou no passo 2: crie um projeto do Google Cloud.
- Selecione APIs e serviços > Biblioteca.
- Pesquise "Cloud Resource Manager".
- Localize o serviço API Cloud Resource Manager e clique nele.
- Se não estiver ativada, clique em Ativar.
Também pode ativar a API através do gcloud:
gcloud services enable cloudresourcemanager.googleapis.com --project GCP_project_ID
- No ficheiro de substituições, adicione a propriedade
validateServiceAccounts
e defina-a comotrue
. Por exemplo:... # Enables strict validation of service account permissions. validateServiceAccounts: true ...
Quando a validação está ativada, sempre que o apigeectl aplica os componentes de tempo de execução híbrido do Apigee ao seu cluster, valida as chaves da conta de serviço incluídas no ficheiro de substituições.
Resolução de problemas de erros de validação
Se a validação falhar, a implementação em tempo de execução é interrompida e o comando apigeectl
é terminado.
Para resolver problemas de falhas de contas de serviço, é útil saber que as verificações de validação
verificam as autorizações nesta ordem:
- Autorização no ID do projeto.
- (Apenas para UDCA e sincronizador) Se a verificação de autorização no projeto falhar, a validação
continua a verificar a autorização em relação à política de IAM do
ambiente do Apigee. Estas SAs têm âmbito de ambiente e os ambientes suportam autorizações mais detalhadas.
Para atualizar a política de IAM de um ambiente específico, aceda à IU híbrida. Aceda a: Administração > Ambientes > Acesso
Por exemplo, a seguinte é uma mensagem de erro para uma verificação de autorização falhada:
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 este erro, adicione as funções necessárias à conta de serviço. Para ver informações sobre como criar e modificar contas de serviço, consulte o artigo Crie as contas de serviço. Para verificar as autorizações necessárias para cada componente híbrido do Apigee, consulte o artigo Contas de serviço e funções usadas por componentes híbridos.
Desative a validação de autorizações
Para desativar a validação da autorização da conta de serviço, defina a propriedade validateServiceAccounts
no ficheiro de substituições como false
, conforme mostra o exemplo seguinte:
... # Enables strict validation of service account permissions. validateServiceAccounts: false ...