web-dev-qa-db-ja.com

Oauth Active Directoryアカウントの2トークン

過去にOwinを使用してMvc Web Apiプロジェクトにトークンエンドポイントを作成し、oauth 2.0トークンに「 Resource Owner Password Credentialsgrant typeここで、アクセストークンプロバイダーは、データベースクライアントテーブルをチェックして、モバイルクライアント(Cordova用Visual Studioツールで開発されたマルチプラットフォームアプリ)によって提供された資格情報の有効性を確認します。

このプロジェクトでは、Web ApiはActive Directory Windowsドメインアカウントによって使用されるマルチプラットフォームモバイルアプリによって消費されます

Owin Oauth 2.0を使用してこれらのユーザーにアクセストークンを付与したいのですが、これらの資格情報の有効性を確認する方法がわかりません。

私が考えていたのは、/token背後のエンドポイント"basic authentication"およびアクセストークンプロバイダーのコードで、認証から使用される場合、Asp.netパイプラインによって自動的に作成されるIDからユーザーを取得します。

それはうまくいくものですか?

AD WindowsアカウントにOauth 2.0を使用することをお勧めしますか?

注:

Active DirectoryがOauth 2.0エンドポイントを単独で提供できるかどうかも調査しています。

17
systempuntoout

Active Directoryフェデレーションサービスを使用してOAuth2トークンを取得する方法の非常に優れたチュートリアルを次に示します。 https://technet.Microsoft.com/en-us/library/dn633593.aspx 。ウォークスルー全体を取得するには、下部にあるすべてのリンクをたどる必要があります。

。NET用Windows Azure AD認証ライブラリ を使用することに注意してください。しかし、そのドキュメントによれば、そのライブラリはAzure Active DirectoryとオンプレミスActive Directoryの両方に使用されます。

ワークフローに関しては、認証されると、ベアラトークンを取得してWebAPIに提示できるようになります。次に、WebAPIは「AD FSによって発行されたことを確認するためにトークンの署名を検証し、トークンがまだ有効で有効期限が切れていないかどうかを確認し、トークン内の他のクレームも検証する可能性があります。許可され、要求された情報が応答で送信されるか、または許可されず、データは送信されません。」 - https://technet.Microsoft.com/en-us/library/dn633593.aspx

11
Brandon O'Dell

AD上でADFS 3.0を使用して、OAuth 2.0 Authorization Server機能を提供します: http://blog.scottlogic.com/2015/03/09/OAUTH2 -Authentication-with-ADFS-3.0.html

「基本認証」の背後にトークンエンドポイントを配置しても、ユーザーではなくトークンエンドポイントでクライアントを認証するため、役に立ちません。ただし、「基本認証」の背後に許可エンドポイントを配置することもできます。

8
Hans Z.