教學課程:建立使用 Microsoft 身分識別平台 進行驗證的 Blazor Server 應用程式
在本教學課程中,您會建置 Blazor Server 應用程式,以使用 Microsoft 身分識別平台 並在 Microsoft Entra ID 中註冊您的應用程式,以登入使用者並從 Microsoft Graph 取得數據。
我們也有 Blazor WASM 的快速入門。
在本教學課程中:
- 建立新的 Blazor Server 應用程式,設定為使用 Microsoft Entra ID 來驗證單一組織中的使用者(在註冊應用程式的 Microsoft Entra 租使用者中)
- 使用處理驗證和授權
Microsoft.Identity.Web
- 從受保護的 Web API、Microsoft Graph 擷取數據
必要條件
- .NET 7 SDK
- 具有作用中訂用帳戶的 Azure 帳戶。 免費建立帳戶。
- Azure 帳戶必須具有管理 Microsoft Entra 識別碼中應用程式的許可權。 下列任何 Microsoft Entra 角色都包含必要的權限:
- 與您的 Azure 帳戶相關聯的 Microsoft Entra 識別子租用戶標識碼或網域
使用 .NET CLI 建立應用程式
mkdir <new-project-folder>
cd <new-project-folder>
dotnet new blazorserver --auth SingleOrg --calls-graph
安裝 Microsoft 身分識別應用程式同步 .NET 工具
dotnet tool install --global msidentity-app-sync
此工具會自動為您執行下列工作:
- 在 Microsoft Entra 識別碼中註冊您的應用程式
- 為已註冊的應用程式建立秘密
- 根據您的launchsettings.json註冊重新導向 URI
- 初始化項目中用戶密碼的使用
- 將您的應用程式密碼儲存在使用者秘密記憶體中
- 使用 client-id、tenant-id 和其他專案更新您的appsettings.json。
.NET Tools 擴充 dotnet CLI 命令的功能。 若要深入瞭解,請參閱 .NET 工具。
如需使用者秘密記憶體的詳細資訊,請參閱 開發期間應用程式秘密的安全儲存。
使用 Microsoft 身分識別應用程式同步工具
執行下列命令,在您的租用戶中註冊您的應用程式,並更新應用程式的 .NET 組態。 提供屬於您 Azure 帳戶的用戶名稱/upn, username@domain.com
以及與您 Azure 帳戶相關聯的 Microsoft Entra 標識碼的租用戶標識碼或功能變數名稱。
msidentity-app-sync --username <username/upn> --tenant-id <tenantID>
注意
- 如果您只使用開發人員工具中的一個帳戶登入,就不需要提供用戶名稱。
- 如果您想要在其中建立應用程式的租使用者是主租使用者,則不需要提供租用戶標識碼。
選擇性 - 建立開發 SSL 憑證
若要避免瀏覽執行中的應用程式時發生 SSL 錯誤/警告,您可以在 macOS 和 Windows 上使用下列命令來產生自我簽署 SSL 憑證以供 .NET 使用。
dotnet dev-certs https --trust
執行應用程式
在終端內,執行下列 命令:
dotnet run
使用命令行所輸出的 URL,瀏覽至執行中的 Web 應用程式。
下一步
在下列多部分教學課程系列中建置可登入使用者的 ASP.NET Core Web 應用程式,以深入瞭解: