17:47:50)追加された行はこの色です。削除された行はこの色です。.NET開発基盤部会>https://www.osscons.jp/dotNetDevelopmentInfrastructure/]]」によって運営されています。Identity]]は、以下の[[クレームベース認証]]のセキュアトークンサービス(STS)のEndpoint追加をサポートしている。2.0の[[基本4フロー>OAuth#c8a23ceb]]のセキュアトークンサービス(STS)機能をサポートしている。環境」と認証連携させることもできる。Connect]]」拡張も可能。2.0は認可のプロトコルなので、認証の目的で使用する場合は[[セキュリティ>#c75e8910]]に注意が必要になる。Connect]]のセキュアトークンサービス(STS)のEndpoint追加は、現時点(2016年)では提供されていない。Server、Client共に以下からダウンロード可能。>#a54340f2]]このサンプルは、VS2013・2015で、そのままF5実行可能で非常に便利。[#zd7b2804]ダウンロードしたサンプルを使用して、以下のシナリオの検証ができる。Tokenを暗号化・復号化する秘密鍵を双方のマシン間で一致させる必要がある。-これには、以下のように、machinekeyを両方のweb.configファイルに追加する必要がある。</system.web>-machineKeyセクションの生成には、以下のツールが使えそう。以外の部分で、強制されている実装を&color(red){朱書き};に設定した。[#a0c59c8d]-client_id--引継:認可エンドポイントまで。redirect_uriで、redirectエンドポイントの決定に使用される。---&color(red){認可・Tokenエンドポイント間の一致は強制的+自動検証};-redirect_uri--引継:認可エンドポイントまで。redirect_uriで、redirectエンドポイントの決定に使用される。---client_idのredirectエンドポイントとの部分一致検証処理は自前で実装する。---&color(red){認可・Tokenエンドポイント間の一致は強制的+自動検証};-state--引継:認可・Redirectエンドポイントまで自動引継--検証:Redirectエンドポイントで自前で実装-scope--引継:---認可エンドポイントまで。[#r8ad5c39]-client_id~--引継:認可エンドポイントまで。redirect_uriで、redirectエンドポイントの決定に使用される。-redirect_uri--引継:認可エンドポイントまで。redirect_uriで、redirectエンドポイントの決定に使用される。---client_idのredirectエンドポイントとの部分一致検証処理は自前で実装する。Identityを使用する。Tokenの発行には、ClaimsIdentityを使用する。MVCアプリケーションの認可エンドポイント上---Cookie認証チケットからClaimsIdentityを生成できる。---以下の方法でTokenを発行する。Tokenを生成する。this.AuthenticationManager.SignIn(identity);--OAuthAuthorizationServerProviderのTokenエンドポイント上---ユーザ情報を使用してClaimsIdentityを生成する。DefaultAuthenticationTypes.ExternalBearer);---以下の方法でTokenを発行する。Tokenを生成する。context.Validated(identity);-ClaimsIdentityにCustomの情報を格納する場合、以下の様にClaimを追加する。[#s99f3248]以下が参考になる。BangBlog~http://bang.hateblo.jp/entry/2012/10/09/002003やはり、サービスによって扱いがマチマチなのは、~redirect_uriパラメタとstateパラメタであるもよう。Server~https://www.asp.net/aspnet/overview/owin-and-katana/owin-oauth-20-authorization-serverこのコンテンツは以下の様な構成になっている。[#a54340f2]以下から、サンプル・コードをダウンロードできる。ServerはOAuthの4つのフローをサポートしている。ServerのEndpointを作成。[#y247ad21].NETクライアント・アプリからHTTPアクセスする際のライブラリとしては、[[DotNetOpenAuth.OAuth2>https://www.nuget.org/packages/DotNetOpenAuth.OAuth2.Client]]を使用している。Client~WebApplicationとして実装。Client~JavaScriptで実装。Client~コンソール・アプリケーションで実装。Client~コンソール・アプリケーションで実装。[#ad1e79f3]実装方法の調査で参照にしたページ。