2009-04-10 6 views
5

Je dois être stupide, parce que tous les articles que j'ai vu sur OpenID dans ASP.NET m'ont tout simplement confondu sur le problème. Je suis assez sûr de comprendre les concepts impliqués ici, je suis juste un peu flou sur la façon dont les choses se présentent sur le côté arrière des choses. Donc, un nouvel utilisateur vient sur mon site et veut créer un compte. Voici le flot de questions:Comment utiliser OpenID dans mon nouveau site Web ASP.NET?

  • La première étape consiste-t-elle à choisir quel fournisseur openID utilisera-t-il pour se connecter? Est-ce que je lui demande un nom d'utilisateur sur mon système? Dois-je l'attacher au même fournisseur openID chaque fois qu'il revient, ou peut-il sélectionner un nouveau fournisseur à chaque fois?
  • A quoi ressemble la base de données ici? Est-ce que j'ai son nom d'utilisateur dans une table et qui est lié à un fournisseur openID? Que se passe-t-il si l'utilisateur n'a pas de compte OpenID?
  • Devrais-je lui permettre de créer un compte traditionnel de mon côté, puis m'exposer en tant que fournisseur OpenID?

Que manque-t-il ici? Je suis généralement assez brillant, mais cette zone a été comme kryptonite à Superman pour mon intelligence de développeur. Merci d'avance!

Adam

Répondre

5

Cette page est un tutoriel étape par étape sur la mise en œuvre OpenId sur un site Web. Je crois qu'il répondra à toutes vos questions sur les mécanismes de l'ajout.

A Recipe for OpenID-Enabling Your Site

Si l'utilisateur ne dispose pas d'un OpenId je voudrais juste leur permettre d'enregistrer « normalement », le stockage de leurs informations d'identification pour une utilisation locale. Il n'est pas nécessaire d'ajouter la complexité supplémentaire de devenir un fournisseur OpenID, sauf si vous avez une analyse de rentabilisation pour cela.

5

Mec, vous n'êtes pas seul. OpenID déroute tout le monde sauf les personnes qui l'ont conçu, et même là, je ne suis pas sûr qu'il ne les confond pas non plus car il y a plusieurs fournisseurs OpenID et de légères incompatibilités entre eux, selon les bibliothèques que vous utilisez. Imaginez que l'utilisateur soit lui-même une "table" sql (cette table contient ses "informations d'identification"), et vous disposez d'un tableau de données de profil spécifique à votre site Web que vous possédez. L'URL OpenID est une "clé étrangère" que vous utilisez pour "joindre" ces deux tables. Vous devez prouver à vous-même qu'il possède réellement cette URL OpenID avant de l'accepter (ou de l'associer à vos données de profil privées). Vous êtes essentiellement "offshoring" la partie authentification de votre site. Donc en fin de compte, vous utilisez une bibliothèque client openid qui fait le travail pour vous sur votre site Web. Ils s'enregistrent normalement en remplissant "nom complet", "âge", etc (quel que soit le vous voulez) mais ils fournissent une url openid à la place du nom d'utilisateur/mot de passe.La bibliothèque vérifie après vérification qu'ils le possèdent vraiment.Vous devez faire confiance à cette bibliothèque

Si vous pouviez proposer votre propre fournisseur openid, cela ne vaut pas le coup pour l'instant. L'idée d'openid est que vous vous inscrivez UNIQUEMENT auprès d'un fournisseur, et ensuite vous confirmez que vous possédez cette URL pour tout site qui veut l'utiliser pour vous identifier (au lieu du nom d'utilisateur/mot de passe)

Faites sens?

-Oisin

+0

Merci! Cette petite pépite était ce qui me manquait. J'adorerais accepter 2 réponses, mais l'autre réponse contenait plus de détails techniques que je recherchais aussi. –

Questions connexes