37 votes

Fournisseur d'abonnement oAuth ASP.NET

Existe-t-il des ressources recommandées pour l'implémentation d'un fournisseur d'adhésion personnalisé qui utilise oAuth? L'objectif serait que les utilisateurs se connectent à mon application ASP.NET MVC en utilisant leurs informations d'identification oAuth existantes. Une fois l'utilisateur authentifié, j'aimerais ensuite utiliser les fonctionnalités d'autorisation ASP.NET intégrées.

Merci.

45voto

Bittercoder Points 4692

Je ne suis pas sûr de ce que vous cherchez est OAuth.

OAuth est de déléguer l'autorisation, par le biais de l'utilisation de jetons. En fonction de ce que vous faites, vous avez deux scénarios:

  1. Votre application doit utiliser certains des utilisateurs de données, hébergée par un fournisseur de dire que twitter ou google). Dans ce cas, votre demande pourrait être un consommateur - en bref, l'utilisateur aurait besoin d'ouvrir une session et d'accord pour autoriser votre application d'avoir accès à leurs données sur le fournisseur, et vous serait donné un jeton d'accès qui peut être utilisé pour accéder à ces ressources protégées.
  2. Alternativement, vous disposez d'une application, avec des utilisateurs qui ont des ouvertures de session etc. Et que vous souhaitez apporter (c'est à dire que vous êtes le fournisseur), l'accès à certaines informations confidentielles de vos utilisateurs pour les applications 3ème partie (les consommateurs), sans exposer vos informations d'identification des utilisateurs de ces services.

Pour plus d'informations sur le protocole OAuth - découvrez le OAuth.Net site web. Il y a actuellement 3 implémentations du protocole OAuth disponible pour .Net.

En raison de la façon OAuth fonctionne, je ne peux pas vraiment imaginer comment vous pourriez avoir une "OAuth" fournisseur d'appartenances - Il est vraiment destiné pour la sécurisation de l'API, et souvent le but est de déléguer l'autorisation à un niveau plus granulaire c'est à dire donner un consommateur demande d'accès à des utilisateurs de données du carnet d'adresses, sans les laisser accéder à des archives de courriel, calendrier, etc. - ce qui ne rentre pas bien avec un effectif de rôle à la base du modèle de sécurité.

Je devine ce que vous êtes vraiment à la recherche pour est OpenId c'est à dire la façon dont vous vous authentifiez avec Stackoverflow lui-même. Je suggère la lecture de la Stackoverflow OpenId étude de cas ici, et probablement le meilleur OpenId pour la mise en œuvre .Net est actuellement partie de DotNetOpenAuth projet (ce qui a été officiellement appelé DotNetOpenId, le site google code du projet est ici).

6voto

CoderDennis Points 7170

Je pense que vous cherchez peut-être DotNetOpenAuth . Je ne l'ai pas utilisé, je ne peux donc pas vous dire avec certitude s'il inclut un fournisseur d'adhésion, mais je m'attendrais à ce qu'il le soit. Si ce n'est pas le cas, il est open source, alors il devrait vous aider avec ce que vous essayez de faire.

2voto

pranav rastogi Points 1426

vous devriez jeter un coup d'oeil sur https://github.com/rustd/ASPNETTemplates qui contient les modèles de projet par défaut pour asp.net qui illustrent la connexion à l'aide de OAUth, puis l'extension des fournisseurs universels (modèle de formulaires Web mais vous pouvez faire de même pour mvc) faire des rôles, etc.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X