- Ak, man nekas nelīdz, palīdziet!
- Neuztraucieties, mÄs tagad visu izlabosim. Dodiet sava datora nosaukumu...
(žanra klasika no zvaniem līdz tehniskajam atbalstam)
Ir labi, ja jums ir rÄ«ks a la BgInfo vai lietotÄji zina par Windows+Pause/Break saÄ«sni un zina, kÄ to nospiest. Ir pat reti eksemplÄri, kuriem izdevies uzzinÄt sava auto nosaukumu. TaÄu nereti zvanÄ«tÄjam papildus savai galvenajai problÄmai ir arÄ« otra: datora vÄrda/IP adreses noskaidroÅ”ana. Un bieži vien Ŕīs otrÄs problÄmas atrisinÄÅ”ana prasa daudz vairÄk laika nekÄ pirmÄ (un jums vienkÄrÅ”i vajadzÄja nomainÄ«t fona attÄlu vai atgriezt trÅ«kstoÅ”o saÄ«sni :).
Bet ir daudz patÄ«kamÄk dzirdÄt kaut ko lÄ«dzÄ«gu:
- Tatjana Sergejevna, neuztraucieties, es jau izveidoju savienojumu ...
Un Ŕim jums nav nepiecieŔams daudz.
TehniskÄ atbalsta speciÄlistam atliek tikai iegaumÄt maŔīnu nosaukumus un atcerÄties, kurÅ” kuram strÄdÄ.
Pirms Å”obrÄ«d lietojamÄ risinÄjuma aprakstÄ«Å”anas Ä«sumÄ apskatÄ«Å”u citus variantus, lai varÄtu tos kritizÄt lÄ«dz galam un izskaidrot savu izvÄli.
BgInfo, InformÄcija par darbvirsmu un tamlÄ«dzÄ«gi. Ja ir daudz naudas, tad ir arÄ« maksas. Lieta tÄda, ka uz darbvirsmas tiek parÄdÄ«ta tehniskÄ informÄcija: maŔīnas nosaukums, IP adrese, pieteikÅ”anÄs u.c. Darbvirsmas informÄcijÄ varat pat izspiest veiktspÄjas diagrammas uz pusi ekrÄna.
Man nepatÄ«k, ka, piemÄram, tam paÅ”am Bginfo lietotÄjam ir jÄsamazina logi, lai redzÄtu nepiecieÅ”amos datus. ArÄ« mÄs ar kolÄÄ£iem ne reizi vien esam novÄrojuÅ”i BgInfo raksturÄ«gs artefakts, kad jauns teksts tiek parÄdÄ«ts virs vecÄ.
Dažus lietotÄjus kaitina fakts, ka administratori uz darbvirsmas izstiepta kaÄ·a sejas uzzÄ«mÄ biedÄjoÅ”u 192.168.0.123, sabojÄjot fona attÄla estÄtiku, un, protams, tas ir Å”ausmÄ«gi demotivÄjoÅ”i un pilnÄ«bÄ nogalina darba garu. .
EtiÄ·ete a la āKas es esmuā (nemÄÄ£iniet pievienot jautÄjuma zÄ«mi beigÄs :). Klasisks Ä«sceļŔ uz darbvirsmas, aiz kura slÄpjas glÄ«ts vai ne tik veikls skripts, kas parÄda nepiecieÅ”amo informÄciju dialoglodziÅa veidÄ. Dažreiz Ä«sceļa vietÄ viÅi uz darbvirsmas ievieto paÅ”u skriptu, kas IMHO ir sliktas manieres.
TrÅ«kums ir tÄds, ka, lai palaistu saÄ«sni, tÄpat kÄ pirmajÄ gadÄ«jumÄ, ir jÄsamazina visi atvÄrtie logi (mÄs neÅemam vÄrÄ tos laimes mÄ«luļus, kuriem ir atvÄrts vienÄ«gais solitÄra logs savÄ darba maŔīnÄ). Starp citu, vai jÅ«su lietotÄji zina, kur noklikŔķinÄt, lai samazinÄtu visus logus? Pareizi, pirksts adminam acÄ«s.
VÄciÅÅ” arÄ« liek domÄt, ka abÄm iepriekÅ” aprakstÄ«tajÄm metodÄm ir galvenais trÅ«kums, ka informÄcijas iegÅ«Å”anÄ ir iesaistÄ«ts lietotÄjs, kurÅ” var bÅ«t akls, stulbs vai pat melot.
Es neapsvÄrÅ”u iespÄju palielinÄt datorprasmi, kad visi zina, kur sistÄmÄ Windows meklÄt savas maŔīnas nosaukumu: tas ir cÄls mÄrÄ·is, bet ļoti sarežģīts. Un, ja uzÅÄmumam ir darbinieku mainÄ«ba, tad tas ir pilnÄ«gi postoÅ”s. Ko es varu teikt, vairumÄ gadÄ«jumu viÅi pat neatceras savu pieteikÅ”anos.
Es izlÄju savu dvÄseli, un tagad pie lietas.
Par pamatu tika Åemta Habrovas iedzÄ«votÄja ideja Mittel no no Ŕī raksta.
Idejas bÅ«tÄ«ba ir tÄda, ka, lietotÄjam piesakoties sistÄmÄ Windows, pieteikÅ”anÄs skripts ievada nepiecieÅ”amo informÄciju (laiku un maŔīnas nosaukumu) noteiktÄ lietotÄja konta atribÅ«tÄ. Un, kad jÅ«s izrakstÄties no sistÄmas, tiek izpildÄ«ts lÄ«dzÄ«gs atteikÅ”anÄs skripts.
Man patika pati ideja, taÄu bija dažas lietas, ar kurÄm es nebiju apmierinÄts.
Grupas politika, kas nosaka lietotÄju pieteikÅ”anÄs un atteikÅ”anÄs skriptus, attiecas uz visu domÄnu, tÄpÄc skripti darbosies jebkurÄ datorÄ, kurÄ lietotÄji piesakÄs. Ja kopÄ ar darbstacijÄm izmantojat terminÄļa risinÄjumus (piemÄram, Microsoft RDS vai Citrix produktus), Ŕī pieeja bÅ«s neÄrta.
Dati tiek ievadÄ«ti lietotÄja konta atribÅ«tÄ Departaments, kuram vidusmÄra lietotÄjam ir tikai lasÄ«Å”anas piekļuve. Papildus lietotÄja konta atribÅ«tam skripts veic izmaiÅas arÄ« datora konta atribÅ«tÄ Department, ko lietotÄji arÄ« pÄc noklusÄjuma nevar mainÄ«t. TÄpÄc, lai risinÄjums darbotos, autore iesaka mainÄ«t AD objektu droŔības iestatÄ«jumu standartus.
Datuma formÄts ir atkarÄ«gs no lokalizÄcijas iestatÄ«jumiem mÄrÄ·a maŔīnÄ, tÄpÄc no vienas maŔīnas mÄs varam iegÅ«t 10. gada 2018. novembri 14:53, bet no citas 11/10/18 2:53.
Lai novÄrstu Å”os trÅ«kumus, tika veikts sekojoÅ”ais.
GPO ir saistÄ«ts nevis ar domÄnu, bet gan ar OU ar maŔīnÄm (es sadalu lietotÄjus un maŔīnas dažÄdos OU un konsultÄju citus). TurklÄt par cilpas politikas apstrÄdes režīms režīms ir iestatÄ«ts apvienot.
Skripts atribÅ«tÄ ierakstÄ«s datus tikai lietotÄja kontam Info, ko lietotÄjs var patstÄvÄ«gi mainÄ«t savam kontam.
MainÄ«ts koda fragments, kas Ä£enerÄ atribÅ«ta vÄrtÄ«bu
Tagad skripti izskatÄs Å”Ädi: SaveLogonInfoToAdUserAttrib.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 & " <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
Tas, kurÅ” pirmais atradÄ«s visas atŔķirÄ«bas starp Logon un Logoff skriptiem, iegÅ«s plusu par karmu. š
TÄpat, lai iegÅ«tu vizuÄlu informÄciju, tika izveidots Å”Äds neliels PS skripts: Get-UsersByPCsInfo.ps1
izveidojiet GPO ar nepiecieÅ”amajiem iestatÄ«jumiem un saistiet to ar nodaļu ar lietotÄju darbstacijÄm:
ejam iedzert tÄju (ja AD ir liels lietotÄju skaits, tad vajag daudz tÄjas :)
palaidiet PS skriptu un iegÅ«stiet rezultÄtu:
Loga augÅ”daÄ¼Ä ir Ärts filtrs, kurÄ varat atlasÄ«t datus, pamatojoties uz viena vai vairÄku lauku vÄrtÄ«bÄm. NoklikŔķinot uz tabulas kolonnÄm, ieraksti tiek sakÄrtoti pÄc atbilstoÅ”o lauku vÄrtÄ«bÄm.
MÄs varam skaisti āiepakotā savu risinÄjumu.
Lai to izdarÄ«tu, mÄs pievienosim saÄ«sni, lai palaistu skriptu tehniskÄ atbalsta speciÄlistiem, kuriem laukÄ āobjektsā bÅ«s kaut kas lÄ«dzÄ«gs Å”im: powershell.exe -NoLogo -ExecutionPolicy Bypass -File "servershareScriptsGet-UsersByPCsInfo.ps1"
Ja ir daudz tehniskÄ atbalsta darbinieku, varat izplatÄ«t saÄ«sni, izmantojot TAM NAV SVARÄŖGI.
Daži nobeiguma komentÄri.
PowerShell Active Directory modulis ir jÄinstalÄ datorÄ, no kura tiek palaists PS skripts (lai to izdarÄ«tu, Windows komponentos vienkÄrÅ”i pievienojiet AD administrÄÅ”anas rÄ«kus).
PÄc noklusÄjuma lietotÄjs nevar rediÄ£Ät lielÄko daļu sava konta atribÅ«tu. Paturiet to prÄtÄ, ja nolemjat izmantot citu atribÅ«tu, nevis Info.
InformÄjiet visus iesaistÄ«tos kolÄÄ£us, kuru atribÅ«tu izmantosit. PiemÄram, tas pats Info tiek izmantots, lai interaktÄ«vi pievienotu piezÄ«mes lietotÄja pastkastei Exchange Server administrÄÅ”anas panelÄ«, un kÄds to var viegli pÄrrakstÄ«t vai kļūt skumjÅ”, ja jÅ«su skripts pÄrraksta pievienoto informÄciju.
Ja jums ir vairÄkas Active Directory vietnes, Åemiet vÄrÄ replikÄcijas aizkavi. PiemÄram, ja vÄlaties iegÅ«t jaunÄko informÄciju par lietotÄjiem no AD vietnes A un palaist skriptu no maŔīnas no AD vietnes B, varat rÄ«koties Å”Ädi: Get-ADUser -Server DCfromSiteA -SearchBase $OU -Properties * -Filter * | Select-Object DisplayName, SamAccountName, info | Sort DisplayName | Out-GridView -Title "ŠŠ½ŃŠ¾ŃŠ¼Š°ŃŠøŃ ŠæŠ¾ Š»Š¾Š³Š¾Š½Š°Š¼" -Wait
DC no vietnesA ā vietnes A domÄna kontrollera nosaukums (pÄc noklusÄjuma Get-AdUser cmdlet izveido savienojumu ar tuvÄko domÄna kontrolleri)