共用方式為


逐步解說指南:使用條件式訪問控制管理風險

關於本指南

本逐步解說提供使用 Windows Server 2012 R2 中 Active Directory 同盟服務 (AD FS) 中條件式存取控制機制所提供的其中一個因素(用戶數據)來管理風險的指示。 如需 Windows Server 2012 R2 中 AD FS 中條件式存取控制和授權機制的詳細資訊,請參閱 使用條件式存取控制管理風險

本逐步解說包含下列各節:

步驟 1:設定實驗室環境

若要完成本逐步解說,您需要包含下列元件的環境:

  • 具有測試使用者和組帳戶的 Active Directory 網域,在 Windows Server 2008、Windows Server 2008 R2 或 Windows Server 2012 上執行,其架構升級至 Windows Server 2012 R2 或 Windows Server 2012 R2 上執行的 Active Directory 網域

  • 在 Windows Server 2012 R2 上執行的同盟伺服器

  • 裝載範例應用程式的網頁伺服器

  • 用戶端電腦,您可以從中存取範例應用程式

警告

強烈建議您無論是在生產環境或測試環境中,都不要使用同一台計算機作為您的同盟伺服器和網頁伺服器。

在此環境中,同盟伺服器會發出所需的宣告,讓使用者可以存取範例應用程式。 Web 伺服器裝載了一個範例應用程式,該應用程式將信任那些提供同盟伺服器發佈之宣告的使用者。

如需如何設定此環境的指示,請參閱 在 Windows Server 2012 R2中設定 AD FS 的實驗室環境。

步驟 2:驗證預設 AD FS 訪問控制機制

在此步驟中,您將驗證預設的AD FS訪問控制機制,其中用戶會重新導向至AD FS登入頁面、提供有效的認證,並授與應用程式的存取權。 您可以使用 Robert Hatley AD 帳戶,以及您在 Windows Server 2012 R2中為 AD FS 設定實驗室環境時所設定的 claimapp 範例應用程式。

確認預設 AD FS 訪問控制機制

  1. 在您的用戶端電腦上,開啟瀏覽器視窗,並瀏覽至範例應用程式:https://webserv1.contoso.com/claimapp

    此動作會自動將要求重新導向至同盟伺服器,系統會提示您使用使用者名稱和密碼登入。

  2. 輸入您在 在 Windows Server 2012 R2中為 AD FS 設定實驗室環境所建立 Robert Hatley AD 帳戶的認證。

    您將獲授與應用程式的存取權。

步驟 3:根據用戶數據設定條件式訪問控制原則

在此步驟中,您將根據使用者群組成員資格數據來設定訪問控制原則。 換句話說,您將在同盟伺服器上,為代表您的範例應用程式之信賴憑證者信任設定 簽發授權規則 - claimapp。 根據此規則的邏輯,由於 Robert Hatley AD 使用者屬於 Finance 群組,他將被授予存取此應用程式所需的宣告權限。 您已將 Robert Hatley 帳戶新增至 Finance 群組,在 Windows Server 2012 R2中設定 AD FS 的實驗室環境。

您可以使用AD FS管理主控台或透過 Windows PowerShell 來完成這項工作。

透過AD FS管理主控台根據用戶資料設定條件式存取控制原則

  1. 在 AD FS 管理控制台中,流覽至 [信任關係],然後 信賴合作對象信任

  2. 選取代表您範例應用程式的信賴方信任(claimapp),然後在 [動作] 窗格中,或以滑鼠右鍵按下此信賴方信任,選取 [編輯宣告規則]。

  3. 在 [編輯 claimapp 規則] 視窗中,選取 [發行授權規則] 標籤,然後按一下 [新增規則]。

  4. [新增發行授權宣告規則精靈][選擇規則範本]頁面上,選擇 [根據傳入宣告允許或拒絕使用者宣告規則範本],然後按一下 [下一步]

  5. 在 [設定規則] 頁面上,執行下列所有動作,然後按一下 [完成]。

    1. 輸入宣告規則的名稱,例如 TestRule

    2. 選取 [群組 SID] 作為 [傳入宣告類型]

    3. 按一下 [[瀏覽],輸入 Finance 作為您的 AD 測試群組的名稱,然後針對 [傳入宣告值] 欄位進行解析。

    4. 選取 [拒絕讓具有此傳入宣告的使用者存取] 選項。

  6. 在 [編輯 claimapp 宣告規則] 視窗中,請務必刪除您在建立此信賴憑證者信任時所預設建立的 [允許存取所有使用者] 規則

透過 Windows PowerShell 根據使用者資料設定條件式訪問控制原則

  1. 在您的同盟伺服器上,開啟 Windows PowerShell 命令窗口,然後執行下列命令:
$rp = Get-AdfsRelyingPartyTrust -Name claimapp
  1. 在相同的 Windows PowerShell 命令視窗中,執行下列命令:
$GroupAuthzRule = '@RuleTemplate = "Authorization" @RuleName = "Foo" c:[Type == "https://schemas.microsoft.com/ws/2008/06/identity/claims/groupsid", Value =~ "^(?i)<group_SID>$"] =>issue(Type = "https://schemas.microsoft.com/authorization/claims/deny", Value = "DenyUsersWithClaim");'
Set-AdfsRelyingPartyTrust -TargetRelyingParty $rp -IssuanceAuthorizationRules $GroupAuthzRule

備註

請務必以 AD Finance 群組的 SID 值取代 <group_SID>。

步驟 4:驗證條件式訪問控制機制

在此步驟中,您將確認您在上一個步驟中設定的條件式訪問控制原則。 您可以使用下列程式來確認 Robert Hatley AD 使用者可以存取您的範例應用程式,因為他屬於 Finance 群組和不屬於 Finance 群組的 AD 使用者無法存取範例應用程式。

  1. 在用戶端電腦上,開啟瀏覽器視窗,然後流覽至範例應用程式:https://webserv1.contoso.com/claimapp

    此動作會自動將要求重新導向至同盟伺服器,系統會提示您使用使用者名稱和密碼登入。

  2. 輸入您在 在 Windows Server 2012 R2中為 AD FS 設定實驗室環境所建立 Robert Hatley AD 帳戶的認證。

    您將獲授與應用程式的存取權。

  3. 輸入另一個不屬於 Finance 群組之 AD 使用者的認證。 (如需如何在 AD 中建立使用者帳戶的詳細資訊,請參閱 https://technet.microsoft.com/library/cc7833232.aspx

    此時,由於您在上一個步驟中設定的訪問控制原則,此 AD 用戶會顯示「拒絕存取」訊息,該使用者不屬於 Finance 群組。 默認消息正文 您無權存取此網站。按兩下這裡以再次登入,或連絡您的系統管理員以取得許可權。不過, 此文字是完全可自定義的。 如需如何自訂登入體驗的詳細資訊,請參閱 自訂 AD FS 登入頁面

另請參閱

使用條件式訪問控制管理風險在 Windows Server 2012 R2 中設定 AD FS 的實驗室環境