Azure Active Directory 認証ライブラリ
警告
このコンテンツは、以前の Azure AD v1.0 エンドポイント用です。 新しいプロジェクトには Microsoft ID プラットフォームを使用します。
Azure Active Directory 認証ライブラリ (ADAL) v1.0 を使用すると、アプリケーション開発者はクラウドまたはオンプレミスの Active Directory (AD) に対してユーザーを認証し、API 呼び出しをセキュリティで保護するためのトークンを取得できます。 ADAL を使用すると、次のような機能を使用して開発者が認証を簡単に行うことができます。
- アクセス トークンと更新トークンを格納する構成可能なトークン キャッシュ
- アクセス トークンの有効期限が切れ、更新トークンを使用できる場合のトークンの自動更新
- 非同期メソッド呼び出しのサポート
注
Azure AD v2.0 ライブラリをお探しですか? MSAL ライブラリ ガイドを確認してください。
警告
Azure Active Directory 認証ライブラリ (ADAL) は非推奨です。 Microsoft Authentication Library (MSAL) を使用してください。 ADAL を使用する既存のアプリケーションがある場合は、それらを MSAL に移行してください。
Microsoft でサポートされているクライアント ライブラリ
プラットホーム | 図書館 | ダウンロード | ソースコード | サンプル | リファレンス |
---|---|---|---|---|---|
.NET クライアント、Windows ストア、UWP、Xamarin iOS、Android | ADAL .NET v3 | NuGet | GitHub | デスクトップ アプリ | |
JavaScript | ADAL.js | GitHub | GitHub | シングルページ アプリ | |
iOS、macOS | ADAL | GitHub | GitHub | iOS アプリ | |
アンドロイド | ADAL | Maven の |
GitHub | Android アプリ | JavaDocs の |
Node.js | ADAL | npm | GitHub | Node.js Web アプリの | リファレンス |
ジャワ | ADAL4J | Maven の |
GitHub | Java Web アプリ を する | リファレンス |
パイソン | ADAL | GitHub | GitHub | Python Web アプリの を する | リファレンス |
Microsoft でサポートされているサーバー ライブラリ
プラットホーム | 図書館 | ダウンロード | ソースコード | サンプル | リファレンス |
---|---|---|---|---|---|
.NET | OWIN for AzureAD | NuGet | GitHub | MVC アプリ の | |
.NET | OWIN for OpenIDConnect | NuGet | GitHub | Web アプリ | |
.NET | OWIN for WS-Federation | NuGet | GitHub | MVC Web App を する | |
.NET | .NET 4.5 の ID プロトコル拡張機能 | NuGet | GitHub | ||
.NET | .NET 4.5 用 JWT ハンドラー | NuGet | GitHub | ||
Node.js | Azure AD Passport | npm | GitHub | Web API |
シナリオ
リモート リソースにアクセスするクライアントで ADAL を使用する 3 つの一般的なシナリオを次に示します。
デバイスで実行されているネイティブ クライアント アプリケーションのユーザーの認証
このシナリオでは、開発者は、Web API などのリモート リソースにアクセスする必要があるモバイル クライアントまたはデスクトップ アプリケーションを持っています。 Web API は匿名呼び出しを許可せず、認証済みユーザーのコンテキストで呼び出す必要があります。 Web API は、特定の Azure AD テナントによって発行されたアクセス トークンを信頼するように事前に構成されています。 Azure AD は、そのリソースのアクセス トークンを発行するように事前に構成されています。 クライアントから Web API を呼び出すために、開発者は ADAL を使用して Azure AD での認証を容易にします。 ADAL を使用する最も安全な方法は、ユーザー資格情報を収集するためのユーザー インターフェイスをレンダリングすることです (ブラウザー ウィンドウとしてレンダリングされます)。
ADAL を使用すると、ユーザーの認証、Azure AD からのアクセス トークンと更新トークンの取得、アクセス トークンを使用した Web API の呼び出しが簡単になります。
Azure AD への認証を使用するこのシナリオを示すコード サンプルについては、「Native Client WPF Application to Web API 」を参照してください。
Web サーバーで実行されている機密クライアント アプリケーションの認証
このシナリオでは、開発者は、Web API などのリモート リソースにアクセスする必要があるサーバー上で実行されているアプリケーションを持っています。 Web API は匿名呼び出しを許可しないため、承認されたサービスから呼び出す必要があります。 Web API は、特定の Azure AD テナントによって発行されたアクセス トークンを信頼するように事前に構成されています。 Azure AD は、そのリソースのアクセス トークンをクライアント資格情報 (クライアント ID とシークレット) を使用してサービスに発行するように事前に構成されています。 ADAL は、Web API の呼び出しに使用できるアクセス トークンを返す Azure AD によるサービスの認証を容易にします。 ADAL は、アクセス トークンをキャッシュし、必要に応じて更新することで、アクセス トークンの有効期間の管理も処理します。 このシナリオを示すコード サンプルについては、「Daemon console Application to Web API」を参照してください。
ユーザーに代わってサーバーで実行されている機密クライアント アプリケーションの認証
このシナリオでは、開発者は、Web API などのリモート リソースにアクセスする必要があるサーバー上で実行されている Web アプリケーションを持っています。 Web API は匿名呼び出しを許可しないため、認証されたユーザーの代わりに承認されたサービスから呼び出す必要があります。 Web API は、特定の Microsoft Entra テナントによって発行されたアクセス トークンを信頼するように事前構成されており、Microsoft Entra ID は、クライアント資格情報を使用してサービスにそのリソースのアクセス トークンを発行するように事前構成されています。 Web アプリケーションでユーザーが認証されると、アプリケーションは Microsoft Entra ID からユーザーの承認コードを取得できます。 Web アプリケーションは、ADAL を使用して、Microsoft Entra ID からアプリケーションに関連付けられている認証コードとクライアント資格情報を使用して、ユーザーに代わってアクセス トークンと更新トークンを取得できます。 Web アプリケーションがアクセス トークンを所有すると、トークンの有効期限が切れるまで Web API を呼び出すことができます。 トークンの有効期限が切れると、Web アプリケーションは ADAL を使用して、以前に受信した更新トークンを使用して新しいアクセス トークンを取得できます。 このシナリオを示すコード サンプルについては、ネイティブ クライアントから Web API へのクライアントから Web へのを参照してください。
こちらもご覧ください
- Azure Active Directory 開発者ガイド
- Azure Active Directory の認証シナリオの
- Azure Active Directory のコード サンプル