3

簡単なシナリオ:

ユーザーが OpenID を使用してサインアップできる Web アプリケーションがクラウドにあるとします。(代わりに Windows Live ID を使用しても構いません) 彼らはログインして、好きな色などのメタ データを更新できます。

この情報をデスクトップ クライアントから取得したい場合、どうすればよいですか? この情報を照会するには、おそらく Web サービスを公開する必要がありますが、認証はどうでしょうか?

DotNetOpenAuthがあり、Windows Identity Foundationがあり、CardSpace などがあります。
しかし、どこから始めればよいのでしょうか。それらのどれが必要ですか?3つすべてが必要ですか?
STS はどうですか? OpenID / Windows Live ID 用のものはありますか?

私が探していることを実行するこれらのテクノロジを使用したサンプルを見た人はいますか? ポインタはありますか?

4

1 に答える 1

2

認証と承認の概念を頭の中で分離してください。Web サイトでのみユーザーを認証します。これは、OpenID、InfoCard、STS、またはユーザー名とパスワードを使用して行うことができます。ユーザー固有の情報を取得するためにサービスを呼び出すクライアント アプリは承認されている必要があります。これは従来、アンチパターンであるユーザー名とパスワードをユーザーに要求することを意味し、OpenID や InfoCard などのより強力な資格情報や別の資格情報を使用すると機能しなくなります。 、ご覧のとおり。

アプリの承認には、OAuth などの委任プロトコルを使用する必要があります。これにより、ユーザーは、資格情報をアプリに公開することなく、デスクトップ アプリがユーザーのプライベート データにアクセスできる Web ページにアクセスできるようになります。

DotNetOpenAuth は、こ​​の完全なシナリオをサポートしています。サンプルの OAuth および OpenID サイトが付属しています。OpenID ログイン (オプションとして InfoCard ログインを含む Web フォーム) を示すプロジェクト テンプレートのいずれか、および OAuth サービス プロバイダーも確認して、両方の Web ユーザーで機能し、これらのクライアント アプリをすぐに承認できるようにすることをお勧めします。箱。

于 2010-03-02T03:41:05.163 に答える