web-dev-qa-db-ja.com

Windows AzureADテナントアプリケーションのResourceパラメーターは何ですかoAuth 2.0仕様

カールを使用してoAuth 2.0を使用してWindows Azure ADテナントアプリケーションで認証プロセスを呼び出そうとしています。しかし、以下のサンプルコードのパラメーター "resource"が何であるか理解できませんでした:

curl -X POST https://login.windows.net/<<YOUR--AD-TENANT-ID>>/oauth2/token  \
  -F redirect_uri=http://google.com \
  -F grant_type=authorization_code \
  **-F resource=https://management.core.windows.net/ \**
  -F client_id=87a544fd-... \
  -F code=AwABAAAAvPM1...8sSAA
18
Dharshana

リソースパラメータは、クライアントがユーザーに代わってアクセスしたいWebAPIの識別子を示します。 OAuthのほとんどのフローには、リソース所有者(別名ユーザー)、クライアント(別名アプリ)、権限(別名IDプロバイダー)およびリソース(別名webapi)の4つのパーティが含まれます。権限が生成するアクセストークンはリソース識別子です。

Azure ADの場合、リソースWebAPIのクライアントIDまたはアプリID URIを使用できます(Azure管理ポータルのAzure ADアプリケーションの[構成]タブでそれらを見つけます)。たとえば、クライアントがユーザーに代わってAzure AD Graph APIにアクセスするためのトークンを取得するようにしたい場合は、リソース " https://graph.windows.net のトークンを要求します。 」この例では、リソースパラメーター値はAzure Service ManagementAPIを識別します。

以下は、Azure AD SDKを使用してWebAPIへのトークンをリクエストするクライアントアプリのコードサンプルです。リソースパラメータのさまざまな使用方法です。

お役に立てれば。

25
Dushyant Gill

簡単に言うと、リソースパラメータには、アクセスしたいWeb APIリソースのURIが含まれています。

OAuthプロトコルは、トークンベースのリソースへのアクセスに従います。パラメータ「resource」は、異なるWEBAPIのトークンを区別するのに役立ちます。

たとえば、GRAPH APIにアクセスする場合、リソースは次のようになります-" https://graph.windows.net/ "

Azureにアクセスする場合は、resourceパラメーターを-" http://management.Azure.com "として指定する必要があります。

必須ではありませんが、このパラメーターを使用することをお勧めします。

6
Rishabh Soni