Как использовать Powershell для установки изображения моей учетной записи?
Я сотрудник службы поддержки. Я использую Windows 10, 2004. Я использую PXE Baseline для компьютеров нашей компании. Я первый человек, вошедший в систему на новом компьютере с базовой версией PXE. Я использую привилегированную учетную запись. К нему НЕ прикреплена учетная запись OutLook.com. К нему НЕ прикреплена учетная запись Microsoft.com. К нему НЕ прикреплена учетная запись «Команды». Это строго для сборки/базовой разработки компьютеров. Он ДЕЙСТВИТЕЛЬНО существует в «AD», он ДЕЙСТВИТЕЛЬНО существует в «SCCM». Да, я могу локально и удаленно войти на любой/все компьютеры в нашей сети с помощью этой учетной записи.
Да, я «вручную» добавил изображение в AD, оно НЕ распространяется. Я не понимаю, почему бы и нет. После добавления изображения в AD нужно ли что-то еще сделать, чтобы оно распространилось??
Я могу «Вручную» создать изображение учетной записи на конкретном компьютере, на котором я вошел в систему, используя шаги «Укажи и щелкни вручную», доступные в Интернете. Это отлично работает для «одного» компьютера, но НЕ распространяется автоматически на другие компьютеры, на которые я вхожу позже. Я НЕ хочу «вручную» добавлять изображения на каждый компьютер, который я создаю. Я ищу способ «автоматизировать» это в Windows 10, поэтому запросил сценарий Powershell. Несколько лет назад в другой компании я нашел в Windows 7 способ легко написать такой сценарий. Я не могу найти эту информацию и слышал, что сценарий НЕ работает для Windows 10 (MS, не ломайте то, что работает).
Я искал несколько недель и нашел только «как удалить изображение пользователя по умолчанию», как добавить изображение пользователя по умолчанию, но ничего о том, как написать сценарий или настроить собственное изображение для распространения, не требуя «OutLook.com» или «Microsoft.com». Как уже упоминалось, это учетная запись администратора, а не учетная запись пользователя. Она ЕСТЬ в AD и SCCM, но не в Outlook, ни в Teams, ни в Microsoft.com. Предложения
??
1 ответ
Чтобы установить изображение учетной записи, необходимо выполнить две части: в AD и локально.
Установить картинку в AD
Правильный способ сделать это — найти папку с изображениями пользователей на контроллере домена AD:
Существует простой командлет Set-ADUser, который можно использовать для импорта фотографий пользователей в Active Directory. Он сохраняет файл изображения в атрибуте ThumbnailPhoto Active Directory. Просто не забудьте указать точный путь к файлу изображения и имя пользователя, например:
$ADphoto = [byte[]](Get-Content C:\AD_Photos\ad-brian-johnson -Encoding byte)
Set-ADUser BrianJ -Replace @{thumbnailPhoto=$ADphoto}
Чтобы сделать это для нескольких пользователей, вы можете переименовать каждый файл фотографии как имя пользователя и создать сценарий Powershell для его повторения. Поскольку SuperUser по своим правилам не является сервисом написания скриптов, я его не предоставляю.
Локальная конфигурация
Вторая часть — скопировать фотографию локально и настроить для нее параметры реестра. Картинки хранятся локально в скрытых папках, соответствующих SID каждого пользователя на ПК. Вы можете получить SID из AD или из текущего сеанса Windows с помощью PowerShell:
$user_sid = [System.Security.Principal.WindowsIdentity]::GetCurrent().User.Value
Местоположение фотографий
Итак, вам нужно разместить там фотографии с определенным соглашением об именах.
Конфигурация реестра
В Windows 10 вы можете установить изображение профиля учетной записи пользователя с помощью раздела реестра HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\AccountPicture\Users. Однако пользователи, не являющиеся администраторами, не имеют необходимых разрешений для добавления значений в этот раздел реестра. Чтобы разрешить пользователям без прав администратора изменять изображение профиля, необходимо предоставить им права на запись в этот раздел реестра.
Вы можете применить разрешения централизованно с помощью GPO.
- Для этого запустите консоль управления групповыми политиками (gpmc.msc), создайте новую политику и привяжите ее к OU с компьютерами пользователей;
- Затем в редакторе GPO перейдите в следующий раздел «Конфигурация компьютера» -> «Политики» -> «Настройки Windows» -> «Настройки безопасности» -> «Реестр» и добавьте новый ключ реестра (Добавить ключ) по пути MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\AccountPicture . Ключ реестра \Users\AccountPicture через объект групповой политики
- Затем на вкладке «Безопасность» проверьте разрешения «Полный доступ» для всех пользователей домена ([ИмяВашегоДомена]\Пользователи) и нажмите «ОК»;
- В следующем окне выберите параметр « Заменить существующие разрешения для всех подразделов наследуемыми разрешениями» , иначе пользователи не будут иметь никаких привилегий для вложенных подразделов реестра.
Вот как должен выглядеть реестр с ключами, указывающими на расположение фотографий (для моего пользователя):
Привязка фотографий к профилю с помощью скрипта
Теперь, чтобы распространить эти фотографии Active Directory как изображения учетной записи Windows 10, вы можете использовать сценарии входа/выхода из групповой политики (объект групповой политики, который запускает сценарий при выходе из системы). Другой вариант — установить запланированный сценарий в диспетчере задач — это зависит от вас.
Как уже упоминалось, вы можете установить ключи реестра и разместить фотографии вручную только в целях тестирования, но для всех пользователей это можно сделать с помощью сценария Powershell, который запускается при входе в систему или выходе из системы, запускаемый локально или с помощью объекта групповой политики.
Если вы хотите, чтобы GPO запускал скрипт в ранее созданной политике в разделе
Имя скрипта :%windir%\System32\WindowsPowerShell\v1.0\powershell.exe
Параметры скрипта :-Noninteractive -ExecutionPolicy Bypass -Noprofile -File %logonserver%\netlogon\script\SetADPicture.ps1
Соответственно, сам скрипт должен находиться на ADC по адресу %logonserver%\netlogon\script.
Примечание. Это политика пользователя, а предыдущая — политика компьютера. Этот должен применяться к объектам пользователя, а предыдущий — к компьютерам.
И, наконец, сам сценарий. Есть несколько готовых скриптов, они довольно большие и сложные, поэтому я не прикрепляю их сюда. Но тот, который рекомендуется, находится по адресу: http://www.classicshell.net/forum/viewtopic.php?f=12&t=7921 .
Сценарий по сути записывает файл для каждого разрешения в C:\Users\Public\AccountPictures и создает соответствующие записи в реестре в HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\AccountPicture\Users.