接著我們要添加一個AD FS服務器角色專屬的服務賬戶,來提供給后續的AD FS服務的運行使用。
先執行“Import-Module ActiveDirectory”命令來完成ActiveDirectory相關模塊的匯入。然后執行以下的命令參數范例,其中所選定的ADFS完整域名,以及所要使用的服務主體名稱(SPN,Service Principal Names)皆必須修改成您實際所使用的。此命令執行后如果出現了“機碼不存在”的錯誤訊息,這表示您尚未創建KDS根密鑰或是該密鑰生效時間還沒到。
New-ADServiceAccount ADFSManaged -DNSHostName adfs.lab01.com -Princ ipalsAllowedToRetriev eManagedPassword ADFS-ServicePrincipalNames HTTP/ADFS,HTTP/ADFS.lab01.com
在確認添加ADFS專屬的AD服務賬戶時沒有出現錯誤,便可以開啟“Active Directory用戶和計算機”界面,然后展開至“Managed Service Accounts”節點下,來查看所創建的服務賬戶是否有出現。
確認AD FS的AD服務賬戶成功創建之后,接下來請到AD FS的主機中開啟Windows PowerShell界 面,然后先執行“Import-Module ActiveDirectory”命 令 來匯入ActiveDirectory管理模塊,接著再執行“Install-ADServiceAccount -Identity "ADFSManaged"”命令參數,即可成功將此服務賬戶完成在本地的安裝。
若想要檢查特定的服務主體名稱(SPN)之關鍵詞,可以執行“setspn -Q "HTTP/ADFS"”即可。如果是要顯示所有目前已創建的SPN清單,則可以執行“setspn -l”命令。如果需要臨時添加SPN則可以執行例如“setspn-s " HTTP/adfs.lab01.com"”命令。萬一您需要重置整個SPN設置回系統默認值,則只要執行“setspn -r servername”命令即可。
為何需要創建受管理的AD服務賬戶?
對于Windows服務器平臺上各類應用系統所需要使用的服務,為了方便使用與管理,在傳統的做法上,我們通常會直接選定一個管理員組的成員賬戶,然而這樣的做法其實具有高風險性的,原因便是惡意攻擊者可能會通過一些在Internet就可取得的密碼破解工具,以可逆性的方法途徑從此服務器系統之中讀取到其服務帳戶密碼。因此,創建Active Directory專屬的服務帳戶,來提供應用程序服務的運行,便可以避免可能的安全性疑慮。