Windows: кімнің қайда кіргенін табыңыз

Windows: кімнің қайда кіргенін табыңыз
- О, маған ештеңе көмектеспейді, көмектес!
-Уайымдама, қазір бәрін реттейміз. Компьютеріңіздің атын беріңіз...
(қоңыраулардан техникалық қолдауға дейінгі жанрдың классикасы)

Егер сізде la BgInfo құралы болса немесе пайдаланушылар Windows+Үзіліс/Үзіліс пернелер тіркесімін білсе және оны қалай басуға болатынын білсе жақсы. Тіпті сирек кездесетін үлгілер бар, олар өз көлігінің атын біле алды. Бірақ жиі, оның негізгі мәселесінен басқа, қоңырау шалушының екінші мәселесі бар: компьютердің атын/IP мекенжайын білу. Көбінесе бұл екінші мәселені шешу үшін біріншіге қарағанда әлдеқайда көп уақыт қажет (және сізге тұсқағазды өзгерту немесе жетіспейтін таңбашаны қайтару қажет болды :).
Бірақ келесідей нәрсені есту әлдеқайда жақсы:
- Татьяна Сергеевна, уайымдамаңыз, мен қосылып жатырмын...


Және бұл үшін сізге көп нәрсе қажет емес.
Техникалық қолдау көрсету маманы тек машиналардың атын есте сақтап, кімнің жұмыс істейтінін есте сақтауы керек.
Қазіргі уақытта біз қолданып жатқан шешімді сипаттамас бұрын, мен басқа нұсқаларды қысқаша қарастырамын, осылайша мен оларды сынға алып, таңдауымды түсіндіре аламын.

  1. BgInfo, Жұмыс үстелі туралы ақпарат және т.б. Ақша көп болса, ақылы бар. Мәселе мынада, техникалық ақпарат жұмыс үстелінде көрсетіледі: машина аты, IP мекенжайы, логин және т.б. Жұмыс үстелі туралы ақпаратта өнімділік графиктерін экранның жартысына дейін сығуға болады.
    Маған ұнамайтыны сол Bginfo үшін, мысалы, пайдаланушы қажетті деректерді көру үшін терезелерді кішірейтуі керек. Мен және менің әріптестерім BgInfo сайтында бірнеше рет бақылаған болатынбыз тән артефакт, ескі мәтіннің үстінде жаңа мәтін көрсетілгенде.
    Кейбір пайдаланушыларды әкімшілер жұмыс үстелінде созылған мысықтың бетіне қорқынышты 192.168.0.123 суретін салып, фондық суреттің эстетикасын бұзады және, әрине, бұл өте мотивация береді және жұмыс рухын толығымен өлтіреді. .
  2. «Мен кіммін» белгісі (соңында сұрақ белгісін қоюға тырыспаңыз :). Жұмыс үстеліндегі классикалық таңбаша, оның артында диалогтық терезе түрінде қажетті ақпаратты көрсететін ұқыпты немесе онша ұқыпты емес сценарий жасырылады. Кейде төте жолдың орнына олар сценарийдің өзін жұмыс үстеліне қояды, бұл IMHO жаман әдет.
    Кемшілігі мынада: төте жолды іске қосу үшін, бірінші жағдайдағыдай, сіз барлық ашық терезелерді азайтуыңыз керек (жұмыс машинасында жалғыз пасьянс терезесі ашылған сәттіліктің сүйіктілерін есепке алмаймыз). Айтпақшы, сіздің пайдаланушыларыңыз барлық терезелерді кішірейту үшін қайда басу керектігін біледі ме? Дұрыс, админнің көзіндегі бармақ.

Сондай-ақ, қақпақ жоғарыда сипатталған екі әдістің де негізгі кемшілігі бар, бұл пайдаланушы соқыр, ақымақ немесе тіпті өтірік айтуы мүмкін ақпарат алуға қатысады.
Мен компьютерлік сауаттылықты арттыру мүмкіндігін қарастырмаймын, әркім Windows жүйесінде өз машинасының атын қай жерден іздеу керектігін біледі: бұл игі іс, бірақ өте қиын. Ал егер компанияда кадрлардың тұрақсыздығы болса, онда бұл мүлдем құрдымға кетеді. Не айта аламын, көп жағдайда олар өздерінің логиндерін есіне түсірмейді.

Мен жанымды төктім, ал енді мәніне.
Хабаров тұрғынының идеясы негізге алынды орта -дан осы баптың.
Идеяның мәні пайдаланушы Windows жүйесіне кірген кезде жүйеге кіру сценарийі пайдаланушы тіркелгісінің белгілі бір атрибутына қажетті ақпаратты (уақыт және машина атауы) енгізеді. Жүйеден шыққан кезде осыған ұқсас жүйеден шығу сценарийі орындалады.

Маған идеяның өзі ұнады, бірақ іске асыруда көңілім толмайтын нәрселер болды.

  1. Пайдаланушылар үшін жүйеге кіру және шығу сценарийлерін көрсететін топ саясаты бүкіл доменге қолданылады, сондықтан сценарийлер пайдаланушылар кіретін кез келген құрылғыда іске қосылады. Егер сіз жұмыс станцияларымен бірге терминалдық шешімдерді қолдансаңыз (мысалы, Microsoft RDS немесе Citrix өнімдері), бұл тәсіл қолайсыз болады.
  2. Деректер қарапайым пайдаланушы тек оқуға рұқсаты бар пайдаланушы тіркелгісінің Департамент атрибутына енгізіледі. Пайдаланушы тіркелгісінің төлсипатына қоса, сценарий әдепкі бойынша пайдаланушылар да өзгерте алмайтын компьютер тіркелгісінің Бөлім атрибутына өзгерістер енгізеді. Сондықтан шешімнің жұмыс істеуі үшін автор AD нысандары үшін қауіпсіздік параметрлерінің стандарттарын өзгертуді ұсынады.
  3. Күн пішімі мақсатты құрылғыдағы локализация параметрлеріне байланысты, сондықтан бір құрылғыдан 10 жылдың 2018 қарашасы 14:53, ал екіншісінен 11 10:18 сағатын ала аламыз.

Осы кемшіліктерді жою үшін төмендегідей жұмыстар атқарылды.

  1. GPO доменге емес, машиналары бар OU-мен байланысты (мен пайдаланушылар мен машиналарды әртүрлі OU-ге бөлемін және басқаларға кеңес беремін). Оның үстіне, үшін кері цикл саясатын өңдеу режимі режимі орнатылған қосылу.
  2. Сценарий тек атрибуттағы пайдаланушы тіркелгісіне деректерді жазады Ақпарат, оны пайдаланушы өз тіркелгісі үшін дербес өзгерте алады.
  3. Төлсипат мәнін жасайтын код бөлігі өзгертілді

Енді сценарийлер келесідей көрінеді:
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

Logon және Logoff сценарийлерінің арасындағы барлық айырмашылықтарды кім бірінші тапса, карма үшін плюс алады. 🙂
Сондай-ақ, көрнекі ақпаратты алу үшін келесі шағын PS сценарийі жасалды:
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

Барлығы бір-екі-үш рет конфигурацияланған:

  1. қажетті параметрлері бар GPO жасаңыз және оны пайдаланушы жұмыс станциялары бар бөліммен байланыстырыңыз:
    Windows: кімнің қайда кіргенін табыңыз
  2. шай ішейік (егер AD қолданушылары көп болса, сізге көп шай керек :)
  3. PS сценарийін іске қосыңыз және нәтижені алыңыз:
    Windows: кімнің қайда кіргенін табыңыз
    Терезенің жоғарғы жағында бір немесе бірнеше өрістердің мәндері негізінде деректерді таңдауға болатын ыңғайлы сүзгі бар. Кесте бағандарын басу жазбаларды сәйкес өрістердің мәндері бойынша сұрыптайды.

Біз шешімімізді әдемі «орауға» аламыз.
Windows: кімнің қайда кіргенін табыңыз
Мұны істеу үшін біз «нысан» өрісінде осындай нәрсеге ие болатын техникалық қолдау мамандары үшін сценарийді іске қосу үшін төте жолды қосамыз:
powershell.exe -NoLogo -ExecutionPolicy Bypass -File "servershareScriptsGet-UsersByPCsInfo.ps1"

Техникалық қолдау көрсету қызметкерлері көп болса, сіз таңбашаны пайдаланып тарата аласыз ОЛ МАҢЫЗДЫ ЕМЕС.

Бірнеше соңғы пікірлер.

  • PowerShell үшін Active Directory модулі PS сценарийі іске қосылған құрылғыда орнатылуы керек (ол үшін Windows құрамдастарында AD басқару құралдарын қосыңыз).
  • Әдепкі бойынша, пайдаланушы өз тіркелгісінің атрибуттарының көпшілігін өңдей алмайды. Басқа төлсипатты пайдалануды шешсеңіз, мұны есте сақтаңыз Ақпарат.
  • Қандай атрибутты пайдаланатындығыңызды барлық қатысушы әріптестерге хабарлаңыз. Мысалы, дәл солай Ақпарат Exchange серверінің басқару тақтасында пайдаланушының пошта жәшігіне жазбаларды интерактивті түрде қосу үшін пайдаланылады және біреу оны оңай қайта жаза алады немесе олар қосқан ақпарат сценарий арқылы қайта жазылғанда қайғырады.
  • Егер сізде бірнеше Active Directory сайттары болса, репликацияның кешігуіне жол беріңіз. Мысалы, AD сайтындағы пайдаланушылар туралы соңғы ақпаратты алғыңыз келсе және AD сайтындағы B құрылғысынан сценарийді іске қосқыңыз келсе, мұны істеуге болады:
    Get-ADUser -Server DCfromSiteA -SearchBase $OU -Properties * -Filter * | Select-Object DisplayName, SamAccountName, info | Sort DisplayName | Out-GridView -Title "Информация по логонам" -Wait

    DCfromSiteA — А сайтының домен контроллерінің атауы (әдепкі бойынша Get-AdUser командлеті жақын маңдағы домен контроллеріне қосылады)

Windows: кімнің қайда кіргенін табыңыз

Сурет көзі

Төмендегі қысқа сауалнамаға қатыса алсаңыз, мен риза болар едім.

Сауалнамаға тек тіркелген пайдаланушылар қатыса алады. Кіру, өтінемін.

Сіз не қолданасыз?

  • bginfo, жұмыс үстелі туралы ақпарат т.б. (тегін)

  • bginfo ақылы аналогтары

  • Мен мұны мақаладағыдай жасаймын

  • қатысы жоқ, өйткені Мен VDI/RDS және т.б. пайдаланамын.

  • Мен әлі ештеңе қолданбаймын, бірақ мен бұл туралы ойлаймын

  • Маған мұндай деректерді жинаудың қажеті жоқ

  • басқа (түсініктемелерде бөлісіңіз)

112 пайдаланушы дауыс берді. 39 пайдаланушы қалыс қалды.

Ақпарат көзі: www.habr.com

пікір қалдыру