У Windows ім'я облікового запису користувача буде відрізнятися від імені профілю користувача після його зміни на панелі керування.
Як знайти оригінальне ім’я профілю користувача зі зміненого імені облікового запису користувача?
У Windows ім'я облікового запису користувача буде відрізнятися від імені профілю користувача після його зміни на панелі керування.
Як знайти оригінальне ім’я профілю користувача зі зміненого імені облікового запису користувача?
Відповіді:
У кожному обліковому записі є два властивості "ім'я", тому дозвольте мені трохи прояснити речі, щоб ми не плуталися. Одне - ім'я облікового запису SAM (Менеджер облікових записів безпеки), яке відображається у висновку net user
. Це назва облікового запису, що стосується компонентів ОС низького рівня. Інше - це ім'я відображення, яке відображається на сторінці "Облікові записи користувачів" на панелі керування та в меню "Пуск". Оснащення для місцевих користувачів та груп для MMC ( lusrmgr.msc
) показує як: ім'я SAM у стовпці Ім'я, так і відображуване ім'я у стовпці Повне ім’я. Назва SAM - це те, що використовується для створення папки профілю.
Змінити ім'я SAM не дуже просто, якщо ви не використовуєте цей оснащення MMC. Тільки зміни до імені SAM призводять до події 4781. Я підозрюю, враховуючи, що ви не бачите події 4781 у своєму журналі, що лише ім'я відображення було змінено. Це створює лише подію 4738 ("обліковий запис користувача змінено"). Подія 4738 перераховує лише нове значення для відображуваного імені, а не старе значення, і я підозрюю, що історія відображуваних імен ніде не зберігається (найкраще сподіватися було б перекопати журнали для більшої кількості примірників 4738).
На щастя, знайти шлях профілю від відображуваного імені не надто важко. Відкрийте PowerShell і введіть цю команду:
gwmi win32_useraccount
Ви отримуєте купу записів, які виглядають приблизно так:
AccountType : 512
Caption : <redacted>\tester
Domain : <redacted>
SID : S-1-5-21-<redacted>-1018
FullName : Test Account
Name : tester
Знайдіть той, у FullName
якому відображається відображувана назва облікового запису. Потім подивіться на SID
значення (я тут відредагував SID машини). Відкрийте Реєстр і перейдіть до ключа, згаданого harrymc:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList
Відкрийте підрозділ, названий так само, як знайдений SID. ProfileImagePath
Значення містить шлях до їх папці профілю.
Get-LocalUser
командлет не існує у версії PowerShell для Windows 7. (Я тестував у Windows 10.) Я відредагував свою відповідь і для роботи в Windows 7.
Подивіться в журнал подій системи безпеки Windows для EventID 4781: Ім'я облікового запису було змінено :
4781: Ім'я облікового запису було змінено
Користувач, визначений Subject: змінив або звичайне ім'я для входу, або ім'я для входу до Win2k користувача, визначене цільовим обліковим записом :. Подія 4738 фактично надає кращу інформацію про цю зміну.
Ця подія реєструється як для локальних акаунтів SAM, так і для облікових записів домену.
Ви також побачите ID події 4738, який повідомляє вам про ту саму інформацію.
Тема:
Сеанс користувача та входу, який виконував дію.
- Ідентифікатор безпеки: SID облікового запису.
- Назва рахунку: ім'я для входу в обліковий запис.
- Домен облікового запису: домен або - у випадку локальних облікових записів - ім'я комп'ютера.
- Ідентифікатор входу - напів унікальний (унікальний між перезавантаженнями) номер, який ідентифікує сеанс входу. Ідентифікатор входу дозволяє співвіднести назад до події входу (4624), а також з іншими подіями, записаними під час сеансу входу.
Цільовий рахунок:
- Ідентифікатор безпеки: SID облікового запису
- Назва рахунку: назва рахунку
- Домен облікового запису: домен облікового запису
- Стара назва облікового запису: стара ім’я для входу
- Нова назва облікового запису: нове ім’я для входу
Ця відповідь ґрунтується на тому, що перейменування облікового запису користувача автоматично не змінює шлях до профілю.
Якщо обліковий запис було перейменовано, але шлях до профілю не було змінено, ім'я шляху можна знайти в реєстрі
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList
в розділі, назви ProfileImagePath
якого буде значення
C:\Users\old-user-name
.
натисніть для збільшення зображення
Щоб перетворити позначений SID в назву поточного облікового запису користувача, введіть команду cmd:
wmic useraccount where sid='S-1-3-12-12451234567-1234567890-1234567-1434' get name
net user
відображаються і старі імена користувачів? Гаразд, якщо імен користувачів є багато, його все-таки важко розібратися, але на ПК це зазвичай не так.
wmic useraccount where sid='S-1-3-12-12451234567-1234567890-1234567-1434' get name
.
Get-LocalUser : The term 'Get-LocalUser' is not recognized as the name of a cmdlet....