2

OpenId、Google、Facebook認証システムなどの集中認証システムの1つを使用したいと思います。しかし、私はそれらのすべてがプロセスのサインアップ部分のためにコレスポンデントサーバーへのHTTPリダイレクトを使用していることを発見しました。

これに関する私の問題は、私のシステムにさまざまなクライアントを提供したいということです。それらのいくつかはスタンドアロンアプリケーションであるため、クライアントにミニブラウザ(または同様のもの)を実装しない限り、HTTPリダイレクト戦略は機能しません。

このフェデレーション認証をプログラムで行うことは可能ですか?

ありがとう、

グスタボ。

4

2 に答える 2

3

これらのシステムの信頼とセキュリティはブラウザに依存しています。ユーザーとして、ブラウザがプロバイダーに接続していることを通知した場合にのみ、資格情報を入力します。つまり、安全な接続を示し、フィッシング対策のシールを表示します。

アプリケーションまたはWebサイトで私の資格情報を要求し、私に代わって認証セッション全体を実行することができますが、なぜ私はあなたにそれらを与えるのでしょうか?アプリケーションに埋め込まれたブラウザーまたはWebサイトのiframeを表示できますが、なぜ私の資格情報を取得しないと信頼するのでしょうか。

そして、便利な点があります。私のブラウザーにはプロバイダーからのCookieがあるため、ほとんどの場合、資格情報を入力する必要さえありません。

スタンドアロンアプリケーションの最善のアプローチは、アプリケーションサーバーとのセッションを確立してから、ブラウザを起動して、セッション識別子を使用してユーザーをWebサーバーに誘導し、そのセッションを認証することだと思います。次に、認証が完了し、アプリケーションに戻る可能性があることを伝えます。Cookieまたは保存されたパスワードを使用すると、とにかくアプリケーションにクレデンシャルを入力するよりも高速になります。

于 2011-03-01T17:24:49.733 に答える
0

@aazの提案に基づいて、アプリケーションがインターネットにどの程度公開されているかに応じて、HttpListenerを作成し、return_toURLがリスナーを指すようにすることができます。ただし、ファイアウォールの背後では機能しない可能性があります。

于 2011-04-05T06:57:36.090 に答える