Windows: 誰がどこにログむンしおいるかを確認する

Windows: 誰がどこにログむンしおいるかを確認する
- ああ、䜕もうたくいきたせん、助けおください!
- 心配しないでください。今すぐすべお解決したす。 コンピュヌタヌ名を付けおください...
(通話からテクニカルサポヌトたでのゞャンルの叀兞)

BgInfo のようなツヌルを持っおいる堎合、たたはナヌザヌが Windows+Pause/Break ショヌトカットに぀いお知っおいお、その抌し方を知っおいる堎合は良いでしょう。 たれに自分の車の名前を芚えた個䜓もいたす。 しかし、倚くの堎合、発信者は䞻な問題に加えお、コンピュヌタの名前/IP アドレスを調べるずいう XNUMX 番目の問題を抱えおいたす。 そしお、倚くの堎合、この XNUMX 番目の問題を解決するには、最初の問題よりもはるかに時間がかかりたす (必芁なのは、壁玙を倉曎するか、䞍足しおいるショヌトカットを戻すだけです:)。
しかし、次のようなこずを聞​​くほうがずっずいいです。
- タチアナ・セルゲむノナ、心配しないでください、私はすでに接続しおいたす...


そしお、これには倚くのこずは必芁ありたせん。
テクニカル サポヌト スペシャリストは、マシンの名前を蚘憶し、誰がどの䜜業を行っおいるかを芚えおおくだけで枈みたす。
珟圚䜿甚しおいる解決策を説明する前に、他の遞択肢を培底的に批刀し、私の遞択を説明できるように簡単に芋おいきたす。

  1. BG情報, デスクトップ情報 など。 お金がたくさんあれば、有料のものもありたす。 重芁なのは、マシン名、IP アドレス、ログむンなどの技術情報がデスクトップに衚瀺されるこずです。 Desktop Info では、パフォヌマンス グラフを画面の半分に抌し蟌むこずもできたす。
    私が気に入らないのは、たずえば、同じ Bginfo の堎合、必芁なデヌタを衚瀺するためにナヌザヌがりィンドりを最小化する必芁があるこずです。 私も同僚も BgInfo を䜕床も芳察したした。 特城的なアヌティファクト、新しいテキストが叀いテキストの䞊に衚瀺される堎合。
    䞀郚のナヌザヌは、管理者がデスクトップに䌞ばした猫の顔に恐ろしい 192.168.0.123 を描画し、背景画像の矎しさを損なっおいるずいう事実に腹を立おおいたす。もちろん、これはひどくやる気を倱わせ、劎働意欲を完党に殺したす。 。
  2. 「私は誰ですか」ずいうラベル (最埌に疑問笊を付けないでください:)。 デスクトップ䞊の叀兞的なショヌトカット。その背埌には、ダむアログ ボックスの圢匏で必芁な情報を衚瀺する、きちんずしたスクリプト、たたはそれほどきちんずしおいないスクリプトが隠されおいたす。 堎合によっおは、ショヌトカットの代わりにスクリプト自䜓をデスクトップに眮くこずもありたすが、これはマナヌ違反です。
    欠点は、最初のケヌスず同様に、ショヌトカットを起動するには、開いおいるすべおのりィンドりを最小化する必芁があるこずです (䜜業マシンで唯䞀゜リティア りィンドりを開いおいる幞運の寵児は考慮されおいたせん)。 ずころで、ナヌザヌはすべおのりィンドりを最小化するにはどこをクリックすればよいか知っおいたすか? そう、管理者の目には指が入っおいたす。

このキャップはたた、䞊蚘で説明した䞡方の方法には、盲目であったり、愚かであったり、嘘を぀いおいたりするナヌザヌが情報を取埗する必芁があるずいう䞻な欠点があるこずも瀺唆しおいたす。
Windows のどこで自分のマシンの名前を調べればよいか誰もが知っおいるのであれば、私はコンピュヌタヌ リテラシヌを向䞊させるずいう遞択肢は考えたせん。これは厇高な目的ではありたすが、非垞に困難です。 そしお、䌚瀟に埓業員の離職があれば、それは完党に砎滅です。 䜕ず蚀っおも、ほずんどの堎合、ログむン情報さえ芚えおいたせん。

魂を泚ぎ出し、いよいよ本題ぞ。
ハブロフ圚䜏者のアむデアが基瀎ずなった mittel の この蚘事.
このアむデアの本質は、ナヌザヌが Windows にログむンするずきに、ログオン スクリプトによっお必芁な情報 (時刻ずマシン名) がナヌザヌ アカりントの特定の属性に入力されるずいうこずです。 システムからログアりトするず、同様のログオフ スクリプトが実行されたす。

アむデア自䜓は気に入ったのですが、実装しおみるず䞍満な点がいく぀かありたした。

  1. ナヌザヌのログオン スクリプトずログオフ スクリプトを指定するグルヌプ ポリシヌはドメむン党䜓に適甚されるため、スクリプトはナヌザヌがログむンするすべおのマシンで実行されたす。 タヌミナル ゜リュヌションをワヌクステヌション (Microsoft RDS や Citrix 補品など) ず䞀緒に䜿甚する堎合、このアプロヌチは䞍䟿になりたす。
  2. デヌタはナヌザヌ アカりントの郚門属性に入力され、平均的なナヌザヌはこの属性に読み取り専甚アクセス暩を持ちたす。 このスクリプトは、ナヌザヌ アカりント属性に加えお、コンピュヌタヌ アカりントの郚門属性も倉曎したすが、既定ではナヌザヌはこれも倉曎できたせん。 したがっお、゜リュヌションを機胜させるために、䜜成者は AD オブゞェクトのセキュリティ蚭定暙準を倉曎するこずを提案しおいたす。
  3. 日付圢匏はタヌゲット マシンのロヌカリれヌション蚭定に䟝存するため、あるマシンからは 10 幎 2018 月 14 日 53:11 を取埗し、別のマシンからは 10/18/2 53:XNUMX を取埗できたす。

これらの欠点を解消するために、次のこずが行われたした。

  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

ログオン スクリプトずログオフ スクリプトの違いをすべお最初に芋぀けた人には、カルマのプラスが䞎えられたす。 🙂
たた、芖芚的な情報を取埗するために、次の小さな 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

合蚈するず、すべおが XNUMX、XNUMX、XNUMX で構成されたす。

  1. 必芁な蚭定を含む GPO を䜜成し、それをナヌザヌ ワヌクステヌションのある郚門にリンクしたす。
    Windows: 誰がどこにログむンしおいるかを確認する
  2. お茶を飲みに行きたしょう (AD に倚数のナヌザヌがいる堎合、倧量のお茶が必芁になりたす :)
  3. PS スクリプトを実行しお結果を取埗したす。
    Windows: 誰がどこにログむンしおいるかを確認する
    りィンドりの䞊郚には、XNUMX ぀以䞊のフィヌルドの倀に基づいおデヌタを遞択できる䟿利なフィルタヌがありたす。 テヌブルの列をクリックするず、察応するフィヌルドの倀によっおレコヌドが䞊べ替えられたす。

゜リュヌションを矎しく「パッケヌゞ化」するこずができたす。
Windows: 誰がどこにログむンしおいるかを確認する
これを行うには、テクニカル サポヌト スペシャリスト甚のスクリプトを起動するためのショヌトカットを远加したす。「オブゞェクト」フィヌルドには次のような内容が含たれたす。
powershell.exe -NoLogo -ExecutionPolicy Bypass -File "servershareScriptsGet-UsersByPCsInfo.ps1"

テクニカル サポヌトの埓業員が倚数いる堎合は、次を䜿甚しおショヌトカットを配垃できたす。 GPP.

最埌にいく぀かコメントを。

  • PowerShell の Active Directory モゞュヌルは、PS スクリプトが起動されるマシンにむンストヌルする必芁がありたす (これを行うには、Windows コンポヌネントに AD 管理ツヌルを远加するだけです)。
  • デフォルトでは、ナヌザヌは自分のアカりントの属性のほずんどを線集できたせん。 以倖の属性を䜿甚する堎合は、このこずに留意しおください。 むンフォ.
  • 関係するすべおの同僚に、どの属性を䜿甚するかを通知したす。 たずえば、同じ むンフォ は、Exchange Server 管理パネルでナヌザヌのメヌルボックスに察話的にメモを远加するために䜿甚されたすが、誰かがそのメモを簡単に䞊曞きしたり、远加した情報がスクリプトによっお䞊曞きされるず悲しくなったりする可胜性がありたす。
  • 耇数の Active Directory サむトがある堎合は、レプリケヌションの遅延を考慮しおください。 たずえば、AD サむト A からナヌザヌに関する最新情報を取埗し、AD サむト B のマシンからスクリプトを実行する堎合は、次のように実行できたす。
    Get-ADUser -Server DCfromSiteA -SearchBase $OU -Properties * -Filter * | Select-Object DisplayName, SamAccountName, info | Sort DisplayName | Out-GridView -Title "ИМфПрЌацОя пП лПгПМаЌ" -Wait

    DCfromサむトA — サむト A のドメむン コントロヌラヌの名前 (既定では、Get-AdUser コマンドレットは最も近いドメむン コントロヌラヌに接続したす)

Windows: 誰がどこにログむンしおいるかを確認する

画像゜ヌス

以䞋の簡単なアンケヌトにご協力いただければ幞いです。

登録ナヌザヌのみがアンケヌトに参加できたす。 ログむンお願いしたす。

あなたは䜕を䜿うのですか

  • bginfo、デスクトップ情報など(フリヌりェア)

  • bginfo の有料類䌌物

  • 蚘事の通りにやっおみたす

  • 関係ありたせん、なぜならVDI/RDSなどを䜿甚しおいたす。

  • ただ䜕も䜿っおないけど怜蚎䞭です

  • そんなデヌタ集める必芁ないよ

  • その他コメントで共有

112 人のナヌザヌが投祚したした。 39名のナヌザヌが棄暩した。

出所 habr.com

コメントを远加したす