- Oh, tidak ada yang berhasil untuk saya, tolong!
- Jangan khawatir, sekarang kami akan memperbaiki semuanya. Apa nama komputer ...
(klasik genre dari panggilan ke dukungan teknis)
Nah, jika Anda memiliki alat ala BgInfo atau pengguna Anda tahu tentang cara pintas Windows + Pause / Break dan tahu cara mengkliknya. Bahkan ada contoh langka yang berhasil mempelajari nama mobil mereka. Tetapi sering kali si penelepon, di samping masalah utamanya, memiliki kedua: untuk mengetahui nama / alamat IP komputer. Dan seringkali dibutuhkan waktu lebih lama untuk menyelesaikan masalah kedua ini daripada yang pertama (dan Anda hanya perlu mengganti wallpaper atau mengembalikan label yang hilang :).
Tetapi jauh lebih baik untuk mendengar sesuatu seperti:
- Tatyana Sergeevna, jangan khawatir, saya sudah terhubung ...
Tapi tidak begitu banyak yang dibutuhkan untuk ini.
Seorang spesialis dukungan teknis hanya perlu mengingat nama-nama mesin dan ingat siapa yang bekerja untuk apa.Sebelum menjelaskan solusi yang kami gunakan sekarang, saya akan mempertimbangkan secara singkat opsi lain untuk
mengkritik mereka sepenuhnya untuk menjelaskan pilihan mereka.
- BgInfo , Info Desktop dan sejenisnya. Jika ada banyak uang, ada juga yang dibayar. Intinya adalah bahwa informasi teknis ditampilkan pada desktop: nama mesin, alamat IP, login, dll. Di Info Desktop, Anda bahkan dapat memotong grafik kinerja hingga setengah layar.
Itu tidak cocok untuk Bginfo yang sama, misalnya, pengguna perlu meminimalkan jendela untuk melihat data yang diperlukan. Rekan-rekan saya dan saya lebih dari sekali mengamati artefak karakteristik di BgInfo ketika teks baru ditampilkan di atas yang lama.
Beberapa pengguna terganggu oleh fakta bahwa admin menggambar 192.168.0.123 yang menakutkan di muka kucing yang direntangkan pada desktop dan merusak estetika gambar latar belakang, dan, tentu saja, itu sangat menurunkan motivasi dan benar-benar mematikan suasana kerja.
- Label a la "Who am I" (jangan coba-coba menambahkan tanda tanya padanya di akhir :). Pintasan klasik di desktop, di belakangnya ada skrip rapi atau tidak terlalu yang menampilkan informasi yang diperlukan dalam bentuk kotak dialog. Terkadang, alih-alih pintasan, skrip itu sendiri ditempatkan di desktop, yang IMHO buruk.
Kerugiannya adalah untuk meluncurkan pintasan, seperti pada kasus pertama, Anda harus meminimalkan semua jendela yang terbuka (antek nasib apa pun yang memiliki satu jendela dengan solitaire pada mesin yang bekerja, kami tidak memperhitungkan). Omong-omong, apakah pengguna Anda tahu di mana harus menyodok untuk meminimalkan semua jendela? Itu benar, dengan jari di mata admin.
Penutup tersebut juga menunjukkan bahwa kedua metode di atas memiliki kelemahan utama dalam hal pengguna terlibat dalam memperoleh informasi,
yang dapat menjadi buta, bodoh, dan bahkan berbohong.Saya tidak akan mempertimbangkan opsi untuk meningkatkan literasi komputer, ketika semua orang tahu di mana harus mencari nama mesin mereka di Windows: bisnisnya mulia, tetapi sangat sulit. Dan jika perusahaan memiliki pergantian staf, maka itu benar-benar bencana. Apa yang bisa saya katakan, dalam kebanyakan kasus mereka tidak ingat login mereka.
Dia mencurahkan jiwanya, dan sekarang ke titik.
Gagasan mittel habrovchanin dari
artikel ini diambil sebagai dasar.
Inti dari idenya adalah bahwa ketika pengguna masuk ke Windows, skrip log masuk memasukkan informasi yang diperlukan (waktu dan nama mesin) ke dalam atribut spesifik dari akun pengguna. Dan saat keluar dari sistem, ia menjalankan skrip logoff yang sama.
Saya menyukai ide itu sendiri, tetapi ada sesuatu yang tidak berhasil dalam implementasi.
- Kebijakan grup, di mana skrip logon dan logoff ditulis untuk pengguna, diterapkan ke seluruh domain, sehingga skrip akan bekerja pada mesin apa pun yang digunakan pengguna untuk masuk. Jika Anda menggunakan solusi terminal bersama dengan workstation (misalnya, produk Microsoft RDS atau Citrix), pendekatan ini akan merepotkan.
- Data dimasukkan dalam atribut Departemen dari akun pengguna, di mana rata-rata pengguna memiliki akses hanya baca. Selain atribut akun pengguna, skrip juga membuat perubahan pada atribut Departemen pada akun komputer, yang juga tidak dapat diubah oleh pengguna. Oleh karena itu, untuk membuat solusinya bekerja, penulis menyarankan untuk mengubah pengaturan keamanan default untuk objek AD.
- Format tanggal tergantung pada pengaturan lokalisasi pada mesin tujuan, jadi dari satu mesin kita bisa mendapatkan 10 November 2018 14:53, dan yang lain 11/10/18 14:53
Untuk mengatasi kekurangan ini, berikut ini dilakukan.
- GPO tidak menautkan ke domain, tetapi ke OU dengan mesin (saya memisahkan pengguna dan mesin dengan OU yang berbeda dan menyarankan orang lain). Pada saat yang sama, mode pemrosesan kebijakan loopback diatur ke mode gabungan .
- Skrip hanya akan memasukkan data ke akun pengguna di atribut Info , yang dapat diubah oleh pengguna secara mandiri untuk akunnya.
- Mengubah sepotong kode yang menghasilkan nilai atribut
Sekarang skripnya terlihat seperti ini:
SaveLogonInfoToAdUserAttrib.vbsOn Error Resume Next Set wshShell = CreateObject("WScript.Shell") strComputerName = wshShell.ExpandEnvironmentStrings("%COMPUTERNAME%") Set adsinfo = CreateObject("ADSystemInfo") Set oUser = GetObject("LDAP://" & adsinfo.UserName) strMonth = Month(Now()) If Len(strMonth) < 2 then strMonth = "0" & strMonth End If strDay = Day(Now()) If Len(strDay) < 2 then strDay = "0" & strDay End If strTime = FormatDateTime(Now(),vbLongTime) If Len(strTime) < 8 then strTime = "0" & strTime End If strTimeStamp = Year(Now()) & "/" & strMonth & "/" & strDay & " " & strTime oUser.put "info", strTimeStamp & " <logon>" & " @ " & strComputerName oUser.Setinfo
SaveLogoffInfoToAdUserAttrib.vbs On Error Resume Next Set wshShell = CreateObject("WScript.Shell") strComputerName = wshShell.ExpandEnvironmentStrings("%COMPUTERNAME%") Set adsinfo = CreateObject("ADSystemInfo") Set oUser = GetObject("LDAP://" & adsinfo.UserName) strMonth = Month(Now()) If Len(strMonth) < 2 then strMonth = "0" & strMonth End If strDay = Day(Now()) If Len(strDay) < 2 then strDay = "0" & strDay End If strTime = FormatDateTime(Now(),vbLongTime) If Len(strTime) < 8 then strTime = "0" & strTime End If strTimeStamp = Year(Now()) & "/" & strMonth & "/" & strDay & " " & strTime oUser.put "info", strTimeStamp & " <logoff>" & " @ " & strComputerName oUser.Setinfo
Siapa pun yang pertama kali menemukan semua perbedaan antara log masuk dan skrip logoff adalah nilai tambah dalam karma. :)
Juga, untuk mendapatkan informasi visual, skrip PS kecil dibuat:
Get-UsersByPCsInfo.ps1 $OU = "OU=MyUsers,DC=mydomain,DC=com" Get-ADUser -SearchBase $OU -Properties * -Filter * | Select-Object DisplayName, SamAccountName, info | Sort DisplayName | Out-GridView -Title " " -Wait
Secara total, semuanya dikonfigurasi untuk satu-dua-tiga:
- buat GPO dengan pengaturan yang diperlukan dan tautkan ke unit dengan workstation pengguna:

- pergi minum teh (jika AD dengan sejumlah besar pengguna, maka Anda memerlukan banyak teh :)
- Script PS dimulai dan kami mendapatkan hasilnya:

Di bagian atas jendela ada filter yang nyaman di mana Anda dapat memilih data berdasarkan nilai satu atau lebih bidang. Klik pada kolom tabel mengurutkan catatan berdasarkan nilai bidang yang sesuai.
Anda dapat dengan indah "mengemas" solusi kami.

Untuk melakukan ini, tambahkan pintasan untuk menjalankan skrip untuk spesialis dukungan teknis, yang akan memiliki sesuatu seperti ini di bidang "objek":
powershell.exe -NoLogo -ExecutionPolicy Bypass -File "\\server\share\Scripts\Get-UsersByPCsInfo.ps1"
Jika ada banyak karyawan pendukung teknis, maka Anda dapat mendistribusikan pintasan menggunakan
GPP .
Beberapa komentar pada akhirnya.
- Pada mesin dari mana skrip PS diluncurkan, modul Active Directory untuk PowerShell harus diinstal (untuk ini cukup menambahkan alat administrasi AD dalam komponen Windows).
- Pengguna tidak dapat mengedit sebagian besar atribut akunnya secara default. Ingatlah hal ini jika Anda memutuskan untuk menggunakan atribut selain Info .
- Beri tahu semua kolega yang terlibat tentang atribut mana yang akan Anda gunakan. Misalnya, Info yang sama digunakan untuk menambahkan catatan secara interaktif ke kotak surat pengguna di area admin Exchange Server dan seseorang dapat dengan mudah menimpanya, atau sedih ketika informasi yang ditambahkan akan menimpa skrip Anda.
- Jika Anda memiliki beberapa situs Direktori Aktif, maka sesuaikan untuk penundaan replikasi. Misalnya, jika Anda ingin mendapatkan informasi terkini tentang pengguna dari situs AD A, dan menjalankan skrip dari mesin dari situs AD B, maka Anda dapat melakukan ini:
Get-ADUser -Server DCfromSiteA -SearchBase $OU -Properties * -Filter * | Select-Object DisplayName, SamAccountName, info | Sort DisplayName | Out-GridView -Title " " -Wait
DCfromSiteA - nama pengontrol domain situs A (secara default, cmdlet Get-AdUser terhubung ke pengontrol domain terdekat)
Sumber GambarSaya akan berterima kasih jika Anda lulus survei singkat di bawah ini.