Autenticação para invocar funções do Cloud Run

Como desenvolvedor, você pode escrever funções do Cloud Run, que fornecem endpoints HTTP. Invoque as funções do Cloud Run da classe /GOOG/CL_CLOUDFUNC_INVOKER do SDK ABAP usando os endpoints HTTP.

O processo envolve chamar uma função do Cloud Run usando o nome e a localização dela para conseguir o endpoint HTTP da função. Esse endpoint é usado para invocar a função. A autenticação nas funções do Cloud Run exige um token de ID para invocar o endpoint HTTP.

As etapas de configuração de nível alto são as seguintes:

Ativar as APIs do Google Cloud

No console do Google Cloud, ative as seguintes APIs do Google Cloud:

Para informações sobre como ativar as APIs do Google Cloud, consulte Como ativar APIs.

Criar uma conta de serviço para receber detalhes da função do Cloud Run

  1. No console do Google Cloud, crie uma conta de serviço do IAM para conferir os detalhes da função do Cloud Run.

    Acesse as Contas de serviço

    Para mais informações sobre como criar uma conta de serviço, consulte Criar uma conta de serviço.

  2. Conceda os seguintes papéis à conta de serviço:

    Para mais instruções, consulte Conceder um único papel.

Criar outra conta de serviço para invocar funções do Cloud Run

  1. No console do Google Cloud, crie uma conta de serviço dedicada para invocar as funções do Cloud Run.

    Acesse as Contas de serviço

    Para mais informações sobre como criar uma conta de serviço, consulte Criar uma conta de serviço.

  2. Dependendo da geração das funções do Cloud Run que você está invocando, conceda os papéis apropriados à conta de serviço:

    Para mais informações sobre as permissões para invocar uma função, consulte Como autenticar para invocação.

Configurar a autenticação para funções do Cloud Run

Dependendo do ambiente em que seu sistema SAP está hospedado, é possível usar um dos métodos a seguir para configurar a autenticação baseada em token para acessar a API Cloud Run functions:

Sistema SAP hospedado na VM do Compute Engine

Para instruções sobre como configurar a autenticação para acessar a API Cloud Run functions quando o sistema SAP está hospedado em uma instância de VM do Compute Engine, consulte Autenticar usando tokens de acesso. Configure uma chave de cliente com a conta de serviço que você criou para conferir os detalhes da função do Cloud Run.

Sistema SAP RISE ou SAP hospedado fora do Google Cloud

Configure a autenticação para acessar as APIs do Cloud Run functions usando um dos seguintes métodos de autenticação:

Configure uma chave de cliente com a conta de serviço que você criou para conferir os detalhes da função do Cloud Run.

Configurar a chave de cliente para invocar funções do Cloud Run

Dependendo do ambiente em que seu sistema SAP está hospedado, use valores diferentes para a configuração da chave de cliente:

Sistema SAP hospedado na VM do Compute Engine

  1. Na GUI do SAP, execute o código de transação /GOOG/SDK_IMG.

    Como alternativa, execute o código da transação SPRO e clique em IMG de referência do SAP.

  2. Clique em ABAP SDK for Google Cloud > Configurações básicas > Configurar chave do cliente.

  3. Clique em Novas entradas.

  4. Insira valores nos campos a seguir:

    Campo Descrição
    Nome da chave do Google Cloud Especifique um nome da configuração da chave do cliente.
    Nome da conta de serviço do Google Cloud

    Especifique o nome da conta de serviço a que você concedeu permissões para invocar funções do Cloud Run. Por exemplo: sap-example-svc-acct@example-project-123456.iam.gserviceaccount.com.

    Escopo do Google Cloud Especifique o escopo de acesso, https://www.googleapis.com/auth/cloud-platform.
    ID do projeto Especifique o ID do projeto do Google Cloud com a API Cloud Run functions ativada.
    Nome do comando Deixe esse campo em branco.
    Classe de autorização Especifique a classe de autorização, /GOOG/CL_AUTH_ID_TOKEN.
    Campo de autorização Deixe esse campo em branco.
    Armazenamento de tokens em cache Deixe esse campo em branco.
    Token de atualização em segundos Deixe esse campo em branco.
    Parâmetro de autorização 1 Deixe esse campo em branco.
    Parâmetro de autorização 2 Deixe esse campo em branco.
  5. Salve a nova entrada.

SAP RISE ou sistema SAP hospedado fora do Google Cloud

  1. Na GUI do SAP, execute o código de transação /GOOG/SDK_IMG.

    Como alternativa, execute o código da transação SPRO e clique em IMG de referência do SAP.

  2. Clique em ABAP SDK for Google Cloud > Configurações básicas > Configurar chave do cliente.

  3. Clique em Novas entradas.

  4. Insira valores nos campos a seguir:

    Campo Descrição
    Nome da chave do Google Cloud Especifique um nome da configuração da chave do cliente.
    Nome da conta de serviço do Google Cloud

    Especifique o nome da conta de serviço a que você concedeu permissões para invocar funções do Cloud Run. Por exemplo: sap-example-svc-acct@example-project-123456.iam.gserviceaccount.com.

    Escopo do Google Cloud Especifique o escopo de acesso, https://www.googleapis.com/auth/cloud-platform.
    ID do projeto Especifique o ID do projeto do Google Cloud com a API Cloud Run functions ativada.
    Nome do comando Deixe esse campo em branco.
    Classe de autorização Especifique a classe de autorização da seguinte maneira:
    • Para autenticação usando JWT, especifique /GOOG/CL_AUTH_JWT_ID_TOKEN.
    • Para autenticação usando a federação de identidade da carga de trabalho, especifique a classe filha, que contém a implementação da classe /GOOG/CL_AUTH_WIF_ID_TOKEN. Para mais informações, consulte Implementar o código ABAP para recuperar tokens de segurança do IdP.
    Campo de autorização Deixe esse campo em branco.
    Armazenamento de tokens em cache Deixe esse campo em branco.
    Token de atualização em segundos Deixe esse campo em branco.
    Parâmetro de autorização 1
    • Para autenticação usando JWT, se você estiver usando um nome personalizado para o aplicativo SSF, especifique o nome do aplicativo SSF criado na seção Crie um novo aplicativo Secure Store and Forward (SSF).
    • Para autenticação usando a federação de identidade da carga de trabalho, especifique o ID do pool de identidade da carga de trabalho.
    Parâmetro de autorização 2
    • Para autenticação usando JWT, deixe este campo em branco.
    • Para autenticação usando a federação de identidade da carga de trabalho, especifique o ID do provedor de identidade da carga de trabalho.
  5. Salve a nova entrada.

Receber suporte

Se você precisar de ajuda para resolver problemas com o ABAP SDK for Google Cloud, faça o seguinte: