ADFS: converter a asserção de SAML em token OAuth?

2

Temos o ADFS (Serviços de Federação do Microsoft Active Directory) como nosso provedor de autenticação / federação. Usamos isso para realizar a federação de identidades via SAML para vários fornecedores externos, fornecedores de SaaS etc. Além disso, temos vários fornecedores que oferecem suporte apenas ao OAuth, por isso, configuramos integrações com os fornecedores que usam o suporte OAuth do ADFS 2016. Dessa forma, podemos gerar as declarações de SAML e os tokens de acesso do OAuth, conforme necessário.

Agora, nos deparamos com uma situação em que o Fornecedor A (configurado para autenticação SAML) precisa fazer uma chamada de serviço RESTful para o Fornecedor B (configurado para exigir tokens OAuth). Existe uma maneira de converter uma declaração SAML gerada pelo ADFS em um token OAuth gerado pelo ADFS? Dado que ambas as credenciais são geradas pelo ADFS, eu acho que o ADFS teria uma maneira de realizar a conversão. Existe um ponto de extremidade em que posso POSTAR uma declaração SAML e recuperar o token OAuth em retorno? Qualquer ajuda seria muito apreciada!

    
por Shadowman 08.03.2018 / 20:38

1 resposta

0

Embora eu não possa dar a você e responder por ADFS e Oauth, posso lhe dar alguma experiência em relação à integração de dois diferentes sistemas SSO baseados na Web, o que pode lhe dar algo em que pensar.

Na minha situação, eu estava querendo obter um IdP do Shibboleth (mesmo papel do ADFS com o SAML 2.0) para fazer uso de um sistema SSO propriatário existente.

O que eu fiz foi configurar meu IdP para fazer uso de autenticação 'externa', em cujo caso eu tinha o sistema proprietário SSO para proteger apenas a URL de autenticação externa; para que, quando as pessoas acessassem o log-in, elas acessassem a URL de autenticação externa --- e trabalhassem através do outro sistema SSO --- e voltassem em um estado autenticado para passar pela URL de autenticação externa para o IdP, que então lhes concederia uma sessão.

Isso ilustra que você não "converte" realmente um sistema para outro, mas pode elevar um para o outro usando autenticação externa.

Uma palavra de aviso: o logout se torna mais um problema. Eu tive que personalizar os modelos SLO que vêm com o IdP para integrar o sistema de logout outros sistemas também .... ADFS não será tão flexível.

Felicidades, Cameron

    
por 12.03.2018 / 20:12