摘要
本文討論如何在互動式登入情境中使用 AMA) (驗證機制保證。
簡介
AMA 會在使用者登入時透過憑證登入方式驗證憑證時,為使用者的存取權杖新增管理員指定的通用群組成員資格。 這使得網路資源管理員能夠控制對資源的存取,例如檔案、資料夾和印表機。 這種存取權取決於使用者是否使用憑證式登入方式,以及所使用的憑證類型。
在本文中
本文聚焦於兩種問題情境:登入/登出與鎖定/解鎖。 AMA 在這些情境下的行為是「設計出去」的,可總結如下:
-
AMA 旨在保護網路資源。
-
AMA 無法辨識或強制使用者本機電腦的互動式登入類型 (智慧卡或使用者名稱/密碼) 。 這是因為互動式使用者登入後存取的資源,無法透過 AMA 可靠地保護。
徵兆
問題情境一 (登入/登出)
請試想下列案例:
-
管理員希望在使用者存取某些安全敏感資源時,強制執行智慧卡 (SC) 登入認證。 為此,管理員依據 Windows Server 2008 R2 中 AD DS 認證機制保證逐步指南部署 AMA,該指南涵蓋所有智慧卡憑證所用的發行政策物件識別碼。 註:在本文中,我們將這個新映射的群組稱為「智慧卡通用安全群組」。
-
「互動式登入:必須使用智慧卡」政策在工作站上並未啟用。 因此,使用者可以使用其他憑證登入,例如使用者名稱和密碼。
-
本地及網路資源存取需要智慧卡通用安全群組。
在這種情況下,只有使用智慧卡登入的使用者才能存取本地和網路資源。 然而,由於工作站允許優化/快取登入,快取驗證器會在登入時用來建立使用者桌面的 NT 存取權杖。 因此,使用先前登入時的安全群組與聲明,而非目前登入。
情境範例
注意:本文中,群組成員資格是透過使用「whoami/groups」來取得互動式登入會話的。 此指令會從桌面的存取權杖中取得群組與權利要求。
-
範例 1如果上一次登入是用智慧卡進行,桌面的存取權杖會包含 AMA 提供的智慧卡通用安全群組。 以下其中一種結果會發生:
-
使用者使用智慧卡登入:使用者仍可存取本地安全敏感資源。 使用者嘗試存取需要智慧卡通用安全群組的網路資源。 這些嘗試都成功了。
-
使用者登入時使用使用者名稱和密碼:使用者仍可存取本地安全敏感資源。 這種結果並非預期之中。 使用者嘗試存取需要智慧卡通用安全群組的網路資源。 這些嘗試如預期般失敗。
-
-
範例 2如果上一次登入是用密碼完成,桌面的存取權杖就沒有 AMA 提供的智慧卡通用安全群組。 以下其中一種結果會發生:
-
使用者登入時使用使用者名稱和密碼:使用者無法存取本地安全敏感資源。 使用者嘗試存取需要智慧卡通用安全群組的網路資源。 這些嘗試都失敗了。
-
使用者使用智慧卡登入:使用者無法存取本地安全敏感資源。 使用者嘗試存取網路資源。 這些嘗試都成功了。 這種結果並非顧客預期的。 因此,這會造成存取控制的問題。
-
問題情境二 (鎖定/解鎖)
請考慮以下情境:
-
管理員希望在使用者存取某些安全敏感資源時,強制執行智慧卡 (SC) 登入認證。 為此,管理員依據 Windows Server 2008 R2 逐步指南中的 AD DS 認證機制保證,部署所有智慧卡憑證所用的發行政策物件識別碼。
-
「互動式登入:必須使用智慧卡」政策在工作站上並未啟用。 因此,使用者可以使用其他憑證登入,例如使用者名稱和密碼。
-
本地及網路資源存取需要智慧卡通用安全群組。
在這種情況下,你預期只有使用智慧卡登入的使用者才能存取本地和網路資源。 不過,因為使用者桌面的存取權杖是在登入時建立的,所以它並未被更改。
情境範例
-
範例 1若桌面存取權杖包含 AMA 提供的智慧卡通用安全群組,則會發生以下其中一種結果:
-
使用者可透過智慧卡解鎖:使用者仍可存取本地安全敏感資源。 使用者嘗試存取需要智慧卡通用安全群組的網路資源。 這些嘗試都成功了。
-
使用者透過使用者名稱和密碼解鎖:使用者仍可存取本地安全敏感資源。 這種結果並非預期之中。 使用者嘗試存取需要智慧卡通用安全群組的網路資源。 這些嘗試都失敗了。
-
-
範例 2若桌面存取權杖未包含 AMA 提供的智慧卡通用安全群組,則會發生以下結果之一:
-
使用者透過使用者名稱和密碼解鎖:無法存取本地安全敏感資源。 使用者嘗試存取需要智慧卡通用安全群組的網路資源。 這些嘗試都失敗了。
-
使用者可透過智慧卡解鎖:使用者無法存取本地安全敏感資源。 這種結果並非預期之中。 使用者嘗試存取網路資源。 這些嘗試如預期般成功。
-
其他相關資訊
由於「症狀」章節中描述的 AMA 與安全子系統設計,使用者會遇到以下情境,AMA 無法可靠辨識互動式登入的類型。
登入/登出
若快速登入優化啟用,lsass (的本地安全子系統) 利用本地快取產生登入憑證中的群組成員資格。 這樣一來,就不需要與網域控制器 (DC) 通訊。 因此,登入時間會被縮短。 這是非常理想的功能。然而,這種情況會造成以下問題:在 SC 登入與 SC 登出後,本地快取的 AMA 群組錯誤地仍存在於使用者名稱/密碼互動式登入後的使用者憑證中。註釋
-
此情況僅適用於互動式 logon。
-
AMA 群組的快取方式與其他群組相同,並採用相同的邏輯。
在這種情況下,如果使用者嘗試存取網路資源,資源端的快取群組成員資格不會被使用,且使用者在資源端的登入會話中不會包含 AMA 群組。此問題可透過關閉快速登入優化 (「電腦設定 > 管理範本 > 系統 > 登入 >「電腦啟動及登入時始終等待網路」) 來解決。 重要 此行為僅適用於互動式登入情境。 網路資源的存取會如預期般運作,因為不需要登入優化。 因此,快取群組成員資格不會被使用。 聯絡 DC 以使用最新的 AMA 群組會員資訊建立新工單。
鎖定/解鎖
請考慮以下情境:
-
使用者透過智慧卡互動登入,然後開啟 AMA 保護的網路資源。注意,AMA 保護的網路資源僅能存取存取權杖中包含 AMA 群組的使用者。
-
使用者在未先關閉先前開啟的 AMA 保護網路資源前,即可鎖定電腦。
-
使用者透過先前登入的使用者的使用者名稱與密碼,透過智慧卡) 解鎖電腦。
在此情況下,使用者在電腦解鎖後仍可存取 AMA 保護的資源。 產生此錯誤是系統刻意為之。 當電腦解鎖時,Windows 不會重建所有有網路資源的開放會話。 Windows 也不會重新檢查群組成員資格。 因為這些行為會導致不可接受的績效懲罰。這種情況沒有現成的解決方案。 一個解決方案是建立憑證提供者過濾器,在 SC 登入和鎖定步驟發生後過濾掉使用者名稱/密碼提供者。 欲了解更多關於 Credential Provider,請參閱以下資源:
ICredentialProviderFilter 介面 Windows Vista 憑證提供者範例注意:我們無法確認此方法是否曾成功實施。
更多關於AMA的資訊
AMA 既無法識別也無法強制執行智慧卡 (互動式登入類型或使用者名稱/密碼) 。 產生此錯誤是系統刻意為之。AMA 適用於網路資源需要智慧卡的情況。 它並非設計用來進行本地存取。任何嘗試透過引入新功能來解決此問題,例如使用動態群組成員制或將 AMA 群組視為動態群組,都可能引發重大問題。 這也是為什麼 NT 代幣不支援動態群組成員。 如果系統允許在真實中修剪群組,使用者可能會被阻止與自己的桌面和應用程式互動。 因此,群組成員資格在會話建立時即鎖定,並在整個會話中維持。快取的 logon 也是一個問題。 若啟用最佳登入,lsass 會先嘗試本地快取,然後才呼叫網路往返。 如果使用者名稱和密碼與 LSASS 在前一次登入時看到的相同 (這對大多數登入者來說都是如此) ,LSASS 會建立一個擁有與使用者先前群組成員相同的令牌。 若關閉最佳登入,則需進行網路往返。 這樣可以確保群組成員在登入時正常運作。在快取登入中,LSASS 會為每位使用者保留一個條目。 此條目包含使用者先前的群組成員身份。 這會受到 LSASS 所看到的最後密碼或智慧卡憑證的保護。 兩者都解開同一個令牌和憑證金鑰。 如果使用者嘗試使用過時的憑證金鑰登入,他們將失去 DPAPI 資料、EFS 保護的內容等等。 因此,快取的 logon 總是產生最新的本地群組成員,無論登入方式為何。