Setel Ulang Kata Sandi Pengguna AD menggunakan Masalah PowerShell

Saya sedang memeriksa cara mengatur ulang kata sandi pengguna AD menggunakan PowerShell dan saya menemukan Set-ADAccountPassword itu berfungsi namun saya tidak yakin bagaimana cara menggunakannya di lingkungan saya.

Saya memiliki hutan dengan banyak sub-domain: example.local sebagai domain primer dan x.example.local, y.example.com dan z.example.com sebagai sub-domain.

Apa yang saya coba capai adalah kemampuan untuk mereset kata sandi akun sub-domain, dari server yang berada di domain induk. Untuk saat ini, hal-hal di bawah ini berfungsi untuk saya.

Jika dijalankan dari server yang berada di Sub-domain x.example.local:

Set-ADAccountPassword -Identity "John.Doe" -Reset -NewPassword (ConvertTo-SecureString -AsPlainText "ABCD1234" -Force)

Bekerja dari mana saja di dalam hutan:

Set-ADAccountPassword -Identity "CN=Doe, John X.,OU=b,OU=a,DC=x,DC=example,DC=local" -Reset -NewPassword (ConvertTo-SecureString -AsPlainText "ABCD1234" -Force)

Yang sebenarnya saya butuhkan adalah kemampuan untuk memasukkan nama masuk pengguna Windows ke dalam skrip seperti di bawah ini dari domain induk server yaitu example.local, yang tidak berfungsi.

Set-ADAccountPassword -Identity "CN=John.Doe,OU=b,OU=a,DC=x,DC=example,DC=local" -Reset -NewPassword (ConvertTo-SecureString -AsPlainText "ABCD1234" -Force)

Bagaimana saya bisa mencapainya?


person Nikhil Tamhankar    schedule 14.02.2019    source sumber
comment
Saya pikir Anda kehilangan konsep inti. Jika Anda memiliki izin untuk menyetel ulang sandi di domain induk, Anda dapat melakukan hal yang sama di semua domain anak karena kepercayaan transitif. Sekarang dengan memberikan nama pengguna yang sama dalam identitas seharusnya bisa diterapkan di seluruh domain anak juga. Selain itu, tidak masalah dari sistem mana yang Anda jalankan karena pada akhirnya sistem tersebut berada di hutan yang sama.   -  person Ranadip Dutta    schedule 14.02.2019
comment
Anda harus menggunakan Get-ADUser pertama untuk menemukan pengguna. Dibutuhkan salah satu dari ini untuk parameter -Identity: DistinguishedName, GUID, SID atau nama akun SAM. Lalu, jika Anda memiliki objek pengguna, Anda dapat menggunakannya untuk cmdlet Set-ADAccountPassword. Tolong jelaskan apa John.Doe itu. Mungkin NamaAkun Sam, atau bagian dari UPN pengguna?   -  person Theo    schedule 15.02.2019


Jawaban (2)


Saya rasa ada kebingungan dalam jawaban lainnya, dan saya berharap dapat memperbaikinya.

Jika saya memahami pertanyaan Anda, Anda ingin menggunakan nama Akun Sam alih-alih DN untuk pengguna.

Coba ini.

Set-ADAccountPassword -Identity "Jdoe" -Reset -NewPassword (ConvertTo-SecureString -AsPlainText "ABCD1234" -Force)

dengan JDOE menjadi ID login John Doe. Jika Anda ingin melakukan ini di domain lain, tambahkan opsi -server. Untuk domain anak.MyDomain.local, lakukan seperti ini:

Set-ADAccountPassword -Identity "Jdoe" -Reset -server ChilDomain.MyDomain.Local -NewPassword (ConvertTo-SecureString -AsPlainText "ABCD1234" -Force)

Berbeda dengan salah satu komentar yang dibuat, hanya karena Anda memiliki kepercayaan, tidak berarti Anda akan memiliki izin untuk mengubah kata sandi di domain target.

Akun AD tempat Anda menjalankan proses ini harus memiliki izin tersebut, baik melalui keanggotaan di grup administrator lokal domain lain di DC, atau dengan secara khusus ditambahkan ke AD di domain lain melalui kebijakan (atau diterapkan langsung ke OU di pengguna masuk, dll), atau anggota admin perusahaan.

Anda tentu saja dapat menggunakan CN untuk pengguna di domain lain, namun perlu diingat, CN akan berbeda antara setiap domain.

person Community    schedule 14.02.2019
comment
Masih mendapatkan kesalahan yang sama: Get-ADUser : Tidak dapat menemukan objek dengan identitas: 'John.Doe' di bawah: 'DC=example,DC=local' meskipun saya menyebutkan opsi -server seperti, Set-ADAccountPassword -Identity $ADuser -Setel ulang -server subdomain.example.local -Password Baru (ConvertTo-SecureString -AsPlainText $password -Force) - person Nikhil Tamhankar; 15.02.2019
comment
Get-ADUser? Di mana Anda menggunakan Get-ADUser? - person Gabriel Luci; 15.02.2019

Saya menemukan cmdlet PowerShell untuk AD agak bodoh di lingkungan dengan banyak domain. Mereka tidak dapat menemukan domain tepercaya. Anda harus secara eksplisit mengarahkan mereka ke domain. Anda melakukannya dengan parameter -Server, di mana Anda memberinya nama domain yang sepenuhnya memenuhi syarat (atau DC tertentu jika Anda mau).

Jadi dalam kasus Anda, itu berarti:

Set-ADAccountPassword -Server x.example.local -Identity "CN=John.Doe,OU=b,OU=a,DC=x,DC=example,DC=local" -Reset -NewPassword (ConvertTo-SecureString -AsPlainText "ABCD1234" -Force)
person Gabriel Luci    schedule 14.02.2019
comment
Masih mendapatkan kesalahan yang sama: Get-ADUser : Tidak dapat menemukan objek dengan identitas: 'John.Doe' di bawah: 'DC=example,DC=local' meskipun saya menyebutkan opsi -server seperti, Set-ADAccountPassword -Identity $ADuser -Setel ulang -server subdomain.example.local -Password Baru (ConvertTo-SecureString -AsPlainText $password -Force) - person Nikhil Tamhankar; 15.02.2019