Esta página foi traduzida pela API Cloud Translation.
Switch to English

Como integrar o front-end do aplicativo

Nesta página, descrevemos as etapas para integrar o front-end do seu aplicativo com o Google Cloud Marketplace. A integração de front-end ajuda a oferecer a clientes uma experiência estável quando eles passam do Google Cloud Marketplace para o aplicativo.

Como criar uma página de ativação da conta para novos usuários

Quando os usuários escolhem seu produto no Google Cloud Marketplace, eles precisam ativar as contas no aplicativo. Você precisa criar uma página de ativação para configurar e aprovar contas de usuários no seu sistema. É possível configurar a página como uma página de registro em que os usuários precisam se inscrever para ter uma conta em seu sistema ou como uma página que aprova contas automaticamente. Ao configurar sua página de ativação, verifique se os usuários podem acessá-la sem inserir um nome de usuário e uma senha.

No Google Cloud Marketplace, quando os usuários clicam no link para se inscrever no seu aplicativo, o Google envia uma solicitação HTTP POST para sua página de ativação e envia um parâmetro JSON Web Token (JWT) no x-gcp-marketplace-token. O JWT contém o ID da conta de compras do usuário, que os identifica como um usuário do Google Cloud. Use esse ID para vincular a Conta do Google do usuário à conta dele no seu sistema.

Depois de verificar o JWT, sua página de ativação precisará enviar uma solicitação de aprovação de conta para a API Partner Procurement, descrita nas etapas de integração do back-end.

Se você é novo no JWT, consulte a introdução do JWT.

Como adicionar a página de ativação da conta ao portal

Use o Portal do Produtor ou o Portal do parceiro para adicionar o URL da página de ativação da conta.

Portal do Produtor

O link direto para o Portal do Produtor é:

https://console.cloud.google.com/producer-portal?project=YOUR_PROJECT_ID

Para adicionar a página de ativação da conta ao Portal do Produtor:

  1. Na lista de produtos, clique no nome do seu produto.

  2. Na página Visão geral do seu produto, acesse a seção Integração técnica e clique em FRONTEND INTEGRATION.

  3. Insira o URL da página de ativação da conta no campo URL de inscrição.

Portal do parceiro

O link direto para o Portal do parceiro é:

https://console.cloud.google.com/partner/solutions?project=YOUR_PROJECT_ID

Para adicionar a página de ativação da conta ao Portal do parceiro:

  1. Na lista de soluções, clique no código da solução que você criou.

  2. Na página Planos e recursos, clique para editar a página.

  3. Insira o URL da página de ativação da conta no campo URL de inscrição.

Verificar o JWT

O payload do JWT está no seguinte formato:

Cabeçalho

{
  "alg": "RS256",
  "kid": "KEY_ID"
}

Onde:

  • alg é sempre RS256
  • kid indica o ID da chave que foi usado para proteger o JWT. Use o ID da chave para procurar a chave do objeto JSON no atributo iss no payload.

Payload

{
  "iss": "https://www.googleapis.com/robot/v1/metadata/x509/cloud-commerce-partner@system.gserviceaccount.com",
  "iat": CURRENT_TIME,
  "exp": CURRENT_TIME + 5 minutes,
  "aud": "PARTNER_DOMAIN_NAME",
  "sub": "PROCUREMENT_ACCOUNT_ID",
  "google": {
    "roles": [GCP_ROLE],
    "user_identity": USER_ID
  }
}

Onde:

  • sub é o ID da conta do Google do usuário. Use esse ID para vincular a Conta do Google do usuário à conta dele no seu sistema.
  • iss identifica o remetente do JWT. O URL na declaração iss vincula uma chave pública do Google;
  • exp indica quando o token expira e é definido como 5 minutos depois do envio do token.
  • aud é o domínio que hospeda seu produto, como example-pro.com.
  • roles é uma matriz de strings que representam os papéis do usuário. Atualmente, ela pode ser: ** account_admin, que indica que o usuário é um administrador da conta de faturamento da conta que comprou o produto ou ** project_editor, que indica que o usuário é um editor de projeto, mas não um administrador de faturamento, do projeto nessa conta de faturamento.
  • user_identity é o código GAIA ofuscado do usuário, que pode ser usado para iniciar o Open ID Connect.

Quando você recebe o JWT, verifique o seguinte:

  1. Verifique se a assinatura do JWT usa a chave pública do Google.

  2. Verifique se o JWT não expirou, verificando a declaração exp.

  3. Verifique se a reivindicação aud é o domínio correto do seu produto.

  4. Verifique se a declaração iss é https://www.googleapis.com/robot/v1/metadata/x509/cloud-commerce-partner@system.gserviceaccount.com

  5. Verifique se sub não está vazio.

Como iniciar o Login do Google com login_hint

Se você quiser que os usuários passem pelo fluxo de consentimento do OAuth 2.0 com seu site, use as informações de identidade do payload para inicializar esse fluxo na Conta do Google que eles estavam usando para o Google Cloud antes do redirecionamento. Para fazer isso, forneça o user_identity fornecido no JWT como login_hint. Para mais informações, acesse a documentação do Google OAuth2.0 (em inglês).

Depois que o usuário concluir o fluxo do OAuth 2.0 com seu site, verifique se ele é o usuário que você espera concluir o fluxo OAuth. Para isso, use o token de acesso do OAuth 2.0 para chamar a API GoogleInfoInfo e buscar as informações básicas do usuário. Isso retorna um ID que deve corresponder ao campo user_identity do JWT.

Integrar o Logon único (SSO) para seus clientes

Ao se inscrever no produto, os clientes precisam se registrar em uma conta na página de ativação sem digitar primeiro um nome de usuário e uma senha.

A integração SSO usa os JWTs para autenticar usuários. Se você é novo no JWT, consulte a introdução do JWT.

É possível configurar a integração de SSO no Portal do Produtor ou no Portal do parceiro:

Portal do Produtor

Para configurar a integração com o SSO:

  1. Na página Visão geral do seu produto, acesse a seção Integração técnica e clique em INTIGAR INTEGRATION.

  2. Para vincular isso ao seu painel, insira o URL dele no campo URL do painel.

  3. Para usar o SSO do Google, clique em Ativar o login por SSO (opcional) e insira o URL de login do SSO no campo URL do SSO.

  4. Na interface da Web do seu app, adicione o código para verificar o payload do JWT que é enviado ao seu aplicativo quando os usuários fazem login no Google Cloud Marketplace.

    O formato do JWT para autenticação é o mesmo que o JWT enviado quando os usuários se inscrevem pela primeira vez no seu aplicativo, descrito em Como verificar o JWT.

Portal do parceiro

Para configurar a integração com o SSO:

  1. Acesse a página Planos e recursos do produto e escolha EDITAR os planos e recursos dele.

  2. Para vincular isso ao seu painel, insira o URL do seu painel no campo URL do painel.

  3. Para usar o SLO do Google, em Login por SSO (optional), clique em Ativar SSO e digite o URL de login por SSO no campo URL de login por SSO. Digite o URL das chaves de API SSO no campo URL da chave de API de SSO.

  4. Na interface da Web do seu app, adicione o código para verificar o payload do JWT que é enviado ao seu aplicativo quando os usuários fazem login no Google Cloud Marketplace.

    O formato do JWT para autenticação é o mesmo que o JWT enviado quando os usuários se inscrevem pela primeira vez no seu aplicativo, descrito em Como verificar o JWT.