فعال سازی شماره پرسنلی در Active Directory

 

برای اینکه شما بتوانید از مقدار employee ID در AD استفاده کنید. این مقدار به صورت پیش فرض در AD وجود دارد ولی قابل استفاده نیست. برای اینکه این مقدار را بتوان استفاده کرد باید تغییراتی در ساختار Schema بدهید. به همین دلیل باید ابتدا windows support tools را از CD ویندوز سرور نصب کنید.

۱- کنسول Schema را نصب کنید. به وسیله وارد کردن دستور regsvr32 schmmgmt.msc در منوی Run

2- برای اینکه بتوانیم employeeID و employeeNumber که به صورت مشخصه arreibute در schema وجود دارد را به person class اضافه کنیم. باید بر روی Person در Schema classes کلیک راست کرده. Attribute را انتخاب کرده. بر روی Add کلیک کرده و  employeeID را چیدا کرده و Ok را انتخاب کنید. همین مراحل را برای employeeNumber تکرار کنید.

۳- باید کنسول Active Directory Service Interfaces (ADSI) Edit را اجرا کنید. سپس به مسیر زیر بروید.

Configuration Container, CN=Configuration, CN=DisplaySpecifiers, CN=409

4- در قسمت سمت راست مقدار CN=user-display را پیدا و بر روی آن کلیک راست کنید. بر روی Properties کلیک کنید.

۵- در قسمت Edit Attribute مقدار زیر را وارد کنید.

,&Employee ID, eid.vbs

سپس Add را بزنید و مقدار زیر را انتخاب کنید.

,&Employee Number, enum.vbs

6- این مراحل باعث تنظیم شدن EmployeeID و EmployeeNumber بر روی context menu برای یک user در Microsoft Management (MMC) Active Directory Users and Computers snap-in می شود.

۷- شما باید فایل اسکریپت های زیر را نوشته و در درایو C ذخیره کنید.

——–
eid.vbs
——–
Dim oVar
Dim oUsr
Dim tmp
Set oVar = Wscript.Arguments
Set oUsr = GetObject(oVar(0))
tmp = InputBox("The Employee ID of the user is: " & oUsr.employeeID & vbCRLF & vbCRLF & "If you would like enter a new number or modify the existing number, enter the new number in the textbox below")
if tmp "" then oUsr.Put "employeeID",tmp
oUsr.SetInfo
Set oUsr = Nothing
WScript.Quit
———
enum.vbs
———
Dim oVar
Dim oUsr
Dim tmp
Set oVar = Wscript.Arguments
Set oUsr = GetObject(oVar(0))
tmp = InputBox("The Employee Number for this user is: " & oUsr.EmployeeNumber & vbCRLF & vbCRLF & "If you would like enter a new number or modify the existing number, enter the new number in the textbox below")
if tmp "" then oUsr.Put "employeeNumber",tmp
oUsr.SetInfo
Set oUsr = Nothing
WScript.Quit