BGInfo 和 WMI 過濾器

BGInfo 和 WMI 過濾器

我已透過 GPO 應用登入腳本來執行 BGInfo。據我了解,當我設定使用者配置時,GPO 必須套用於使用者 OU。我們有一個名為 SERVERS 的 OU,這是我們希望運行此 GPO 的唯一 OU,但是當我將 GPO 連結到 SERVERS OU 而不是 USERS OU 時,GPO 未被應用。由於 GPO 因此連結到 USERS OU,因此它在我們公司的每台 PC/伺服器上運行 - 這不是我們想要的。

如果到目前為止我的結論是正確的,我認為阻止 GPO 在伺服器以外的任何 OU 上運行的唯一方法是通過 WMI 過濾器,但是我似乎無法創建一個有效的過濾器,因為我無法訪問變數例如%計算機名稱%。

我以為我想要一個查詢,例如:

gwmi -namespace root\directory\LDAP -query "select * from ds_computer where DS_cn = %computername% AND ds_distinguishedName like '%ou=servers%'"

這相當於“SELECT * FROM ds_Computer where DS_cn = [Current COMPUTER BEING ON TO] AND ds_distinguishedName like '%ou=servers%'”

但這當然不會評價。

我走在正確的軌道上嗎?或者有更好的解決方案嗎?

任何建議都非常感激。

非常感謝 dotdev

答案1

您需要環回處理。它以登入使用者的身分執行指派給電腦 GPO 的「使用者設定」項目。

微軟有更好的解釋Windows Server:了解“使用者群組原則環回處理模式”

答案2

避免環回處理;這是一個故障排除惡夢有時幾年後往往會回來咬你。請改用群組原則首選項 (GPP) 專案級目標。基本流程是:

  1. 建立新的 GPO
  2. 瀏覽至使用者配置 |偏好 |控制面板設定|安排任務
  3. 建立新的排程任務(至少 Windows 7)
  4. 配置您的任務以運行腳本或直接啟動腳本
  5. 在「觸發器」標籤上,建立一個觸發器以「登入時」啟動
    1. 作為獎勵,您可以透過設定「重複任務間隔」選項來定期「更新」bginfo
  6. 在「常用」標籤上,勾選「專案級定位」並開啟「定位」對話框
  7. 選擇新項目|組織單位
  8. 瀏覽並選擇要套用 GPP 的 OU
  9. 將 GPO 連結到使用者物件所在的位置

相關內容