簡體   English   中英

從加入域的計算機以靜默方式在 Azure AD 中進行身份驗證

[英]Authenticate in Azure AD silently from a domain joined machine

在我們的環境中,Windows 機器加入了域,Azure AD Connect Sync 用於將域連接到 Azure AD。 我的目標是使用當前登錄用戶的上下文在 Azure 中進行身份驗證。

據我了解,我需要在可用方法中使用集成 Windows 身份驗證 (IWA)

允許域或 Azure Active Directory (Azure AD) 加入計算機上的應用程序以靜默方式獲取令牌(無需用戶進行任何 UI 交互)。

描述看起來很棒。 我正在嘗試使用此示例 我按照說明創建了一個應用程序注冊,唯一沒有做的是第 2 步:(可選)/注冊客戶端應用程序/第 6 項

在此階段權限分配正確,但客戶端應用程序不允許交互。 因此,不能通過 UI 表示同意並接受使用服務應用程序。 單擊授予/撤銷 {tenant} 的管理員同意按鈕,然后在系統詢問您是否要為租戶中的所有帳戶授予所請求權限時選擇是。

首先,我不明白它在說什么。 它怎么不允許交互? 什么互動?

其次,“需要管理員同意”的值為“否”:

在此處輸入圖像描述

我不是租戶管理員,但我認為“授予管理員同意...”按鈕是灰色的,因為沒有什么可授予的(一旦我添加了某些內容,它就會變為活動狀態)。

盡管如此,我還是將 TenantId 和 app ClientId 復制到了示例中並嘗試運行它。 它失敗並出現以下錯誤:

AADSTS65001:用戶或管理員未同意使用名為“foo-bar”的 ID 為“b5e9bd68-5326-44ff-9fc6-c933227708ff”的應用程序。 為此用戶和資源發送交互式授權請求。 跟蹤 ID:77c69007-80cb-4eb2-b60b-f029928c5f00 相關 ID:63be7460-11e6-49b2-88b9-a3b56025ee43 時間戳:2022-06-27 23:08:08Z

再一次,什么是交互式請求? 這個示例的目的不是說明我如何在沒有任何交互的情況下為用戶進行靜默透明的身份驗證嗎?

請幫我找到丟失的部分。

IWA 是不需要用戶交互的靜默流程,您必須同意租戶中的所有用戶才能使用該應用程序。

要執行上述操作,您必須具有MsDoc中提到的tenant admin角色。

啟用該角色后,請確保在添加所需的 API 權限后授予管理員同意,如下所示。

在此處輸入圖像描述

您還可以使用以下管理員同意端點,該端點將提供如下同意表:

https://login.microsoftonline.com/{your_tenant_id}/v2.0/adminconsent?
&client_id=Your_client_id
&state=12345
&redirect_uri=Your_redirect_uri
&scope= https://graph.microsoft.com/.default

在此處輸入圖像描述

接受上述同意后,您可以擺脫“用戶或管理員未同意使用該應用程序”的錯誤。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM