Windows 10/11のログイン画面でユーザーアカウントを表示・非表示にする方法
デフォルトでは、Windows 10/11およびWindows Server 2019/2016/2012R2のログイン画面には、最後にそのコンピューターへログオンしたユーザーのアカウントが表示されます。この動作は設定によって変更可能です。最終ログオンユーザー名を表示する、非表示にする、あるいはウェルカム画面にすべてのローカルユーザーやログオン済みドメインユーザーの一覧を表示する、といった構成ができます。
Windowsのログオン画面に最終ログオンユーザー名を表示しないようにする
エンドユーザーにとっては、Windowsのログオン画面に前回ログオンしたアカウント名が表示されていれば、ユーザー名を手入力する必要がないため便利です。しかし、これは攻撃者にとってコンピューターへの侵入を容易にしてしまいます。攻撃者は正しいパスワードを見つけるだけでデバイスへアクセスできてしまいます。ソーシャルエンジニアリング、ブルートフォース攻撃、あるいはモニターに貼られたパスワード付箋など、その手段はさまざまです。
Windowsのログオン画面から最終ログオンユーザー名を非表示にするには、GPO(グループポリシー)を使用します。ドメイン環境ではgpmc.msc、ローカル環境ではgpedit.mscでグループポリシーエディターを開き、コンピューターの構成 → Windowsの設定 → セキュリティの設定 → ローカルポリシー → セキュリティオプションセクションへ移動します。そこで「対話型ログオン: 最後のユーザー名を表示しない」ポリシーを有効にします。このポリシーはデフォルトでは無効になっています。

また、レジストリからも最終ログオンユーザー名を非表示にできます。レジストリキーHKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Systemへ移動し、dontdisplaylastusernameという名前のDWORD値を作成し、値を1に設定してください。

なお、ユーザー名はコンピューターの画面がロックされている場合(Win+Lキー押下時やロック画面のGPO適用時)にも表示されます。ロック画面でもユーザー名を非表示にするには、同じGPOセクション内で「対話型ログオン: セッションのロック中にユーザー情報を表示する」ポリシーを有効にし、「ユーザー情報を表示しない」を設定します。

このポリシー設定に対応するレジストリパラメーターは、同じレジストリキー内のDontDisplayLockedUserIdで、値は3です。このパラメーターに設定できるその他の値は以下のとおりです。
- 1 — ユーザーの表示名、ドメイン、ユーザー名を表示する
- 2 — ユーザーの表示名のみ表示する
- 3 — ユーザーを表示しない
これらの設定後は、コンピューターのログオン画面とWindowsのロック画面に、空欄のユーザー名・パスワード入力フィールドが表示されるようになります。

Windows 10/11のサインイン画面にすべてのユーザーを表示する
デフォルトでは、最新バージョンのWindows(Windows 11 21H2およびWindows 10 21H1で検証済み)は、ログイン画面の左下に有効化されているローカルユーザーの一覧を常に表示します。表示されないのは、非表示に設定されたユーザー(後述)または無効化されたユーザーのみです。
コンピューターにログインするには、ユーザーは目的のアカウントをクリックしてパスワードを入力するだけです。ただし、この動作はActive Directoryドメインに参加していないコンピューターでのみ機能します。なお、ユーザーアカウントにパスワードが設定されていない場合、自動ログオンが無効であっても、そのユーザーは自動的にログオンされますので注意が必要です。

ヒント: 標準のユーザーアイコンの代わりに、Active Directoryに登録されたユーザープロフィール写真を表示するよう設定することもできます。
コンピューターのログオン画面にローカルユーザーの一覧が表示されない場合は、以下のローカルグループポリシーの設定を確認してください(gpedit.mscを使用)。
- 対話型ログオン: 最後にサインインしたユーザーを表示しない =
無効(コンピューターの構成 → Windowsの設定 → セキュリティの設定 → ローカルポリシー → セキュリティオプション) - ドメインに参加しているコンピューターのローカルユーザーを列挙する =
有効(コンピューターの構成 → 管理用テンプレート → システム → ログオン) - ドメインに参加しているコンピューターの接続ユーザーを列挙しない =
無効/未構成(同じGPOセクション内)

新しいグループポリシー設定を適用するには、コンピューターを再起動してください。
一部の古いWindows 10ビルド(1607〜1903)では、ユーザー切り替えモードに関連して、ウェルカム画面にすべてのローカルユーザーが表示されないという別の問題がありました。
Windowsのログイン画面にすべてのローカルユーザーアカウントを表示するには、次のレジストリキー内のEnabledパラメーターの値を1に変更する必要があります:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\LogonUI\UserSwitch。このオプションにより、Windowsのサインイン画面で現在のユーザーを切り替えられるようになります。しかし、WindowsはユーザーログオンのたびにEnabledパラメーターの値を自動的に0にリセットしてしまう点に注意してください。
この問題を解決するには、ユーザーログオンのたびにパラメーターの値を1に変更するスケジューラタスクを作成します。
PowerShellで新しいスケジュールタスクを作成するコマンドは以下のとおりです。
$Trigger= New-ScheduledTaskTrigger -AtLogOn
$User= "NT AUTHORITY\SYSTEM"
$Action= New-ScheduledTaskAction -Execute "PowerShell.exe" -Argument "Set-ItemProperty -Path HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\LogonUI\UserSwitch -Name Enabled -Value 1"
Register-ScheduledTask -TaskName "UserSwitch_Enable" -Trigger $Trigger -User $User -Action $Action -RunLevel Highest –Force

タスクスケジューラ(taskschd.msc)でタスクが作成されていることを確認してください。

一度ログオフして再度ログオンすると、タスクが自動的に開始され、Enabledレジストリパラメーターの値が1に変更されます。Get-ItemPropertyコマンドレットでパラメーターの現在の値を確認できます。ご覧のとおり、値は1になっています。
get-ItemProperty -Path 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\LogonUI\UserSwitch' -Name Enabled

Windowsのログイン画面にログオン済みドメインユーザーを表示する
複数のドメインユーザーが同じコンピューターを共有している場合、ウェルカム画面にアクティブなセッションを持つユーザーの一覧を表示できます。アクティブなセッションとは、ユーザーがそのコンピューターにログオンしている状態を指します。該当するのは、ユーザー切り替えモードで使用される共有コンピューター、キオスク端末、Windows ServerのRDSホスト、複数のRDP接続を許可しているWindows 11/10デバイスなどです。
これを実現するには、まずコンピューターの構成 → Windowsの設定 → セキュリティの設定 → ローカルポリシー → セキュリティオプションで以下のポリシーが無効になっていることを確認します。
- 対話型ログオン: 最後にサインインしたユーザーを表示しない:無効
- 対話型ログオン: サインイン時にユーザー名を表示しない:無効

次に、コンピューターの構成 → 管理用テンプレート → システム → ログオンセクションの以下のポリシーを無効にします。
- サインイン時にアカウント詳細の表示をブロックする:無効
- ドメインに参加しているコンピューターの接続ユーザーを列挙しない:無効
これらの設定後、ウェルカム画面にログオン済みユーザーの一覧が表示されるようになります。ここには、アクティブなセッションだけでなく、切断状態のユーザーセッション(RDPタイムアウトによるものなど)も表示されます。ユーザーは一度ログインすれば、以降は一覧からアカウントを選択してパスワードを入力するだけで済みます。

なお、ドメイン参加コンピューターのグループポリシー設定はドメイン管理者が管理できるため、ローカルのGPO設定が適用されない場合は、ドメインGPOによって上書きされていないか確認してください。rsop.mscやgpresultコマンドを使用すると、デバイスに適用された最終的なグループポリシー設定を確認できます。
Windows 10/11のサインイン画面から特定のユーザーアカウントを非表示にする
Windowsのウェルカム画面には、Administrators、Users、Power Users、Guestsのいずれかのローカルグループに所属するユーザーが常に表示されます。無効化されたユーザーはWindowsのサインイン画面に表示されません。
特定のユーザーをウェルカム画面の一覧から非表示にするには、レジストリを使用します。使用するレジストリキーはHKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\SpecialAccounts\UserListです。非表示にしたいユーザーごとに、ユーザー名を名前としたDWORD値を作成し、値を0に設定します。
ローカルユーザー名の一覧は、PowerShellまたはcmdで確認できます。
Net user
または:
Get-LocalUser | where {$_.enabled –eq $true}

Windows 11/10のウェルカム画面から特定のユーザーアカウント(例:user1)を非表示にするには、次のコマンドを実行します。
reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\SpecialAccounts\UserList" /t REG_DWORD /f /d 0 /v UserName
非表示にしたユーザーを再びログイン画面に表示したい場合は、このレジストリパラメーターを削除するか、値を1に変更してください。
コンピューターでWindowsの組み込みAdministratorアカウントが有効になっており、かつそれがコンピューター上で唯一のローカル管理者権限を持つアカウントではない場合(重要!)、そのアカウントも非表示にできます。
reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\SpecialAccounts\UserList" /t REG_DWORD /f /d 0 /v administrator
最後にログオンしたユーザー以外の全ユーザーを非表示にしたい場合は、コンピューターの構成 → 管理用テンプレート → システム → ログオンで以下のGPO設定を構成します。
- ドメインに参加しているコンピューターのローカルユーザーを列挙する = 無効
- ドメインに参加しているコンピューターの接続ユーザーを列挙しない = 有効
-
Windows 11/10で自動再生(AutoPlay)がユーザーの選択を記憶しないようにする方法
新しいハードウェアデバイスをWindowsパソコンに接続すると、接続したデバイスに対して何をするかを尋ねられます。Windowsには自動再生(AutoPlay)機能が備わっており、システムに接続されたデバイスへの対応方法を記憶することができます。例えば、USBメモリをシステムに接続すると、Windowsはこのデバイスに対して何をしたいかを尋ねてきます。ここで「操作を選択しない」を選んだとしましょう。すると、Windowsは自動再生の設定としてこの選択を記憶し、次回以降そのUSBを接続しても何もアクションを起こさなくなります。 Windows 11/10で自動再生がユーザーの選択を記憶しないよう
-
macOSのログイン画面からユーザーアカウントを非表示にする方法
家族や職場で共用しているMacBookでは、ログイン画面に複数のアカウントがずらりと並び、見た目がごちゃごちゃしてしまいがちです。そんなときは、macOSのログイン画面からユーザーアカウント(ユーザー名とユーザーアイコン)を非表示にすれば、すっきりとしたミニマルな印象に変えられます。 ログイン画面をユーザー名なしのシンプルな画面にする 初期設定のままでは、macOSのログイン画面にはMacに登録されているすべてのアカウントのユーザー名とユーザーアイコンが表示されます。 しかし設定を変更すれば、ログイン画面からユーザー名とアイコンをすべて取り除くことが可能です。 この情報がログイン画面から