Skip to main content

Fornecer autorização a gateways de API externa

Objetivos de aprendizagem

Após concluir esta unidade, você estará apto a:
  • Descrever o registro de cliente dinâmico do OpenID Connect e a introspecção de token.
  • Descrever como o Salesforce usa aplicativos conectados para fornecer autorização para gateways de API externa.

Registro de cliente dinâmico do OpenID Connect e introspecção de token

Na primeira unidade, falamos sobre o caso de uso no qual o Salesforce pode atuar como um servidor de autorização de OAuth independente para proteger recursos hospedados em um gateway de API externa. Este caso de uso de aplicativo conectado é ativado pelo registro de cliente dinâmico do OpenID Connect e introspecção de token.

O registro de cliente dinâmico permite que os servidores de recursos criem aplicativos clientes dinamicamente como aplicativos conectados. Os aplicativos clientes são aplicativos externos que solicitam acesso a recursos protegidos. Para criar dinamicamente aplicativos clientes como aplicativos conectados, o servidor de recurso envia ao servidor de autorização uma solicitação para criar um aplicativo conectado para o aplicativo cliente. O servidor de autorização verifica a solicitação do servidor de recursos e cria o aplicativo conectado, fornecendo um ID de cliente e um segredo do cliente exclusivos.

A introspecção de token permite que todos os aplicativos conectados de OAuth verifiquem o estado atual de um token de acesso ou de atualização de OAuth 2.0. O servidor de recursos ou os aplicativos conectados enviam o ID e o segredo do cliente ao servidor de autorização, iniciando um fluxo de autorização de OAuth. Como parte deste fluxo, o servidor de autorização valida (ou introspecta) o token de acesso do aplicativo cliente. Se o token de acesso é atual e válido, é concedido acesso ao aplicativo cliente.

Como flui a autorização de gateway de API externa

O registro de cliente dinâmico do OpenID Connect e a introspecção de token podem parecer um pouco complexos. Então vamos percorrer seu fluxo usando o exemplo a seguir.

Você quer que seus parceiros do Salesforce possam acessar os dados de status do pedido independentemente. Então, você cria um serviço que expõe o status do pedido em vários sistemas ao confrontá-lo com um gateway de API, que é implantado em uma plataforma Anypoint da MuleSoft. Para habilitar acesso protegido a esses dados, siga os seguintes passos.

  1. Aplique uma política de aplicação de token do OpenID no gateway da API.
  2. Configure o Salesforce como um provedor de gerenciamento de cliente na plataforma Anypoint da MuleSoft.

Com esta configuração, o gateway da API usa o Salesforce como o provedor de autorização no fluxo de registro de cliente dinâmico do OpenID Connect e introspecção de token.

  1. O gateway da API registra um aplicativo cliente com o ponto de extremidade de registro de cliente dinâmico do Salesforce.
  2. O gateway da API envia uma solicitação ao ponto de extremidade de autorização do Salesforce para aprovar um aplicativo cliente baseado em um tipo de concessão de autorização associado a ele.
  3. Com uma validação bem-sucedida, o Salesforce gera um token de acesso para o aplicativo cliente.
  4. O gateway da API envia uma solicitação ao ponto de extremidade de introspecção de token do Salesforce para validar o token de acesso.
  5. Após uma validação bem-sucedida, o gateway da API permite que o aplicativo cliente acesse os dados protegidos.

Agora vamos dar um sentido a tudo isso.

Imagem mostrando o fluxo de autorização de gateway da API externa para a API de status do pedido.
  1. Sua API de status do pedido está disponível no portal de API da MuleSoft.
  2. Seus parceiros fazem login no MuleSoft para criar um aplicativo cliente para acessar a API de status do pedido.
  3. O novo aplicativo cliente envia automaticamente uma solicitação ao ponto de extremidade de registro de cliente dinâmico do Salesforce para criar um aplicativo conectado para o aplicativo cliente.
  4. Após um registro bem-sucedido, o Salesforce retorna um ID do cliente e um segredo do cliente ao aplicativo conectado, que é compartilhado com o parceiro.
  5. O parceiro envia uma solicitação com as credenciais do cliente ao gateway da API especificando o tipo de concessão (código de autorização) para aprovar o cliente.
  6. O parceiro é redirecionado a um navegador para fazer login no Salesforce e para autorizar acesso aos dados. Esta autorização é baseada em escopos associados ao aplicativo conectado correspondente no Salesforce.
  7. Com um fluxo de concessão de código de autorização bem-sucedido, o Salesforce envia um token de acesso ao aplicativo cliente.
  8. O aplicativo cliente envia seu token de acesso ao gateway da API, solicitando acesso aos dados de status do pedido protegidos.
  9. O gateway da API extrai o token de acesso e envia-o ao ponto de extremidade de introspecção de token do Salesforce.
  10. O Salesforce valida o token de acesso.
  11. O gateway da API concede ao aplicativo cliente acesso aos dados protegidos pelo seu API de status do pedido hospedado no MuleSoft.

Você chegou ao acampamento base

Parabéns! Você concluiu o módulo Noções básicas de aplicativos conectados. Agora você já domina o tema de como usar aplicativos conectados. Nos próximos módulos e projetos sobre aplicativos conectados, mostraremos como criar e configurar aplicativos conectados para esses casos de uso. Enquanto isso, saiba que você está caminhando para ser um mestre dos aplicativos conectados.

Compartilhe seu feedback do Trailhead usando a Ajuda do Salesforce.

Queremos saber sobre sua experiência com o Trailhead. Agora você pode acessar o novo formulário de feedback, a qualquer momento, no site Ajuda do Salesforce.

Saiba mais Continue compartilhando feedback