SMFユーザーアカウントに基づいて独自のOpenIDエンドポイントを実装しようとしています。私は自分のコードをphpMyOpenIDといくつかのSMF認証コードに基づいています。
これまでのところ正常に動作します。エンドポイントを使用して、任意のサイトにログイン/登録できます。SMFにログインしていない場合は、ログインを要求され、そのSMFログインが成功すると、SMFはそれを受け入れます。
ただし、異なるSMFログイン間で違いはないようです。つまり、別のユーザーが、サイトXでエンドポイントを使用しようとし、SMFアカウントでログインし、サイトXのユーザーアカウントにアクセスしたと報告しました(以前にそのサイトでOpenIDエンドポイントを登録しました)。
どういうわけかSMFログインを送信するか、SMFログインごとになんらかの方法で一意にする必要があると思います。私がしなければならないことはおそらく些細なことなので、私はここでSOについて尋ねると思いました-おそらく、修正する必要のあることがもっとあるかもしれません。
ご覧になりたい場合は、コード(PHPのみ)は次のとおりです:http: //github.com/albertz/smf-openid-server
または、SMFログインごとに一意にするために何をする必要があるかを説明してください。
私が計画しているもう1つのプロジェクトは、マルチプレイヤーC++ゲームのOpenIDクライアントです。ホスティング業者は、OpenIDを介して認証できる人からのログインのみを許可するオプションがあります。また、特定の人だけがログインできるようにしたいと思います。OpenIDログインに基づいて一意の文字列を取得する一般的な方法は何ですか?この場合、私はまたはのようなものを考えhttp://{smf-openid-endpoint}/{smf-user}
ましhttp://www.google.de/profiles/{google-user}
た。そのような文字列を取得するための標準的な方法は何ですか?
この他の質問は私の主な質問に関連しているかもしれないと思うので、私はそれをここにも置いています。
関連する質問も参照してください:識別子のURLは一意ですか?異なる用語は何ですか?