2

パートナー サイトのグループのプロバイダーとして OpenID を実装することを検討しています。問題は、このサイトは子供 (13 歳未満) 向けであるため、対処する必要があるビジネス上の制限があります。主に、パートナー以外のサイトではアカウントを使用できません(承認されたすべてのパートナーと協力して、それらが確実に満たされるようにします。業界のプライバシー/セキュリティ規制)。

以前は独自のメンバーシップとパートナー システムを展開していましたが、業界で受け入れられているエンジンに移行して、自分自身とパートナーの生活を楽にしたいと考えています。

では、OpenID アクセスを一部のサイトのみに制限する組み込みの方法はありますか?それとも、これを達成するためにコードとアクセス許可に深いコード変更を加える必要がありますか?

4

3 に答える 3

5

そのとおり。あなたの dotnetopenid タグに基づいて、それがあなたが使用しているライブラリだと思います。これは素晴らしいことです。入ってくる IAuthenticationRequest には Realm プロパティがあります。これを使用して、レルムの値がパートナー サイトのレルム URL のホワイトリストに表示されていることを確認します。存在する場合は、通常の認証手順に進み、IAuthenticationRequest.IsAuthenticated を true に設定して戻ります。Realm が認識されない場合、この 13 歳未満のユーザーは OpenID を使用してパートナー以外のサイトにログインしようとしています。IsAuthenticated = false を設定して戻ると、ログインが中止されます。

特定のシナリオについてさらに質問がある場合は、お気軽に dotnetopenid@googlegroups.com までメールでお問い合わせください。

于 2009-02-18T04:39:54.407 に答える
2

それはすべて依存します。
これは OpenID プロトコルで可能です。ライブラリがサポートしているかどうかは問題です。サイトのサインイン権限の制限については、ドキュメントと構成ファイルを参照してください。
自分でプログラミングするだけなら、かなり簡単です。OpenID にサインインすると、Web サイトにリダイレクトされ、ユーザーがサインインできるかどうかが確認されます。通常はユーザーに尋ねますが、あなたの場合は、ホワイトリストを見て承認されているかどうかを確認できます。

于 2009-02-18T04:04:07.270 に答える
1

私自身は OpenId を実装していません。

OpenId で yahoo にログインすると、stackoverflow.com に自分の ID を提供してほしいかどうか尋ねられます。この時点で、プロバイダー (yahoo など) はターゲット サイトを簡単に調べて、承認されたパートナーかどうかを確認し、承認されていない場合はプロセスを停止できます。

于 2009-02-18T03:36:20.783 に答える