私はすべての認証の部分を動作させることができましたが、私は登録の設定について混乱しています。ASP.NET、OpenIDと登録の混乱
登録すると、OpenIDが既存のアカウントに添付されていない場合は、新しいアカウントを作成する必要があります。
私は単に登録ページ(登録用フィールドから)に戻り、ユーザーが登録されていれば別のページにリダイレクトする必要がありますか?
最初にユーザーに署名しなくても(formsauthentication.redirectfromloginpage)、すべてのページで新しいものであるかどうかをチェックすることなく、クリーンでシンプルな登録フローを設定する方法はありますか?
申し訳ありませんが、これはひどく言われている場合、私はそれを説明することは困難です他のほとんどのもののように!
おかげ
実際、私はそれについて考えても個人情報は必要ありません。私はいつもそれをFacebookスタイルにすることができます(少なくとも英国では)、後で自発的にユーザー名を入力させることができます。ありがとう。ああ、ところで、あなたのブログはOpenIDに関連したことで私を何度も助けてくれました。素晴らしい仕事をありがとう! – j82374823749
最後に、ユーザーが入力したOpenIDを「正規化」してプロバイダにリダイレクトする方法があります。例えば、ユーザは "abcd.myopenid.com"と入力することができますが、そのOpenIDとプロバイダから返されたものは "http://abcd.myopenid.com/"です – j82374823749
私は本当に正規化をしてうれしいです多くの人々がそれを間違えてしまう傾向があるので、セキュリティホールにつながる疑問。 ユーザーが入力した内容を「正規化」することはできますが、それはいかなる意味でも信頼できませんので、保存しないでください。ユーザーアカウントを検索するために保存して使用する*唯一の*識別子は、肯定的なアサーションでプロバイダから返されるクレームIDです。 OpenID仕様はこの点でさらに深くなっていますが、DotNetOpenAuthを使ってこの作業をすべて行い、IAuthenticationResponseオブジェクトからClaimedIdentifierを取得するだけです。 –