â Ă
h, inget fungerar för mig, hjÀlp!
â Oroa dig inte, vi fixar det nu. NĂ€mn datorns namnâŠ
(en klassiker frÄn teknisk support)
Bra, om du har verktyg som BgInfo eller om dina anvÀndare kÀnner till kortkommandot Windows+Pause/Break och kan trycka pÄ det. Det finns till och med sÀllsynta exemplar som har lÀrt sig namnet pÄ sin dator. Men ofta har den som ringer, utöver sitt huvudproblem, ett andra problem: att ta reda pÄ datorns namn/IP-adress. Och det tar ofta betydligt mer tid att lösa detta andra problem Àn det första (och allt som behövdes var att byta bakgrund eller ÄterstÀlla en förlorad genvÀg :).
Det Àr mycket trevligare att höra nÄgot i stil med:
â Tatjana Sergejevna, oroa dig inte, jag ansluter mig nuâŠ
Och för detta behövs faktiskt inte sÄ mycket.
För teknisk support rÀcker det med att kÀnna till namnen pÄ datorerna och komma ihÄg vem som jobbar med vad.
Innan jag gÄr in pÄ den lösning vi anvÀnder nu, kommer jag kort att gÄ igenom andra alternativ för att kritisera dem ordentligt förklara mitt val.
- , och liknande. Om du har mycket pengar finns det Àven betalda alternativ. PoÀngen Àr att teknisk information visas pÄ skrivbordet: datorns namn, IP-adress, inloggning osv. I Desktop Info kan man till och med ha prestandagrafer som tar upp halva skÀrmen.
Det Àr irriterande eftersom anvÀndaren för Bginfo, till exempel, behöver minimera fönster för att se de nödvÀndiga uppgifterna. Dessutom har vi sett flera gÄnger hos BgInfo , dÀr ny text visas ovanpÄ gammal.
Vissa anvÀndare blir irriterade över att adminstratörerna skriver skrÀmmande 192.168.0.123 pÄ ansiktet av en utstrÀckt katt pÄ skrivbordet, vilket förstör estetiken av bakgrundsbilden, och det demotiverar sÄklart och dödar helt arbetsmoralen. - En genvÀg som heter "Vem Àr jag" (försök inte lÀgga till ett frÄgetecken i slutet :). En klassisk genvÀg pÄ skrivbordet som döljer ett snyggt eller mindre snyggt skript som visar nödvÀndig information i form av en dialogruta. Ibland lÀgger man sjÀlva skriptet pÄ skrivbordet istÀllet för genvÀgen, vilket jag personligen anser vara smaklöst.
Nackdelen Àr att för att starta genvÀgen, precis som i det första fallet, mÄste alla öppna fönster minimeras (vi rÀknar inte med de som bara har ett fönster med patience öppet pÄ sin arbetsstation). För övrigt, vet dina anvÀndare vart de ska klicka för att minimera alla fönster? RÀtt, med fingret i ögat pÄ administratören.
Ăven kaptenen pĂ„pekar att bĂ„da de ovan beskrivna metoderna har en stor nackdel, nĂ€mligen att anvĂ€ndaren, som kan vara lite blind, dum och överlag ljuga, Ă€r involverad i att hĂ€mta information.
Alternativet att öka datorvana, dÀr alla vet vart de ska kolla i Windows för att se namnet pÄ sin dator, kommer jag inte att betrakta: det Àr en Àdel sak, men mycket svÄr. Och om företaget har en hög personalomsÀttning, kan det bli helt hopplöst. Vad ska man sÀga, i de flesta fall kommer de knappt ens ihÄg sitt eget inloggningsnamn.
Jag har uttryckt mina tankar, nu till saken.
Idén var hÀmtad frÄn en skribent pÄ Habr. frÄn .
KÀrnan i idén Àr att vid anvÀndarens inloggning i Windows, sÄ registrerar inloggningsskriptet den nödvÀndiga informationen (tid och datornamn) i en viss attribut av anvÀndarkontot. Vid utloggning körs ett motsvarande utloggningsskript.
SjÀlva idén tilltalade mig, men i praktiken var det nÄgot som inte var tillfredsstÀllande.
- Gruppolitiken som anger inloggnings- och utloggningsskripten för anvÀndarna tillÀmpas pÄ hela domÀnen, sÄ dessa skript kommer att köras pÄ vilken maskin som helst dit anvÀndarna loggar in. Om ni anvÀnder terminallösningar (till exempel Microsoft RDS eller Citrix-produkter) tillsammans med arbetsstationer, Àr denna metod opraktisk.
- Data registreras i attributet Department för anvÀndarkontot, som den vanliga anvÀndaren endast har lÀsbehörighet till. Förutom att skriptet Àven gör Àndringar i attributet Department för datorns konto, som anvÀndarna som standard inte heller kan Àndra. SÄ för att lösningen ska fungera föreslÄr författaren att standard sÀkerhetsinstÀllningar för AD-objekt Àndras.
- Datumformatet beror pÄ lokaliseringsinstÀllningarna pÄ den slutliga maskinen, sÄ frÄn en maskin kan vi fÄ 10 november 2018 14:53, medan frÄn en annan fÄr vi 11/10/18 2:53 p.m.
För att ÄtgÀrda dessa brister har följande gjorts.
- GPO lÀnkas inte till domÀnen, utan till OU med maskiner (jag separerar anvÀndare och maskiner i olika OU och rÄder andra att göra detsamma). Vid detta Àr instÀllt pÄ merge.
- Skriptet kommer att registrera data endast i anvÀndarens konto i attributet Info, som anvÀndaren kan Àndra sjÀlv för sitt konto.
- En del av koden som genererar vÀrdet för attributet har Àndrats.
Nu ser skripten ut sÄ hÀr:
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 & " " & " @ " & 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 & " " & " @ " & strComputerName
oUser.Setinfo
Den som först hittar alla skillnader mellan inloggnings- och utloggningsskriptet fĂ„r en pluspoĂ€ng i sin karma. đ
För att fÄ en tydlig översikt har ett litet PS-skript skapats:
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 "Information om inloggningar" -Wait
SÄ allt stÀlls in pÄ ett-tre:
- vi skapar GPO med de nödvÀndiga instÀllningarna och lÀnkar den till avdelningen med anvÀndarnas arbetsstationer:
- vi gĂ„r och dricker te (om AD har ett stort antal anvĂ€ndare, behövs det mycket te đ
- vi kör PS-skriptet och fÄr resultatet:

I den övre delen av fönstret finns ett bekvÀmt filter dÀr man kan sortera data efter vÀrden i ett eller flera fÀlt. Klicka pÄ kolumnerna i tabellen sorterar posterna efter motsvarande fÀlts vÀrden.
Vi kan vackert "packa" vÄr lösning.

För detta kommer vi att lÀgga till en genvÀg för att köra skriptet för teknisk support, dÀr "objekt"-fÀltet har nÄgot liknande:
powershell.exe -NoLogo -ExecutionPolicy Bypass -File "servershareScriptsGet-UsersByPCsInfo.ps1"
Om det finns mÄnga supportmedarbetare kan du dela ut en genvÀg med hjÀlp av .
NÄgra sista kommentarer.
- PÄ maskinen dÀr PS-skriptet körs mÄste modulen Active Directory för PowerShell vara installerad (det rÀcker med att lÀgga till AD-administrationsverktyg i Windows-komponenterna).
- De flesta attribut för sitt konto kan anvÀndaren som standard inte redigera. TÀnk pÄ detta om du vÀljer att anvÀnda ett attribut som skiljer sig frÄn Info.
- Informera alla berörda kollegor om vilket attribut du kommer att anvÀnda. Till exempel anvÀnds samma Info för interaktivt tillÀgg av anteckningar till anvÀndarens lÄda i Exchange Servers administratörsverktyg och nÄgon kan lÀtt radera det, eller bli ledsen nÀr den information som de har lagt till raderas av ditt skript.
- Om du har flera Active Directory-webbplatser, ta hÀnsyn till replikationsfördröjningar. Till exempel om du vill fÄ aktuell information om anvÀndare frÄn AD-webbplats A och kör skriptet frÄn en maskin frÄn AD-webbplats B, kan du göra sÄ hÀr:
Get-ADUser -Server DCfromSiteA -SearchBase $OU -Properties * -Filter * | Select-Object DisplayName, SamAccountName, info | Sort DisplayName | Out-GridView -Title "Information om inloggningar" -Wait
DCfromSiteA â namnet pĂ„ domĂ€nkontrollanten för webbplats A (som standard kopplar cmdlet Get-AdUser till den nĂ€rmaste domĂ€nkontrollanten)

Jag skulle uppskatta om du skulle besvara den korta undersökningen nedan.
Endast registrerade anvÀndare kan delta i omröstningen. , tack.
Vad anvÀnder ni?
bginfo, Desktop info etc. (gratis mjukvara)
betalda motsvarigheter till bginfo
jag gör som i artikeln
inte aktuellt, eftersom jag anvÀnder VDI/RDS etc.
just nu anvÀnder jag inget, men funderar pÄ det
jag behöver inte samla sÄdan data
annat (dela gÀrna i kommentarerna)
112 anvÀndare har röstat. 39 anvÀndare avstod.
KĂ€lla: habr.com

