警告
此內容適用於較舊的 Azure AD v1.0 端點。 針對新專案使用 Microsoft身分識別平臺。
您可以使用 Azure Active Directory (Azure AD) 將驗證和授權新增至 Web 應用程式和 Web API。
本節提供範例的連結,您可以用來深入瞭解 Azure AD v1.0 端點。 這些範例會示範如何完成它,以及可在應用程式中使用的代碼段。 在程式代碼範例頁面上,您將找到詳細的自述主題,以協助需求、安裝和設定。 程序代碼會加上批注,以協助您瞭解重要區段。
備註
如果您有興趣Microsoft Entra V2 程式代碼範例,請參閱 依案例的 v2.0 程式代碼範例。
警告
Active Directory 驗證連結庫的支援將於 2022 年 12 月結束。 在現有操作系統版本上使用ADAL的應用程式將繼續運作,但技術支援和安全性更新將會結束。 如果沒有持續的安全性更新,使用 ADAL 的應用程式將越來越容易受到最新的安全性攻擊模式的影響。 如需詳細資訊,請參閱 將應用程式遷移至 MSAL。
若要瞭解每個範例類型的基本案例,請參閱 Azure AD 的驗證案例。
您也可以在 GitHub 上參與我們的範例。 若要瞭解如何,請參閱 Azure Active Directory 範例和檔。
單頁應用程式
此範例示範如何撰寫使用 Azure AD 保護的單頁應用程式。
| 平台 | 呼叫自己的 API | 呼叫另一個 Web API |
|---|---|---|
|
javascript-singlepageapp | |
|
angularjs-singlepageapp | angularjs-singlepageapp-cors |
Web 應用程式
登入使用者的 Web 應用程式、呼叫 Microsoft Graph 或具有使用者身分識別的 Web API
下列範例說明讓使用者登入的網站應用程式。 其中有些應用程式也會在登入使用者的名稱中呼叫 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) |
|
互動式 | 的一部分 dotnet-native-multitarget |
dotnet-native-desktop dotnet-native-aspnetcore dotnet-webapi-manual-jwt-validation |
| 行動裝置 (UWP) |
|
互動式 | dotnet-native-uwp-wam 此範例使用 WAM,而不是 ADAL.NET |
dotnet-windows-store (使用 ADAL.NET 呼叫單一租戶 Web API 的 UWP 應用程式)
dotnet-webapi-multitenant-windows-store (使用 ADAL.NET 呼叫多租使用者 Web API 的 UWP 應用程式) |
| 行動裝置(Android、iOS、UWP) |
|
互動式 | dotnet-native-multitarget |
|
| 行動裝置 (Android) |
|
互動式 | android |
|
| 行動裝置 (iOS) |
|
互動式 | nativeClient-iOS |
|
| 桌面型電腦(操作台) |
|
用戶名稱/密碼 整合式 Windows 驗證 | dotnet-native-headless |
|
| 桌面(主控台) |
|
使用者名稱/密碼 | java-native-headless |
|
| 桌面(控制台) |
|
裝置代碼流程 | dotnet-deviceprofile |
精靈應用程式 (使用應用程式的身分識別存取 Web API)
下列範例顯示可存取 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。 第二個範例示範如何處理條件式存取。
| 平台 | 呼叫 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圖形範例
如需示範 Microsoft Graph API 之不同使用模式的範例和教學課程,包括使用 Azure AD 進行驗證,請參閱 Microsoft Graph 社群範例和教學課程。
ASP.NET Core 2.0
ASP.NET 4.5