Nama pengguna Active Directory: mengapa nama kanonik bervariasi? Bisakah saya melakukan sesuatu untuk membuatnya seragam?

10

Saya seorang administrator otodidak dari sebuah jaringan Active Directory yang digunakan untuk login Windows pada ~ 30 PC. Saya mewarisi sistem dari orang lain yang juga tidak memiliki pelatihan Microsoft langsung dan sebagai hasilnya saya berada dalam kegelapan pada beberapa hal.

Jaringan itu sendiri memiliki satu mesin Windows Server 2008 R2 tunggal yang bertindak sebagai pengontrol domain, DNS, berbagi file, dll. Login berfungsi dengan baik, tetapi saya mencari-cari daftar pengguna saat menonaktifkan akun lama dan saya melihat sesuatu yang saya tidak begitu mengerti. .

Berikut beberapa contoh akun pengguna:

  1. Nama Masuk: john
    Nama Depan: John
    Nama Belakang: Smith
    Nama Tampilan: John Smith
    Canonical Nama Objek: domain.com/Users/john

  2. Nama Masuk: bob
    Nama Depan : Bob
    Nama Belakang: Prancis
    Nama Tampilan: Bob Perancis
    Canonical Nama Objek: domain.com/Users/Bob French

Pengontrol domain saat ini ditukar dari yang lain yang digunakan untuk menjalankan Windows Server 2003. Akun sampel pertama dibuat ketika kotak Server 2003 adalah DC, yang kedua dibuat ketika kotak Server 2008 R2 yang lebih baru adalah DC. Mengapa Nama Canonical berbeda, dan apakah ada bedanya?

Saya sebagian besar terganggu oleh kenyataan bahwa daftar pengguna saya di browser direktori aktif memiliki setengah akun sebagai 'nama depan' dan setengah sebagai 'nama belakang nama belakang'.

Dapatkah saya melakukan sesuatu untuk membuat semuanya sama tanpa merusak akun yang berfungsi?

sendok merah
sumber
Apakah Anda benar-benar menyimpan pengguna di domain.com/UsersOU? Atau hanya sebuah contoh?
Mathias R. Jessen
Ya - mereka semua ada di domain.com/Users/ bersama dengan sejumlah grup keamanan. Apakah ini praktik buruk? Haruskah saya memindahkannya? Bisakah saya memindahkannya tanpa merusak semuanya?
evilspoon
2
Kecuali jika Anda memiliki aplikasi eksternal menggunakan ikatan sederhana untuk otentikasi, ya - Anda dapat memindahkannya dengan aman - dan Anda harus melakukannya. Ini memberikan kontrol yang jauh lebih baik atas alat Kebijakan Grup untuk memisahkan mereka dari kelompok keamanan terkenal. Saya akan memperbarui jawaban untuk meliput ini juga
Mathias R. Jessen
2
Itu tergantung pada berapa banyak objek di AD Anda dan pada bagaimana Anda ingin mereka diatur; umumnya, lebih baik menempatkan mereka di OU untuk mengaturnya lebih baik dan menerapkan GPO kepada mereka, dan itu dianggap praktik terbaik untuk meninggalkan wadah default (seperti "Pengguna" sendirian).
Massimo

Jawaban:

8

Active Directory tidak benar-benar memusatkan perhatian pada bagaimana RDN objek akun Pengguna (bagian terakhir dari Nama Canonical) berhubungan dengan properti lain seperti Nama Tampilan atau Nama Masuk - selama nilai setiap atribut individu tidak melanggar definisi skema.

Perilaku bentuk "Pengguna Baru" di Pengguna dan Komputer Direktori Aktif (serta sejumlah dialog lainnya) telah berubah secara signifikan antara Windows Server 2003 dan Windows Server 2008 R2 - dan itulah mungkin mengapa mereka tidak konsisten

Anda dapat menggunakan PowerShell untuk memindahkan akun non-sistem, dan kemudian pergi melalui pengguna dan mengubah nama mereka menjadi apa pun Nama Tampilan mereka:

# Create new OU named RegularUsers
New-ADOrganizationalUnit -Name RegularUsers -Path "dc=domain,dc=com"

# Retrieve all users that are not critical system objects
$users = Get-ADUser -SearchBase "CN=Users,DC=domain,DC=com" -SearchScope OneLevel -Filter {-not(isCriticalSystemObject -like '*')}

# Go through each and move to the new OU
foreach($user in $users){
    Move-ADObject $user -TargetPath "OU=RegularUsers,DC=domain,DC=com"
}

# Retrieve all users in the new OU
$movedUsers = Get-ADUser -SearchBase "CN=Users,DC=domain,DC=com" -SearchScope OneLevel -Filter '*'

foreach($user in $movedUsers){
    # Test if Display Name and object Name is the same, if not - rename
    if($user.DisplayName -ne $user.Name)
    { 
        Rename-ADObject $user -NewName "$($user.DisplayName)" 
    }
}

Untuk langkah pertama, Anda juga bisa menyorot semua akun pengguna di ADUC dan menyeret-n-jatuhkan ke lokasi lain.

Mathias R. Jessen
sumber
2

CN / DN suatu objek tidak terlalu relevan, karena hanya digunakan secara internal oleh AD dan dalam kueri LDAP; pengguna akhir (dan administrator) sangat jarang bisa melihatnya. Ini benar-benar berubah dengan sendirinya ketika Anda memindahkan objek di sekitar, karena itu mencakup jalur LDAP penuh objek.

Jika Anda ingin membakukannya, ini dapat dilakukan tanpa efek samping; satu-satunya pengguna hal yang benar-benar peduli dengan nama logon mereka, dan selama Anda tidak mengubah bahwa , mereka akan terus login seperti biasa.

Untuk mengubahnya, Anda bisa menggunakan konsol ADUC, atau perintah PowerShell Rename-ADObject .

Massimo
sumber
2
Saya akan mengatakan CN / DN penting ketika datang untuk mengintegrasikan dengan aplikasi. Integrasi AD biasanya tidak ditemukan, tempat LDAP biasanya berada. Sangat menyenangkan untuk memiliki CN / DN Anda mengikuti standar. Itu terlihat lebih cantik juga :) Informasi hebat tentang bagaimana sebenarnya mengubahnya.
Steve Butler
1

The dsmove perintah harus dapat mengubah nama kanonik untuk Anda. Saya sudah melakukan ini di lingkungan pengujian tetapi tidak pernah di lingkungan hidup jadi saya akan menyarankan untuk melanjutkan dengan hati-hati.

Juga, semi-terkait, saya akan menyarankan menerapkan kontroler domain lain untuk menghindari sakit kepala jika DC Anda hanya turun.

DKNUCKLES
sumber
Jika tingkat fungsional domain & hutan berada di Server 2008 R2, dapatkah kotak Server 2003 yang lama bertindak sebagai DC sekunder atau apakah kita perlu memutakhirkan OS mesin itu?
evilspoon
2
Anda tidak dapat menaikkan tingkat fungsi domain / hutan ke versi X kecuali semua DC di domain / hutan memiliki setidaknya rilis OS.
Massimo
@ evilspoon ya, Anda bisa, tetapi seperti yang dikatakan massimo, itu harus berada pada level Domain 2003 untuk melakukan itu.
Steve Butler
4
@SteveButler Sejak DFL / FFL 2008R2 tidak dapat dikembalikan lebih jauh dari level 2008, "ya" jelas bukan jawabannya di sini
Mathias R. Jessen
Baiklah, jadi opsi saya adalah membangun kembali domain pada tingkat 2003 (tidak akan terjadi) atau meningkatkan kotak 2003 ke 2008 R2 (juga mungkin tidak akan terjadi, bos saya akan lebih cepat menghabiskan uang pada mesin baru daripada bermain dengan yang lama). Saya akan memastikan cadangan kami baik, untuk berjaga-jaga seandainya ada sesuatu yang mati ...
evilspoon