OpenIdの新機能です。認証が完了するとOpenIdの使い方を理解するのに少し問題があります。openId - userテーブルを使用してサイトを開発するベストプラクティス?
私は新しいサイトを作成していますが、openId認証が機能する上で問題はありませんでした。しかし、私はユーザーが一度ログインするとどのようにユーザー関連のデータを保存する必要があるのか分かりません。
openIdの前に、自分自身の登録プロセス、固有のUserId(整数)を持つUserTable、あるユーザの活動に関連するデータは、そのユーザを識別するUserId列を有するだけである。
テーブルでOpenId IDを使用するべきですか?本当にシンプルなOpenId - > UserIdテーブルを作成して、すべてのログインがマップされ、以前に保存されたデータを持つべきですか?また、ユーザーが異なるOpenIdプロバイダを使用する場合はどうなりますか?
だから私は ...新しい行を作成しない場合は、ユーザーが認証されたとき、私は私のユーザーテーブルを確認する必要がありますし、OpenIDのが存在するかどうかを確認することを推測しかし、どのように(安全な方法では)人々を許可しません複数のOpenIdを既存のユーザーIDにマップするには? – Bjorn
実際、ユーザーに未知のOpenIDが付いている場合は、新しいアカウントを作成するか、既存のアカウントにバインドするかどうかを尋ねるのが最善です(後者の場合、ユーザーは他のOpenID)。 OpenIDを安全に管理する方法については、多かれ少なかれUIのことです。解決策の1つは、成功した 'OpenID'ラウンドトリップ(または迷惑なアイデンティティアサーション)の後に確認を求めることです。もう1つは、ラウンドトリップに特別なナンスまたはクッキーを使用することです。あなたが思いつくものは何でも。 –