Як я можу створити новий обліковий запис користувача в Windows 8, пов’язаний з обліковим записом електронної пошти Microsoft?


14

Як я можу створити новий обліковий запис локального користувача в Windows 8, пов’язаний з обліковим записом електронної пошти Microsoft (наприклад MicrosoftAccount\someone@live.com) програмно, використовуючи PowerShell або іншу мову сценаріїв, доступну в Windows. Сценарій буде надано адресу електронної пошти та пароль для облікового запису Microsoft.

Заздалегідь дякую за вашу допомогу!


Ви збираєтеся заздалегідь створити облікові записи електронної пошти / MS, і ви просто хочете створити нового користувача Windows та пов’язати їх із цим обліковим записом електронної пошти / MS, правда? Ви пробували використовувати традиційні команди "Чистий користувач"?
Ƭᴇcʜιᴇ007

1
@ techie007 Так, у поточному випадку всі облікові записи електронної пошти Microsoft уже створені. Але прочитавши ваш коментар, я зрозумів, що було б дуже корисно мені створити ці акаунти програмно. Отже, якщо хтось знає, як це зробити, будь ласка, включіть це у свою відповідь. Спасибі!
Пьотр Шаталін

Автоматизація створення облікових записів електронної пошти на веб-сайті MS тут не є темою, тому я хотів отримати уточнення щодо того, які саме частини ви намагаєтеся автоматизувати. :) Крім формування того, що саме у вас вже пробував? Де ти застряєш у своєму сценарії?
Ƭᴇcʜιᴇ007

@ techie007 Я досить новачок в сценаріях PowerShell, в основному лише знайомий з файловою системою / реєстром / маніпуляціями з ACL, загальними конвеєрними конструкціями та сценаріями та .NET / COM-інтеропом.
Пьотр Шаталін

Відповіді:


3

Облікові записи Windows, пов’язані з обліковими записами Microsoft, - це лише звичайні облікові записи Windows, які додають до них трохи додаткової інформації в SAM.

Спочатку ви використовуєте свій улюблений метод для створення нових облікових записів (чистий користувач, PowerShell, WMI), а потім додаєте додаткову інформацію до нових облікових записів.

Це насправді досить складно зробити, оскільки Microsoft не надає для нього публічний API. На щастя хтось зробив всю важку роботу за нас. Ця публікація в блозі пояснює деталі та надає сценарій PowerShell для додавання додаткової інформації.


0

Так, створення облікового запису в реальному часі протидіє TOS для служби Live, тому тут немає теми. Але я думаю, що ви шукаєте:

# Create new local Admin user for script purposes
$Computer = [ADSI]"WinNT://$Env:COMPUTERNAME,Computer"

$LocalAdmin = $Computer.Create("User", "LocalAdmin")
$LocalAdmin.SetPassword("Password01")
$LocalAdmin.SetInfo()
$LocalAdmin.FullName = "Local Admin by Powershell"
$LocalAdmin.SetInfo()
$LocalAdmin.UserFlags = 64 + 65536 # ADS_UF_PASSWD_CANT_CHANGE + ADS_UF_DONT_EXPIRE_PASSWD
$LocalAdmin.SetInfo()

Або ви можете використовувати старий метод:

Інша альтернатива - команди старої школи NET USER:

NET USER username "password" /ADD

Гаразд - ви не можете встановити всі параметри, але це набагато менш складно для простого створення користувачів та простого скриптування в Powershell.

NET LOCALGROUP "group" "user" /add to set group membership.

Де саме в скрипті створений обліковий запис користувача пов’язаний із попередньо створеним обліковим записом електронної пошти Microsoft? Я припускаю, що пароль облікового запису електронної пошти повинен бути вказаний десь, правда?
Пьотр Шаталін
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.