Azure Active Directory のコード サンプル (v1.0 エンドポイント)
警告
このコンテンツは、以前の Azure AD v1.0 エンドポイント用です。 新しいプロジェクトには Microsoft ID プラットフォームを使用します。
Azure Active Directory (Azure AD) を使用すると、Web アプリケーションおよび Web API に認証と承認を追加できます。
このセクションでは、Azure AD v1.0 エンドポイントの詳細を学ぶために使用できるサンプルへのリンクを提供します。 これらのサンプルでは、その実行方法と、アプリケーションで使用できるコード スニペットを示します。 コード サンプルのページには、要件、インストール、設定に関する詳細な Readme トピックが含まれています。 また、重要なセクションの理解に役立つように、コードにはコメントが付けられています。
注意
Microsoft Entra V2 のコード サンプルに関心がある場合は、「シナリオ別の v2.0 コード サンプル」をご覧ください。
警告
Active Directory 認証ライブラリ (ADAL) のサポートは 2022 年 6 月 30 日に終了します。 既存の OS バージョンで ADAL を使用しているアプリは引き続き動作しますが、テクニカル サポートとセキュリティ更新プログラムは終了します。 継続的なセキュリティ更新プログラムがなければ、ADAL を使用しているアプリは、最新のセキュリティ攻撃パターンに対してますます脆弱になります。 詳細については、「アプリを MSAL に移行する」を参照してください。
各サンプル タイプの基本的なシナリオを理解するには、「Azure AD の認証シナリオ」をご覧ください。
GitHub でサンプルに協力することもできます。 その方法については、Azure Active Directory のサンプルとドキュメントをご覧ください。
シングルページ アプリケーション
このサンプルでは、Azure AD を使用してセキュリティ保護されているシングルページ アプリケーションの作成方法を示します。
プラットフォーム | 独自 API の呼び出し | 別の Web API の呼び出し |
---|---|---|
javascript-singlepageapp | ||
angularjs-singlepageapp | angularjs-singlepageapp-cors |
Web アプリケーション
Web アプリケーションでのユーザーのサインインと、ユーザーの ID による Microsoft Graph または Web API の呼び出し
次のサンプルでは、ユーザーがサインインする Web アプリケーションを示しています。 これらのアプリケーションの中には、サインインしたユーザーの名前で Microsoft Graph または独自の Web API も呼び出すものがあります。
プラットフォーム | ユーザーのサインインのみ | Microsoft Graph の呼び出し | 別の ASP.NET または ASP.NET Core 2.0 Web API の呼び出し |
---|---|---|---|
ASP.NET Core 2.0 | dotnet-webapp-openidconnect-aspnetcore | webapp-webapi-multitenant-openidconnect-aspnetcore (Azure AD Graph) | dotnet-webapp-webapi-openidconnect-aspnetcore |
ASP.NET 4.5 | webapp-WSFederation-dotNet dotnet-webapp-webapi-oauth2-useridentity | dotnet-webapp-multitenant-openidconnect (Azure AD Graph) | |
python-webapp-graphapi | |||
java-webapp-openidconnect | |||
php-graphapi-web |
ロールベースのアクセス制御 (承認) を示す Web アプリケーション
次のサンプルは、ロールベースのアクセス制御 (RBAC) を実装する方法を示しています。 RBAC は、Web アプリケーションの特定の機能のアクセス許可を特定のユーザーに制限するために使用されます。 Azure AD グループに属しているか、特定のアプリケーション ロールが割り当てられているかに応じて、ユーザーには権限が与えられます。
プラットフォーム | サンプル | 説明 |
---|---|---|
ASP.NET 4.5 | dotnet-webapp-groupclaims dotnet-webapp-roleclaims | Azure AD のロールを承認に使用する .NET 4.5 MVC Web アプリ |
Microsoft Graph または Web API を呼び出すデスクトップおよびモバイルのパブリック クライアント アプリケーション
次のサンプルは、ユーザーの名前で Microsoft Graph または Web API にアクセスするパブリック クライアント アプリケーション (デスクトップ/モバイル アプリケーション) を示しています。 デバイスとプラットフォームに応じて、アプリケーションはさまざまな方法でユーザーにログインできます (フロー/許可)。
- 対話型
- サイレント型 (Windows の統合 Windows 認証、またはユーザー名/パスワードを使用)
- 対話型サインインの別のデバイスへの委任 (Web コントロールを提供しないデバイスで使用されるデバイス コード フロー)
クライアント アプリケーション | プラットフォーム | フロー/許可 | Microsoft Graph の呼び出し | ASP.NET または ASP.NET Core 2.x Web API の呼び出し |
---|---|---|---|---|
デスクトップ (WPF) | Interactive |
dotnet-native-multitarget の一部 |
dotnet-native-desktop dotnet-native-aspnetcore dotnet-webapi-manual-jwt-validation |
|
モバイル (UWP) | Interactive | dotnet-native-uwp-wam このサンプルでは、ADAL.NET ではなく WAM を使用します |
dotnet-windows-store (ADAL.NET を使用してシングル テナント Web API を呼び出す UWP アプリケーション)
dotnet-webapi-multitenant-windows-store (ADAL.NET を使用してマルチテナント Web API を呼び出す UWP アプリケーション) |
|
モバイル (Android、iOS、UWP) | Interactive | dotnet-native-multitarget |
||
モバイル (Android) | Interactive | android |
||
モバイル (iOS) | Interactive | nativeClient-iOS |
||
デスクトップ (コンソール) | ユーザー名/パスワード 統合 Windows 認証 | dotnet-native-headless |
||
デスクトップ (コンソール) | ユーザー名/パスワード | java-native-headless |
||
デスクトップ (コンソール) | デバイス コード フロー | dotnet-deviceprofile |
デーモン アプリケーション (アプリケーションの ID で Web API にアクセス)
次のサンプルは、ユーザーなしで (アプリケーション ID で) Microsoft Graph または Web API にアクセスするデスクトップまたは Web アプリケーションを示しています。
クライアント アプリケーション | プラットフォーム | フロー/許可 | ASP.NET または ASP.NET Core 2.0 Web API の呼び出し |
---|---|---|---|
デーモン アプリ (コンソール) | アプリ シークレットまたは証明書によるクライアント資格情報 | dotnet-daemon dotnet-daemon-certificate-credential | |
デーモン アプリ (コンソール) | 証明書によるクライアント資格情報 | dotnetcore-daemon-certificate-credential | |
ASP.NET Web アプリ | クライアントの資格情報 | dotnet-webapp-webapi-oauth2-appidentity |
Web API
Azure Active Directory によって保護される Web API
次のサンプルは、Azure AD で Node.js Web API を保護する方法を示しています。
この記事の前述のセクションには、クライアント アプリケーションから ASP.NET または ASP.NET Core Web API を呼び出す方法を示す他のサンプルも掲載されています。 これらのサンプルについては、このセクションでは触れませんが、前述または以下の表の最後の列に記載されています。
プラットフォーム | サンプル |
---|---|
node-webapi |
Microsoft Graph または別の Web API を呼び出す Web API
次のサンプルでは、別の Web API を呼び出す Web API を示します。 2 番目のサンプルでは、条件付きアクセスを処理する方法を示します。
プラットフォーム | Microsoft Graph の呼び出し | 別の ASP.NET または ASP.NET Core 2.0 Web API の呼び出し |
---|---|---|
ASP.NET 4.5 | dotnet-webapi-onbehalfof dotnet-webapi-onbehalfof-ca | dotnet-webapi-onbehalfof dotnet-webapi-onbehalfof-ca |
Microsoft Graph のその他のサンプル
Azure AD での認証を含む、Microsoft Graph API のさまざまな使用パターンを示すサンプルとチュートリアルについては、Microsoft Graph コミュニティのサンプルとチュートリアルをご覧ください。