ADFS peut-il se connecter à d'autres services SSO?

8

J'ai une application .net connectée à mon serveur ADFS local (connecté à notre serveur AD d'entreprise) et tout fonctionne bien. Ma question est la suivante: mon ADFS peut-il établir une connexion sécurisée à des services SSO supplémentaires sur Internet tels qu'Azure AD, AWS, connexion Google, Facebook, Twitter, OpenID, etc. afin que mon application puisse utiliser des revendications provenant de plusieurs sources fiables autres que ma Activer l'annuaire?

RichC
la source
1
Je ne l'ai jamais utilisé, mais ADFS n'est-il pas une implémentation SAML2 complète?
user1686

Réponses:

10

J'ai fait ça. Dans notre modèle, nous avons trois ensembles d'utilisateurs:

  1. Utilisateurs internes s'authentifiant via Active Directory (Kerberos ou NTLM) auprès de l'instance AD ​​FS locale. Dans cet ensemble, le serveur AD FS s'exécute en tant qu'IdP.

  2. Utilisateurs externes s'authentifiant via Active Directory (Kerberos ou NTLM) sur leur propre instance et domaine AD FS. Dans cet ensemble, le serveur AD FS a une approbation de fournisseur de revendications configurée sur le serveur AD FS émetteur. Notre serveur AD FS fonctionne comme un SP-STS en transformant et en validant les revendications émises ailleurs et en réémettant un jeton de confiance à notre application. L'IdP est le serveur AD FS de l'autre domaine, où notre serveur AD FS est configuré en tant que partie de confiance.

  3. Utilisateurs externes sans connexion d'entreprise. Ces utilisateurs s'authentifient auprès du petit .Net STS qui est configuré en tant que revendeur Trust Provider sur notre serveur AD FS. (Nous avons également envisagé - et c'était techniquement simple - d'utiliser Azure Active Directory B2C pour ce rôle, mais d'autres problèmes l'ont empêché.)

Les jetons sont émis sous la forme: Représentation de l'émission de jetons

Pour le rendre transparent pour nos clients, nous utilisons des plages IP pour détecter (via nginx) et rediriger vers les services AD FS d'entreprise appropriés - et nous nous appuyons autrement sur la page AD FS HRD standard.

Mitch
la source
Authentification sur AD via NTFS, comme dans le système de fichiers NT?
KDEx
1
Cest signifiait probablement dire NTLM
Eckes
5

Il semble que l'enchaînement des parties de confiance soit en effet possible. Ce gars a écrit une série de messages à ce sujet, en voici un. Vous pouvez utiliser ADFS comme "hub" pour lequel votre application peut s'authentifier, et il enchaînera la demande vers le service dans lequel l'identité de l'utilisateur réside réellement.

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

Je ne l'ai pas fait moi-même, donc je ne sais pas combien de travail cela et quels sont les pièges. Je suis sûr que vous pourriez rencontrer des problèmes si un utilisateur vit dans plusieurs IdP.

N'oubliez pas, rien ne vous empêche d'écrire votre application .NET pour pouvoir profiter de plusieurs fournisseurs SSO nativement.

mfinni
la source
5

Oui il peut.

Chacun de ces IDP externes est ajouté en tant que fournisseur de revendications dans ADFS et du côté IDP, ADFS est ajouté en tant que partie de confiance.

Lorsque vous vous authentifiez, ADFS affichera un écran Home Realm Discovery qui répertorie tous les IDP.

Vous choisissez ensuite celui que vous souhaitez utiliser.

nzpcmad
la source