2010-04-21 5 views
1

Les façons que je peux penser sont:manière la plus simple pour authentifier les utilisateurs sur plusieurs sites/applications dans .NET

  • Utiliser Windows Identity Foundation (WIF). Je n'ai jamais fait cela, donc c'est une boîte noire et risquée.
  • Utilisez l'authentification par formulaire ou similaire, puis utilisez la réplication de base de données pour vous assurer que chaque application a accès au magasin de données.

Il ne fait aucun doute qu'il existe d'autres options.

Plus d'info: Ceci est une solution Internet, pas intranet/LAN

+2

Active Directory/LDAP –

+1

Existe-t-il un nom de domaine commun sur tous les sites ou existe-t-il plusieurs domaines? –

+1

Pas de nom de domaine commun. Sinon, pourrait faire un cookie hack :) – Schneider

Répondre

1

J'ai eu un bon succès en utilisant DotNetOpenAuth. StackOverflow l'utilise. http://dotnetopenauth.net

+0

Est-ce que cela fonctionne avec les services Web? J'ai oublié de mentionner que je dois être en mesure de m'authentifier auprès des services Web WCF aussi – Schneider

0

Cette HowTo devrait vous donner une idée de la façon d'effectuer l'authentification de l'utilisateur contre une instance de AD, dans le cas où vous avez un domaine derrière votre authentification. WCF est simplement un moyen de communiquer à travers les réseaux de communication, de sorte que vous pourriez aussi bien vous authentifier contre AD à travers WCF.

J'espère que cela aide! Les services d'adhésion ASP.NET sont une bonne option.

0

Il vous permet de le sauvegarder avec une base de données, Active Directory ou votre propre authentification personnalisée.

http://msdn.microsoft.com/en-us/library/yh26yfzy(VS.85).aspx

Il est pas limité à des sites Web, mais peut être utilisé de Silverlight et WPF lorsqu'il est exposé via des services Web.

Regardez également OpenID/OpenAuth et même Facebook Connect pour utiliser un seul login pour l'authentification contre plusieurs sites Web/applications.

+0

Mais le magasin de sauvegarde doit-il être partagé? – Schneider

+0

Je ne comprends pas votre question. Quel magasin de soutien? – GiddyUpHorsey

1

J'ai utilisé Windows Identity Foundation. Bien sûr, la documentation est pauvre.

Ce qui semble vraiment bien, c'est l'authentification basée sur les revendications. Il permet essentiellement au système d'ouverture de session d'accorder des «revendications», qui sont essentiellement des chaînes d'informations décrivant l'utilisateur. Les revendications sont signées avec une clé privée, de sorte que l'application .net peut se rendre compte que les revendications sont authentiques. En outre, vous pouvez utiliser toute banque d'informations sous-jacente sur vos utilisateurs (SQL, AD) et la méthode de stockage des informations sur les utilisateurs autorisés est entièrement abstraite de votre application. Vous pouvez passer de SQL à AD un jour et si la configuration est correcte, l'application .net de confiance recevrait exactement les mêmes revendications et ne connaîtrait jamais la différence.

+0

Pour plus d'informations sur WIF, j'ai ajouté de nombreuses questions et réponses à StackOverflow. –

1

Si vous êtes intéressé dans les revendications approche fondée (qui ouvrira ses portes toutes sortes de possibilités intéressantes comme la fédération, etc.), jetez un oeil à la « guide d'identité de revendications »: http://msdn.microsoft.com/en-us/library/ff423674.aspx

Eugenio

Questions connexes