O ADFS pode se conectar a outros serviços SSO?


8

Eu tenho um aplicativo .net conectado ao meu servidor ADFS local (conectado ao nosso servidor AD corporativo) e tudo está funcionando bem. Minha pergunta é: meu ADFS pode estabelecer uma conexão confiável com serviços SSO adicionais na Internet, como Azure AD, AWS, login do Google, Facebook, Twitter, OpenID etc. para que meu aplicativo possa usar reivindicações de várias fontes confiáveis, além da minha Ativar diretório?


1
Eu nunca o usei, mas o ADFS não é uma implementação completa do SAML2?
user1686

Respostas:


10

Eu fiz isso. Em nosso modelo, temos três conjuntos de usuários:

  1. Usuários internos autenticando via Active Directory (Kerberos ou NTLM) na instância local do AD FS. Nesse conjunto, o servidor AD FS é executado como o IdP.

  2. Usuários externos autenticando via Active Directory (Kerberos ou NTLM) em sua própria instância e domínio do AD FS. Nesse conjunto, o servidor AD FS possui uma Confiança do provedor de declarações configurada para o servidor AD FS emissor. Nosso servidor AD FS opera como um SP-STS, transformando e validando declarações emitidas em outros lugares e reemitindo um token confiável para nosso aplicativo. O IdP é o servidor AD FS do outro domínio, em que nosso servidor AD FS está configurado como uma terceira parte confiável.

  3. Usuários externos sem login corporativo. Esses usuários são autenticados em um pequeno .Net STS configurado como Confiança no Provedor de Reivindicações em nosso servidor AD FS. (Também consideramos - e era tecnicamente simples - usar o Azure Active Directory B2C para essa função, mas outras preocupações o impediram.)

Os tokens são emitidos como: Representação da emissão do token

Para torná-lo transparente para nossos clientes, usamos intervalos de IP para detectar (via nginx) e redirecionar para o AD FS corporativo apropriado - além de confiar na página padrão do AD FS HRD.


Autenticação no AD via NTFS, como no sistema de arquivos NT?
KDEx 21/06/19

1
Isso é provavelmente quis dizer NTLM
Eckes

5

Parece que encadear terceiros confiáveis ​​é realmente possível. Esse cara escreveu uma série de posts sobre o assunto, aqui está um. Você pode usar o ADFS como o "hub" para autenticação no aplicativo e encadeará a solicitação de volta ao serviço em que a identidade do usuário realmente reside.

https://cloudidentityblog.com/2013/06/17/why-use-aad-as-idp-via-ad-fs-rp/

Eu não fiz isso sozinho, então não tenho certeza de quanto isso funciona e quais podem ser as armadilhas. Tenho certeza de que você pode ter problemas se um usuário vive em mais de um IdP.

Não se esqueça, não há nada que impeça você de escrever seu aplicativo .NET para poder tirar proveito de vários provedores de SSO nativamente.


5

Sim pode.

Cada um desses IDP externo é adicionado como um provedor de declarações no ADFS e, no lado do IDP, o ADFS é adicionado como uma Parte Confiante.

Quando você se autentica, o ADFS mostra uma tela de Descoberta de Domínio Doméstico que lista todo o IDP.

Você então escolhe qual deseja usar.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.