あなたはこれを行うための正しい軌道に乗っています。次の手順を実行する必要があります。
- AD で、Web アプリケーション用の「アプリケーション」を作成する必要があります (既に作成済みだと思います)。
- アプリケーションの [構成] タブで、アプリケーションのアクセス許可を Windows Azure Active Directory の既存のアプリケーションに割り当てる必要があります。この場合、アプリケーションにはおそらく完全な
Directory.ReadWrite.All
アクセス許可が必要です。アズール ポータル
- アプリケーションの新しいキーを作成します (まだ作成していない場合)。
参照: https://msdn.microsoft.com/Library/Azure/Ad/Graph/howto/azure-ad-graph-api-permission-scopes
これで、Azure AD REST API にアクセスするために、Graph API を使用してクライアント資格情報フローを実行するように設定されましPOST
た。次のエンドポイントに対して a を実行します。
https://login.microsoftonline.com/(your AD tenant ID)/oauth2/token
Content-Type: x-www-form-urlencoded
grant_type=client_credentials
&client_id=(your webapp client id)
&client_secret=(the key you just created)
&resource=https://graph.windows.net
このリクエストにより、(できれば) アクセス トークンが返され、Graph API と通信できるようになります。
ADAL または同様の SDK を使用してこれを行うこともできますが、これはバックグラウンドで行われます。
アクセス トークンをAuthorization
ヘッダー コンテンツとして使用すると、ドキュメント ( https://msdn.microsoft.com/en-us/library/azure/ad/graph/howto/azure-ad- graph-api-operations-overview )、たとえば次のように:
GET https://graph.windows.net/(your AD domain)/users?api-version=1.5 HTTP/1.1
Authorization: eyJ0eXAiOiJKV1QiL...
次のような応答が返されます。
200 OK
{
"odata.metadata": "https://graph.windows.net/(your domain ID)/$metadata#directoryObjects/Microsoft.DirectoryServices.User",
"value": [
{
"odata.type": "Microsoft.DirectoryServices.User",
"objectType": "User",
"objectId": "(some GUID)",
"deletionTimestamp": null,
"accountEnabled": true,
....
エンドポイントに投稿すると、/users?api-version=1.5
ユーザーが作成されます。