Ir para o conteúdo

Provedor de Segurança - Salesforce

O provedor de segurança do Salesforce permite autenticação e autorização do Salesforce. É fundamentalmente um provedor de segurança OAuth 2.0, apoiando as seguintes concessões:

Configuração

Consulte o provedor de segurança OAuth para configuração.

Observe que o Salesforce se refere ao identificador do cliente (client_id) e secreto (client_secret) como "chave do consumidor" e "segredo do consumidor".

Padrões

O provedor de segurança do Salesforce padroniza os seguintes endpoints:

    • Endpoint de autorização*: https://login.salesforce.com/services/oauth2/authorize
    • Endpoint do token*: https://login.salesforce.com/services/oauth2/token

Asserção do Portador SAML 2.0

Ao usar a concessão de declaração do portador SAML 2.0, o provedor do Salesforce usará como padrão as seguintes propriedades:

  • Emissor: o padrão é o identificador do cliente (client_id).
  • Público: https://login.salesforce.com
  • Destinatário: https://login.salesforce.com/services/oauth2/token

Token do Portador JWT

Ao usar a concessão JWT Bearer Token, o provedor do Salesforce usará como padrão as seguintes propriedades:

  • Emissor: o padrão é o identificador do cliente (client_id).

Problemas Conhecidos e Limitações

Atualizar Sincronização de Token

O Salesforce mantém apenas os quatro tokens de atualização anteriores. Na prática, isso significa que um aplicativo conectado diferente é necessário para cada instância do Vinyl. Caso contrário, cada instância do Vinyl recuperará um token de atualização separado, possivelmente invalidando um token de atualização usado por outra instância.

Várias Instâncias do Salesforce

É possível configurar várias instâncias do Salesforce. O Vinyl manterá um conjunto separado de tokens de segurança para cada instância. No entanto, o usuário terá que efetuar login em cada instância pelo menos uma vez. Se o usuário já tiver efetuado login em uma instância, ele deverá sair dessa instância antes de efetuar login na segunda. Caso contrário, o Salesforce ignorará o processo de login. Em outras palavras, quando o usuário tenta fazer login na segunda instância, o Salesforce pode conectá-lo automaticamente na primeira instância.

Autorização Prévia

Ao usar as concessões SAML Bearer Assertion ou JWT Bearer Token, o Salesforce exige uma autorização prévia. Na prática, isso significa que os usuários devem se autenticar uma vez usando a concessão do Código de Autorização.

Fonte de Declaração SAML

O provedor de segurança do Salesforce não pode obter asserções SAML de um provedor de logon único (SSO) SAML. Há duas razões para isso:

  1. O Salesforce requer autorização prévia (veja acima). Forçar os usuários a fazer logon com OAuth antes da autenticação com SAML SSO anula o propósito.
  2. O Salesforce espera que o Emissor da declaração SAML corresponda à Chave do Consumidor do Cliente Conectado. As Chaves do Consumidor são blobs opacos. Embora alguns provedores de identidade (IdPs) SAML SSO possam ser configurados para gerar uma asserção SAML com um emissor arbitrário, eles podem descrever o emissor como urn:oasis:names:tc:SAML:2.0:nameid-format:entity. Esse formato descreve um URI. Como a chave do consumidor não pode ser analisada como um URI, o Vinyl rejeita a afirmação SAML.