Pada artikel ini, kita akan melihat kemampuan PowerShell untuk mengelola grup domain Direktori Aktif. Kami akan melihat cara membuat grup baru dalam AD, menambahkan pengguna ke dalamnya (atau menghapusnya), daftar pengguna grup dan beberapa tindakan bermanfaat lainnya dengan grup domain, yang sangat berguna dalam administrasi sehari-hari. Cmdlet dasar berikut tersedia untuk mengelola grup AD di PowerShell untuk Direktori Aktif:
Konten:
- New-ADGroup - buat grup AD baru
- Add-AdGroupMember - tambahkan pengguna ke grup AD
- Remove-ADGroupMember - hapus pengguna dari grup
- Get-ADGroup - dapatkan informasi tentang grup AD
- Get-ADGroupMember - daftarkan pengguna grup AD
Untuk menggunakan cmdlet ini di sesi PowerShell Anda, modul interaksi AD khusus harus dimuat - Modul Direktori Aktif untuk Windows PowerShell. Modul ini pertama kali diperkenalkan di Windows Server 208 R2. Di Windows Server 2012 dan di atasnya, modul ini diaktifkan secara default. Itu dapat diinstal dan diaktifkan pada komputer klien sebagai salah satu komponen RSAT. Anda dapat memeriksa apakah modul dimuat sebagai berikut:
Dapatkan-module -listavailable
Seperti yang Anda lihat, modul ActiveDirectory dimuat. Jika tidak, impor dengan perintah:
Direktori aktif Modul Impor
Daftar lengkap perintah modul dapat diperoleh seperti ini:
Get-Command -Module ActiveDirectory
Modul ini berisi total 147 cmdlet, dimana 11 dapat bekerja dengan kelompok.
Get-Command -Module ActiveDirectory -Name "* Group *"
Berikut daftar mereka:
- Tambah-ADGroupMember
- Tambah-ADPrincipalGroupMembership
- Dapatkan-ADAccountAuthorizationGroup
- Dapatkan-grup iklan
- Dapatkan-ADGroupMember
- Dapatkan-ADPrincipalGroupMembership
- Grup iklan baru
- Hapus-ADGroup
- Hapus-ADGroupMember
- Hapus-ADPrincipalGroupMembership
- Set-adgroup
New-ADGroup - buat grup AD baru
Buat grup baru di wadah Direktori Aktif (OU) yang ditentukan menggunakan perintah Grup iklan baru:
New-ADGroup "TestADGroup" -path 'OU = Grup, OU = Moskow, DC = corp, dc = winitpro, DC = ru' -GroupScope Global -PassThru -Verbose
Menggunakan atribut Deskripsi Anda dapat menentukan deskripsi grup, dan dengan Displayname ubah nama tampilan.
Parameter Lingkup grup Anda dapat menentukan salah satu dari jenis grup berikut:
- 0 = DomainLocal
- 1 = Global
- 2 = Universal
Anda dapat membuat grup distribusi sebagai berikut:
New-ADGroup "TestADGroup-Distr" -path 'OU = Grup, OU = Moskow, DC = corp, dc = winitpro, DC = ru' -GroupKategori Distribusi -GroupScope Global -PassThru -Verbose
Add-AdGroupMember - tambahkan pengguna ke grup AD
Anda dapat menambahkan pengguna ke grup Direktori Aktif dengan menggunakan cmdlet Tambah.-AdGroupMember. Tambahkan dua pengguna ke grup baru:
Add-AdGroupMember -Identity TestADGroup -Members user1, user2
Jika daftar pengguna yang ingin Anda tambahkan ke grup cukup besar, Anda dapat menyimpan daftar akun dalam file CSV, lalu impor file ini dan tambahkan setiap pengguna ke grup.
Format file CSV adalah sebagai berikut (daftar pengguna satu per baris, nama kolom - pengguna)
Impor-CSV. \ Users.csv -Pemimpin pengguna | ForEach-Object Add-AdGroupMember -Identity 'TestADGroup' -members $ _. Users
Untuk mendapatkan semua anggota dari satu grup (groupA) dan menambahkannya ke grup lain (groupB), gunakan perintah ini:
Dapatkan-ADGroupMember “GroupA” | Dapatkan-ADUser | ForEach-Object Add-ADGroupMember -Identity “Group-B” -Members $ _
Jika Anda ingin menyalin anggota semua grup bersarang (secara rekursif) ke grup baru, Anda perlu menggunakan perintah berikut:
Get-ADGroupMember -Identity “GroupA” -Recursive | Dapatkan-ADUser | ForEach-Object Add-ADGroupMember -Identity “GroupB” -Members $ _
Remove-ADGroupMember - hapus pengguna dari grup
Untuk menghapus pengguna dari grup AD, Anda harus menggunakan perintah Remove-ADGroupMember. Kami menghapus dua pengguna dari grup:
Remove-ADGroupMember -Identity TestADGroup -Members user1, user2
Konfirmasikan penghapusan pengguna dari grup:
Jika Anda ingin menghapus daftar grup pengguna dari file CSV, gunakan perintah ini:
Impor-CSV. \ Users.csv -Pemimpin pengguna | ForEach-Object Remove-ADGroupMember -Identity 'TestADGroup' -members $ _. Users
Get-ADGroup - dapatkan informasi tentang grup AD
Cmdlet akan membantu Anda mendapatkan informasi tentang grup. Dapatkan-grup iklan:
Dapatkan-ADGroup 'TestADGroup'
Perintah ini menampilkan informasi tentang atribut dasar grup (DN, tipe grup, nama, SID). Untuk menampilkan nilai semua atribut grup domain AD, jalankan perintah berikut:
Dapatkan-ADGroup 'TestADGroup' -properti *
Seperti yang Anda lihat, sekarang atribut seperti pembuatan grup dan waktu modifikasi, deskripsi, dll..
Menggunakan cmdlet Get-ADGroup, Anda dapat menemukan semua grup yang menarik bagi Anda dengan templat tertentu. Misalnya, Anda perlu menemukan semua grup AD yang namanya mengandung frasa admin :
Dapatkan-ADGroup -LDAPFilter “(name = * admin *)” | Format-tabel
Get-ADGroupMember - daftarkan pengguna grup AD
Tampilkan daftar pengguna grup:
Dapatkan-ADGroupMember 'TestADGroup'
Untuk meninggalkan hanya nama pengguna dalam hasil, lakukan:
Dapatkan-ADGroupMember 'TestADGroup' | nama kaki
Jika grup domain lain termasuk dalam grup ini, untuk menampilkan daftar lengkap anggota, termasuk semua grup bertingkat, gunakan parameter Rekursif.
Dapatkan-ADGroupMember 'server-admin' -recursive | nama kaki
Untuk mengunggah daftar akun yang ada di grup tertentu ke file CSV (untuk digunakan lebih lanjut di Excel), jalankan perintah berikut:
Dapatkan-ADGroupMember 'server-admin' -recursive | ft samaccountname | File-Keluar c: \ ps \ admins.csv
Untuk menambahkan data akun pengguna dalam AD ke file teks, gunakan cmdlet Get-ADUser. Misalnya, selain akun, Anda perlu menampilkan posisi dan nomor telepon pengguna grup:
Dapatkan-ADGroupMember -Identity 'server-admin' -recursive | foreach Get-ADUser $ _ -Properti properti, OfficePhone | Judul Objek-Pilih, OfficePhone
Anda dapat menghitung jumlah pengguna dalam grup seperti ini:
(Dapatkan-ADGroupMember -Identity 'admin domain'). Count
Ternyata dalam grup "admin domain" kami memiliki 7 akun administrator.
Untuk menemukan daftar grup kosong di OU tertentu, gunakan perintah ini:
Dapatkan-ADGroup -Filter * -Properti Anggota -searchbase “OU = Moskow, DC = corp, dc = winitpro, DC = en” | di mana -tidak $ _. anggota | pilih Nama