1

最近、LightOpenID を発見しました。これは、次のすべての Web サイトのログイン システムとして使用する予定です。

ユーザーが LighOpenID で登録/ログインするときに情報を取得しているので、USERS テーブルでユーザーの電子メールを一意の ID として使用することが技術的に問題ないのか、それとも悪い考えなのか知りたいです。

みんなありがとう 、

FX

4

2 に答える 2

1

考慮すべきこと:

  1. OpenID アカウントに電子メール アカウントをリンクすることは必須ではありません。
  2. メールアドレスがある場合、問い合わせてもサーバーから戻ってくる保証はありません。
  3. アドレスを取得したとしても、それを検証する必要があります (たとえば、ランダムなトークンを含む電子メール メッセージを送信するなど)。
  4. ユーザーはおそらく複数の OpenID 識別子を所有するでしょう (Google や Yahoo などのいくつかの主要なサービスでアカウントを開設するとすぐに、そのような状況になります)。同じ電子メール アドレスを共有する人もいれば、共有しない人もいれば、電子メール アドレスを設定していない人もいます。
  5. ユーザーが裏で自分の電子メール アドレスを変更すると、サイトのアカウントが失われます。
  6. 電子メールをキーとして使用しても、私が考えることができる利点はありません。

私のアドバイスは、OpenID を使用したい場合は、正しく使用する必要があるということです。$openid->identity()検証が成功した後に OpenID URL を読み取り、それを使用してユーザーを識別します。

さらに:

  • URL は長くなる可能性があることに注意してください。VARCHAR(100) 列に詰め込もうとしないでください。
  • Stack Overflow のように、リンクされた ID を実装することをお勧めします。
于 2011-11-21T08:56:05.647 に答える
0

それはあなたのサービスに依存します。通常、すべての電子メール アドレスは 1 人だけに割り当てられます。ユーザーごとに複数のアカウントが必要ない場合は、問題ありません。家族のメールアドレスを持っている家族もいます。しかし、彼らも同じアカウントを使用していると思います。

OpenID を一意の ID として使用しないのはなぜですか? OpenID は一意であり、ログインに OpenID のみを使用する場合は、電子メール アドレスを取得する前に OpenID を取得します。

于 2011-03-24T14:06:03.573 に答える