<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      PowerShell 2.0 實踐(八)管理活動目錄(中)

      上一次我們對活動目錄的用戶和組進行了簡單的管理操作,使用了.NET框架中的System.DirectoryServices

      System.DirectoryServices.AccountManagement等類。以及微軟與Quest公司的PowerShell擴展,在實際應用中,推薦使用上述兩種擴展,其語法更加簡潔,便于維護。本次我們將嘗試批量編輯域用戶的信息,以及通過LDAP查詢我們感興趣的信息。

       

      測試腳本下載

      本系列所有腳本均在Windows Server 2008 R2 DataCenter (PowerShell 2.0) + PowerGUI Script Editor Free Edition x64中測試通過。

       

      1. 使用 Microsoft Active Directory Cmdlets 批量創建域用戶。

      首先準備一個csv文件,將待創建的域用戶名寫入:

      其中第一行的"UserName"作為列名。CSV = Comma Separated Values,即"逗號分隔值"文件。這里使用的是一種廣義的csv文件,可以看到并沒有逗號,其實用其他分隔符也可以,只要能區分各個用戶就可以了。

      csv文件可以使用Excel打開:

       

      循環遍歷csv文件,提取UserName:

      Clear-Host

      Import-Csv -Path E:\PSTest\Users.csv | foreach {

          New-ADUser -Name $_.UserName `

          -SamAccountName $_.UserName -GivenName $_.UserName `

          -Surname $_.UserName -Path "ou=Domain Controllers,dc=Lucifer,dc=com" `

          -DisplayName $_.UserName -AccountPassword $null `

          -CannotChangePassword $false `

          -ChangePasswordAtLogon $true `

          -UserPrincipalName "$_.UserName@manticore.org" `

      }

      運行結果:

      可以看到用戶默認是禁用的,稍后將學習怎么啟用、禁用用戶。

       

      2、使用 Quest Active Directory Cmdlets 批量創建域用戶。

      Clear-Host

      Import-Csv -Path E:\PSTest\Users.csv | foreach {

          New-QADUser -Name $_.UserName `

          -DisplayName $_.UserName `

          -SamAccountName $_.UserName `

          -ParentContainer "OU=Domain Controllers,DC=Lucifer,DC=com" `

      }

      還是使用剛才的csv文件,運行結果類似:

       

      其實不一定非要使用csv文件,使用txt、xml等文件也可以,文件只是存儲用戶信息的容器,只要能獲取文件中存儲的用戶信息即可。PowerShell對csv提供了內置支持,即Import-Csv、Export-Csv命令等,所以如果沒有特殊需求,建議使用csv文件。

       

      3、修改用戶信息。

      要修改用戶信息,首先要知道用戶有哪些信息:

      Get-ADUser -Identity "User1" -Properties *

      運行結果:

      今天偶然看到AD PowerShell的官方博客,還是很不錯的。

      如上圖所示,查詢出了用戶"User1"的所有信息,可以看到還是很多的。-Identity參數用于唯一標識用戶,微軟的Cmdlets支持如下四種Identity:

      其中比較常用的是sAMAccountName。

      可以用一些PowerShell或LDAP表達式來進行查詢:

      Logical Operator

      Description

      Equivalent LDAP operator/expression

      -eq

      Equal to. This will not support wild card search.

      =

      -ne

      Not equal to. This will not support wild card search.

      ! x = y

      -like

      Similar to -eq and supports wildcard comparison. The only wildcard character supported is: *

      =

      -notlike

      Not like. Supports wild card comparison.

      ! x = y

      -approx

      Approximately equal to

      ~=

      -le

      Lexicographically less than or equal to

      <=

      -lt

      Lexicographically less than

      ! x >= y

      -ge

      Lexicographically greater than or equal to

      >=

      -gt

      Lexicographically greater than

      ! x <= y

      -and

      AND

      &

      -or

      OR

      |

      -not

      NOT

      !

      -bor

      Bitwise OR

      :1.2.840.113556.1.4.804:=

      -band

      Bitwise AND

      :1.2.840.113556.1.4.803:=

      -recursivematch

      Uses LDAP_MATCHING_RULE_IN_CHAIN (Win2k3 SP2 and above)

      :1.2.840.113556.1.4.1941:=

       

      如:

      Get-ADObject -Filter { CN -like "*bro*" }

      Get-ADObject -LDAPFilter "(cn=*bro*)"

      查詢CN like bro的活動目錄信息:

      我對LDAP語法很不熟悉,臨時查了些資料:

      LDAP的存儲規則

      區分名(DN,Distinguished Name)

      和自然界中的樹不同,文件系統/LDAP/電話號碼簿目錄的每一片枝葉都至少有一個獨一無二的屬性,這一屬性可以幫助我們來區別這些枝葉。

      在文件系統中, 這些獨一無二的屬性就是帶有完整路徑的文件名。比如/etc/passwd,該文件名在該路徑下是獨一無二的。當然我們可以有/usr/passwd, /opt/passwd,但是根據它們的完整路徑,它們仍然是唯一的。

      在LDAP中,一個條目的區分名稱叫做"dn"或者叫做區分名。在一個目錄中這個名稱總是唯一的。比如,我的dn是"uid=aghaffar, ou=People, o=developer.ch"。不可能有相同的dn,但是我們可以有諸如"uid=aghaffar, ou=Administrators, o=developer.ch"的dn。這同上面文件系統中/etc/passwd 和 /usr/passwd的例子很類似。

      我們有獨一無二的屬性,在"ou=Administrators, o=developer.ch" 中uid和在"ou=People, o=developer.ch"中的uid。這并不矛盾。

      CN=Common Name 為用戶名或服務器名,最長可以到80個字符,可以為中文;

      OU=Organization Unit為組織單元,最多可以有四級,每級最長32個字符,可以為中文;

      O=Organization 為組織名,可以3—64個字符長

      C=Country為國家名,可選,為2個字符長

      LDAP目錄以一系列"屬性對"的形式來存儲記錄項,每一個記錄項包括屬性類型和屬性值(這與關系型數據庫用行和列來存取數據有根本的不同)。

       

      4、將用戶"User1"的部門修改為"開發部",并啟用該用戶:

      Get-ADUser -Identity "User1" | Set-ADUser -Department "Develop" -Enabled $true

      運行結果:

      注意,在PowerShell中,使用$true、$false表示布爾值:true/false。

      此外,凡是腳本中包含Q的,如Get-QADUser 均是Quest公司的Cmdlets,否則是微軟的Cmdlets,請注意區分。

       

      5、查詢禁用的用戶:

      Clear-Host

      Get-QADUser -Disabled

       

      Search-ADAccount -AccountDisabled –UsersOnly

      運行結果:

      Quest Cmdlets給出了禁用用戶的列表,Microsoft Cmdlets則給出了更為詳細的信息。

       

      6、使用.NET框架中的類進行查詢:

      Clear-Host

      $user = "User1"

      $dc = [System.DirectoryServices.ActiveDirectory.Domain]::GetCurrentDomain()

      $root = $dc.GetDirectoryEntry()

      $search = [System.DirectoryServices.DirectorySearcher]$root

      $search.Filter = "cn=$user"

      $result = $search.FindOne()

       

      if($result -ne $null)

      {

          Write-Host "Find One!"

      }

      else

      {

          Write-Host "$user does not exists!"

      }

      查詢cn=User1的結果,顯然能找到該用戶:

      FindOne()方法返回查詢結果中的第一個,FindAll()則會返回所有查詢到的結果。

       

      7、禁用、啟用用戶:

      Clear-Host

      Disable-ADAccount -Identity "User1"

      Enable-ADAccount -Identity "User1" -PassThru

       

      Disable-QADUser -Identity "User1"

      Enable-QADUser -Identity "User1"

       

      8、查詢登錄并鎖定的用戶:

      Clear-Host

      Get-QADUser -Locked

      Search-ADAccount –LockedOut

       

      9、移動用戶。為了便于看到效果,我們先新建一個OU:Temp。

      注意,取消保護勾選可以方便的刪除該OU:

       

      下面把User1移動到Temp中去。

      Move-ADObject -Identity "CN=User1,OU=Domain Controllers,DC=Lucifer,DC=com" -TargetPath "OU=Temp,DC=Lucifer,DC=com"

      運行結果:

      注意表達式是有順序的,CN要在OU之前,這塊語法我也在慢慢摸索。

      再使用Quest Cmdlets將User1移動回去:

      Move-QADObject -Identity "CN=User1,OU=Temp,DC=Lucifer,DC=com" -NewParentContainer "OU=Domain Controllers,DC=Lucifer,DC=com"

      運行結果:

       

       

      小結:

      本次我們繼續練習了活動目錄的相關操作,主要涉及域用戶的編輯、搜索,其中掌握LDAP的查詢語法非常重要。熟練以后可以快捷高效的對活動目錄對象(不僅僅局限于用戶、組)進行管理。下一次將練習域組的管理操作,以及管理OU、組策略等高級話題。

      posted @ 2010-09-16 21:14  江蘇瑞步科技  閱讀(3728)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 婷婷丁香五月亚洲中文字幕| 欧美乱码伦视频免费| 中文熟妇人妻av在线| 国产不卡一区不卡二区| 亚洲国产午夜精品理论片| 国产精品大全中文字幕| 国产成人a在线观看视频免费| 日本熟妇浓毛| 粉嫩蜜臀av一区二区三区| 久久国产精品77777| 91福利一区福利二区| 男女性高爱潮免费网站| 五月天国产成人AV免费观看| 中文字幕久久熟女蜜桃| 国产午夜伦伦午夜伦无码| 国产精品有码在线观看| 国产精品免费看久久久| 中文字幕在线无码一区二区三区| 国产一区二区三区高清视频| 毛片免费观看天天干天天爽| 日本熟妇XXXX潮喷视频| 亚洲一区二区色情苍井空| 给我免费观看片在线| 亚洲中文字幕在线二页| 亚洲国产美国产综合一区| 亚洲熟女精品一区二区| 日韩人妻一区二区三区蜜桃视频| 性色av不卡一区二区三区| 东方四虎在线观看av| 无码人妻丰满熟妇区毛片| 兔费看少妇性l交大片免费| 午夜通通国产精品福利| 无码午夜福利片| 人妻换着玩又刺激又爽| 亚洲人午夜射精精品日韩| 国产高清精品在线91| 天堂网在线.www天堂在线资源| 涩涩爱狼人亚洲一区在线| 天堂一区二区三区av| 亚洲一区二区三区| 亚洲国产精品毛片在线看|