如何在 ASP.NET CORE 5.0 WEB 應用程序中實現 AZURE AD 身份驗證
Last updated
Last updated
在本文中,我將向您展示如何在 ASP.NET Core 5.0 Web 應用程序中實現 Azure AD 身份驗證。我將創建 ASP.NET Core 5.0 項目,並逐步向您展示如何使用它來針對 Azure AD 身份驗證進行身份驗證和授權。
在開始執行本文中給出的步驟之前,您需要一個 Azure 帳戶,以及帶有 .NET 5.0 開發環境的 Visual Studio 2019 步驟。
打開visual studio,點擊右側的新建項目,選擇“Asp.net core web app”,如下圖所示,點擊下一步。
在配置您的新項目部分中,輸入項目的名稱和位置,如下圖所示,然後單擊下一步
在附加信息步驟中,在目標框架中選擇 .NET 5.0,Authentication Type 為 none,選中 Configure HTTPS 複選框,然後單擊 create。
創建項目後,運行項目並從瀏覽器複製項目的 url。我們將在 Azure AD 應用註冊和設置中需要此 url。
使用具有管理員權限的帳戶登錄 Azure 門戶。登錄後,單擊 Azure Active Directory,如下圖所示。
從左側導航中,選擇應用註冊。
然後單擊頂部工具欄中的新註冊。這將打開一個對話框“註冊和應用程序”。
在名稱輸入字段中,輸入您要用於應用程序的名稱。當用戶將被重定向到 Azure Active Directory 進行登錄時,此名稱將顯示在登錄頁面中。
在支持的帳戶類型中,選擇第一個選項。這將允許您自己組織的用戶使用此應用程序登錄。
現在,將重定向 URI 留空,然後單擊註冊。
創建應用程序後,通過單擊其名稱打開應用程序並複制 ClientID 和 TenantID 並隨身攜帶。
接下來,單擊 API 權限。單擊工具欄中的添加權限,然後單擊 Microsoft graph,然後單擊委派權限。這將顯示您選擇的權限列表。profile
從列表中選擇和添加opendid
權限。
接下來,單擊左側導航中的身份驗證,並在平台部分中,添加 Web(如果不存在)。在網頁部分,轉到重定向 URL,然後單擊底部的添加 URI。輸入{your-app-url}/signin-oidc
。例如,輸入https://localhost:44332/signin-oidc
您的本地項目是否在端口 44332 上運行。
打開您的 Web 應用程序的 appsettings.json 並添加以下代碼行。
將your-client-id
和替換your-tenant-id
為您在 azure ad 中進行應用註冊時復制的實際值
接下來,添加包管理器控制台並將以下兩個包引用添加到您的 Web 應用程序。
接下來,在您的項目中打開 startup.cs 並將以下代碼粘貼到行ConfigureServices
前的方法中services.AddRazorPages();
。
接下來,在 中Startup.cs
,轉到Configure
方法並app.UseAuthentication();
在行前添加app.UseAuthorization();
行。
接下來,在 views 文件夾中打開 index.cshtml 並輸入以下代碼行
保存所有文件並運行您的項目。
您會注意到,一旦您運行該項目,瀏覽器將重定向到 Microsoft 登錄頁面,返回後,您將在頁面上看到您的電子郵件地址。
我們剛剛學習瞭如何在 ASP.NET 5.0 Web 應用程序中實現 Azure AD 身份驗證。
https://docs.microsoft.com/en-us/azure/active-directory/develop/quickstart-v2-aspnet-core-webapp
https://www.c-sharpcorner.com/article/authentication-and-authorization-in-asp-net-5-with-jwt-and-swagger/