Active Directory ユーザーの写真を Windows のログオン画像として設定する方法

Active Directoryからユーザー写真をWindowsのログイン画面やスタートメニューに表示させるのは、必ずしも簡単ではありません。thumbnailPhoto属性を正しく更新したり、GPOが正しく機能していることを確認したりするだけで済む場合もあります。これらの手順は、Active Directoryでユーザー画像を設定したのにWindowsのプロフィール写真として表示されない場合に便利です。通常、このプロセスにより、ロック画面、スタートメニュー、またはログイン画面に写真が表示されるようになり、よりパーソナライズされ、プロフェッショナルな印象を与えることができます。しかし、すべてが設定されているように見えても何も表示されないとイライラするかもしれません。そこで、プロフィール写真をスムーズに表示させるためのトラブルシューティング方法を詳しく説明します。

WindowsでActive Directoryユーザーの写真が表示されない問題を解決する方法

Active Directory ユーザーの写真を追加する方法

これはいわば最初のステップです。ADの属性に写真が保存されていない場合thumbnailPhoto、表示するものがないからです。これはJPEGまたはBMP画像をアップロードするための小さなバイナリ属性です。正しく設定すれば、Windowsはその画像を取得し、ログイン画面、スタートメニュー、さらにはWindows Hello(設定されている場合)にも表示できます。

  • ユーザーの画像を JPEG または BMP として保存します。通常は最大 100 KB、約 96 x 96 ピクセルです。どうやら、Windows はユーザーの写真に高解像度のアイコンを使用しないようです。
  • PowerShellのSet-ADUserコマンドレットを使用して写真を設定します。通常のドメインマシンの場合は、次のコマンドを実行します。
    $photo = [byte[]](Get-Content C:\Path\To\Photo.jpg -Encoding byte) Set-ADUser jchan -Replace @{thumbnailPhoto=$photo} 

    これは非常にシンプルですが、一部の管理者は一括アップロードに GUI ツールやサードパーティのユーティリティを好みます。

  • Active Directory ユーザーとコンピューター でユーザーアカウントを確認し、属性エディター タブに切り替えてthumbnailPhoto属性を見つけます。属性にデータが含まれていれば、Windows はそのイメージを取得できるはずです。

面倒なことはありません。画像が適切にフォーマットされていることを確認するだけです。そうしないと、Windows で画像を正しく表示できなくなります。

ログイン画像として写真を使用するための GPO を作成する

ADに写真があるのに表示されない場合は、Windowsが自動的に写真を取得するように設定されていない可能性があります。ログイン時やその他のあらゆる場所でユーザーの写真が表示されるように、グループポリシーを設定できます。もちろん、これはWindowsがこれらの画像を希望どおりに使用できる環境の場合のみ機能します。

  1. グループポリシー管理コンソール ( gpmc.msc ) を開きます。新しいGPOを作成するか、ユーザーのコンピュータに適用する既存のGPOを編集します(ユーザーオブジェクトが存在するOUにリンクすることを検討してください)。
  2. 「コンピューターの構成 > ポリシー > 管理用テンプレート > システム > ログオン」 に移動します。ここで、「Active Directory の画像を使用する」または同様の設定を有効化または構成します(Windows のバージョンによって異なる場合があります)。
  3. 次に、レジストリパスHKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\AccountPicture\Users が正しく設定されていることを確認します。このキーへのアクセス許可を GPO 経由で適用する必要がある場合があります。たとえば、Authenticated Users または Domain Users にフルコントロールを付与します。
  4. 「コンピューターの構成 > ポリシー > 管理用テンプレート > システム > グループポリシー」で、「ユーザーグループポリシーのループバック処理モードを構成する」オプションを「結合」** に設定します。これにより、異なるユーザーOUを持つコンピューターでも、ユーザープロファイル画像が適用されるようになります。

この方法により、Windows はレジストリの場所を確認し、中央のフォルダーまたはレジストリ キーに保存されているはずのイメージを取得するように指示されます。

PowerShell を使用してユーザー プロファイルの写真を設定する

これは、プロフィール写真を自動または手動で設定したい場合、特にADの写真アップロードだけでは不十分な場合や、すぐに機能しない場合に有効な回避策です。このプロセスでは、PowerShellスクリプトを使用してActive Directoryから直接写真を取得し、ローカルマシン上のユーザーのプロフィール写真に割り当てます。

ここから少し複雑になります。コーディングが必要で、適切なモジュールや権限が必要になるからです。互換性を高めるため、このスクリプトでは新しいGet-ADUserコマンドレットではなく[ADSISearcher](https://docs.microsoft.com/en-us/dotnet/api/system.directoryservices.directorysearcher)を使用しています。つまり、RSATがインストールされていないWindows 7やドメインコントローラーでも実行できます。

SetADPicture.ps1というスクリプトをNetLogon フォルダ ( \\woshub.com\NETLOGON\SetADPicture.ps1 ) にコピーして、すべてのドメインユーザーがアクセスできるようにします。このスクリプトは多くの処理を行います。現在のユーザーのサムネイル写真を取得し、Windows の複数の解像度に合わせてサイズを変更し、HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\AccountPicture\Users\{User SID}のレジストリキーを更新します。

ログイン中にこれをトリガーするには、GPO 経由でスクリプトを割り当てます。

  1. ユーザー ログオン スクリプト用の既存の GPO を開きます。
  2. [ユーザーの構成] > [ポリシー] > [Windows の設定] > [スクリプト (ログオン/ログオフ)] に移動します。
  3. ログオン を選択し、PowerShell スクリプト タブで 追加 をクリックして、ネットワーク UNC パスを指定しますSetADPicture.ps1

スクリプトが正しく実行されることを確認するために、ログオフしてから再度ログインしてください(場合によっては2回)。正常に動作すると、ログイン時、スタートメニュー、さらにはアカウント情報( ms-settings:accountsで確認)に広告画像が表示されます。

{@warning} 注意:Windows がライセンス認証されていない場合、またはグループポリシーが正しく構成されていない場合は、この手順が機能しない可能性があります。ライセンス認証の状態と GPO 設定を再確認し、gpresult /h report.htmlポリシーのトラブルシューティングを実行してください。

理由は定かではありませんが、これらのスクリプトを正しく動作させるには、数回の再起動やレジストリの手動調整が必要になる場合があります。設定によっては、最初はうまくいかないこともありますが、忍耐強く(そして適切な権限で)作業すれば、たいていはうまくいきます。重要なのは、AD に適切な写真属性が設定されていること、そして GPO がスクリプトとレジストリキーを正しく指定していることを確認することです。

そうは言っても、このスクリプトとアプローチは、Windows 11、10、8.1、さらには一部のサーバー エディションでも適切に動作し、ユーザー画像が役立つほとんどの環境をカバーします。

まとめ

  • ユーザーの写真が AD のthumbnailPhoto属性に正しくアップロードされていることを確認します。
  • グループ ポリシーを使用して、Windows ログイン画面で Active Directory の写真を有効にします。
  • PowerShell スクリプトを展開し、GPO 経由で割り当てて、写真をローカル プロファイルと同期します。
  • レジストリ キーとフォルダーのアクセス許可を確認してください。アクセス許可がオフになっていると、Windows が画像の表示を拒否することがあります。
  • 再起動して、新しい写真が希望の場所に表示されるかどうかを確認します。

まとめ

Windows のプロフィール写真として AD からユーザーの写真を表示させるのは、少々面倒な作業です。特に設定は正しいのに何も表示されない場合はなおさらです。しかし、適切な属性の更新、GPO の設定、そして適切なスクリプトによる自動化があれば、可能です。権限の調整や再起動が必要になるかもしれませんが、最終的には写真が表示され、ユーザープロフィールがさらに美しく見えるようになります。この奇妙な問題で困っている皆さんの参考になれば幸いです。