facebookで使われている
アクセストークンの考え方の使い方。
1) ASP.NET ベースの Web アプリケーションで同じ概念を実装できますか?
2)この概念を使用して、Web サービス ASMXおよびWCFにアクセスするためのセキュリティを追加できますか?
2 に答える
長い間、投稿した答えを見つけました。
私が間違っている場合は、私の答えを確認してください。
1) Facebook サーバー フロー認証では、ユーザーの認証に成功すると、Facebook は認証コード パラメーター name を codeとして生成します。
2) 2 番目のステップでは、client_secret、client_id、redirect_uri を使用してこのすべてのパラメーター認証コードを使用し、状態がWebrequestを呼び出すか、成功し た場合はサービスを呼び出します。
3) このaccessTokenは、指定されたスコープで名、姓、誕生日などのユーザー情報を取得するために使用されます。
これは、有効な accessToken を安全な場所に保存するか、さらに使用することにより、WCF および ASMX Web サービスで使用される一般的なシナリオです。
1) アクセス トークンは、いくつかのパラメーターからの単なるハッシュです。
MD5(userName, userMail, someSalt, someOtherStuff)
したがって、好きな方法で確実に実装できます。secret
ただし、現在のユーザーのみが取得できる情報が含まれている場合はより良い
2) はい、できます。フェイスブックのようなソーシャルネットワークのように:
サーバー側 (サービスが実行されている場所) で認識されているアプリケーションの秘密鍵と、アプリやユーザー、その他の情報について Facebook API から取得できる署名があります。
Facebook アプリはその署名を取得し、それを使用して、userLogin、アプリケーション スコアなどの他のパラメーターとハッシュサムを作成できます。サーバーに送信します。
サーバー側では、パラメーターに基づいてアプリケーションが行うのと同じ方法で署名を生成します。署名が同じ場合、リクエストは有効です。知っている場合-誰かが汚いことをしようとしています:)