2022年3月30日 星期三

Windows AD 群組原則一些觀念

 

  1. 剛建好AD 網域時,預設有兩個 GPO—Default Domain Policy和Default Domain Controllers Policy,前者用來管理網域中所有的電腦與使用者;後者則專門用於管理網域控制站。
  2. 群組原則的套用順序為:最先套用本機電腦原則,其次為站台的群組原則,再其次為網域的群 組原則,最後是組織單位的群組原則
  3. 本機電腦原則<站台群組原則<網域群組原則<組織單位群組原則<下層組織單位群組原則
  4. 組織會繼承網域原則(也可以禁止繼承),若組織也有原則,則組織的電腦與使用者會得到網域原則+組織原則
  5. 若網域原則與組織原則有衝突時,以組織原則為準
  6. 優先權是以後面覆蓋前面
  7. 每個群組原則可分為「電腦設定』與「使用者設定』兩部份,分別套用到電腦與使用者,而且是以兩個獨立的套用程序,分別在不同的時間點執行。
  8. 開機/登入
    1. 『電腦開機』與『使用者登入』時,皆會套用群組原則:
      1. 電腦開機 
        1. 當電腦開機(或是執行重新啟動)時,網域控制站會根據該電腦帳戶所隸屬的站台、 網域或組織單位,決定應套用哪些群組原則的『電腦設定』部份。 
        2. 所以當我們看到螢幕出現登入的畫面時,表示已經套用了群組原則的「電腦設定』部分
      2. 使用者登入 
        1. 當使用者登入(按Ctrl + Alt+ Del鍵,輸入帳戶名稱與密碼)時,網域控制站會根據該使用者帳戶所隸屬的站台、 網域或組織單位,決定必須套用哪些群組原則的『使用者設定』部分。 
        2. 所以當我們看到螢幕出現各使用者自己的桌面時,表示已經套用了群組原則的『使用者設定」部分。
      3. ー般而言,在電腦順利啟動之後,使用者才能用該電腦登入網域。
    2. 因此是先套用電腦設定,後套用使用者設定。
    3. 不過,當電腦設定和使用者設定發生衝突時,若依照前述的觀念,應該是後套用的使用者設定 覆蓋掉先套用的電腦設定一一然而事實並非如此,而是電腦設定覆蓋掉使用者設定!
  9. 群組原則分原則及喜好設定,只有網域群組原則才有喜好設定,本機電腦原則則無
  10. 喜好設定非強制性,用戶端可以自行變更設定值,故適合用來作預設值;原則設定是強制性設定,用戶端無法變更
  11. 原則設定與喜好設定若有相同設定項目,以原則設定為優先

2022年3月28日 星期一

批次更新ou及user

1.批次加入OU(組織單位)

 for /f "tokens=1 delims=," %a in (c:\abc\ou1.csv) do dsadd ou "ou=%a,DC=sct1,DC=com,DC=tw"

ou1.csv如下













2.第二層OU,以此類推
for /f "tokens=1 delims=," %a in (c:\abc\ou2.csv) do dsadd ou "ou=%a,ou=ab事業部,DC=sct1,DC=com,DC=tw"

ou2.csv












3.批次加入使用者
for /f "tokens=1,2,3,4,5,6 delims=," %a in (c:\abc\user.csv) do dsadd user "cn=%a,ou=總務課,ou=ab事業部,DC=sct1,DC=com,DC=tw" -samid %f -upn %b -pwd %c -mustchpwd %e -display %d -disabled no

user.csv



以管理員身份運行powershell的Active Directory模塊

Import-Module ActiveDirectory


鍵入以下命令來檢查有哪些OU未進行意外刪除的保護:

Get-ADOrganizationalUnit -filter * -Properties ProtectedFromAccidentalDeletion | where {$_.ProtectedFromAccidentalDeletion -eq $false} | ft


在Active Directory的Windows PowerShell模塊命令提示符下,鍵入以下命令以保護OU:

Get-ADOrganizationalUnit -filter * -Properties ProtectedFromAccidentalDeletion | where {$_.ProtectedFromAccidentalDeletion -eq $false} | Set-ADOrganizationalUnit -ProtectedFromAccidentalDeletion $true