Моя компания использует Office 365 для Exchange, SharePoint, Lync и т. Д., Включая встроенное администрирование пользователей через Azure Active Directory.
Теперь мы хотим переключиться на локальную AD на Windows Server. Он должен синхронизировать изменения с Azure, но администрирование основных пользователей и групповых политик происходит на сервере Windows.
Как изначально получить учетные записи пользователей из Azure AD в локальную (Windows-сервер) AD?
edit1: Кто-нибудь изучал это с помощью Microsoft Forefront Identity Manager? Похоже, этот инструмент поставляется с DirSync. Откройте «miisclient.exe» на сервере DirSync (находится в «C: \ Program Files \ Windows Azure Active Directory Sync \ SYNCBUS \ Synchronization Service \ UIShell»). Возможно, удастся настроить синхронизацию в другом направлении ... может.
@MDMarra: Спасибо за подсказки, я так и сделал:
Пользователи из O365 могут быть экспортированы с помощью PowerShell с помощью
Get-MsolUser | Select-Object City, Country, Department, DisplayName, Fax, FirstName, LastName, MobilePhone, Office, PasswordNeverExpires, PhoneNumber, PostalCode, SignInName, State, StreetAddress, Title, UserPrincipalName | Export-Csv C:\Temp\Azure_Export_2014_12_05.csv -Encoding UTF8
Это экспортирует все столбцы в CSV, где я смог найти подходящее сопоставление. Это не все столбцы, но многие из них нельзя сопоставить с атрибутами в AD. Остальные, например пароль, экспортировать нельзя.
Чтобы импортировать пользователей в AD, запустите в PowerShell
import-csv C:\Temp\Azure_Export_2014_12_05.csv -Encoding UTF8 | foreach-object {New-ADUser -Name ($_.Firstname + "." + $_.Lastname) -SamAccountName ($_.Firstname + "." + $_.Lastname) -GivenName $_.FirstName -Surname $_.LastName -City $_.City -Department $_.Department -DisplayName $_.DisplayName -Fax $_.Fax -MobilePhone $_.MobilePhone -Office $_.Office -PasswordNeverExpires ($_.PasswordNeverExpires -eq "True") -OfficePhone $_.PhoneNumber -PostalCode $_.PostalCode -EmailAddress $_.SignInName -State $_.State -StreetAddress $_.StreetAddress -Title $_.Title -UserPrincipalName $_.UserPrincipalName -AccountPassword (ConvertTo-SecureString -string "Secret!" -AsPlainText -force) -enabled $true }
Это создает новых пользователей с именем Firstname.Lastname. Другие атрибуты, такие как SignInName, использовать нельзя, поскольку они не являются допустимым именем учетной записи AD.
Страна не может быть импортирована, потому что AD требует, чтобы страна действительно существовала, в то время как O365 принимает свободный текст.
Пароль будет установлен на «Секретно!», Потому что, если пароль не указан, учетная запись будет создана, но отключена.
Может быть удобно отредактировать CSV-файл в Excel или еще где-нибудь, но я бы рекомендовал использовать только PowerShell. Excel удаляет начальные нули из телефонных номеров или переформатирует другие данные. Также обратите внимание на UTF8.
Вы можете использовать командлеты Get-MsolUser PowerShell для экспорта пользовательских данных из Azure Active Directory, а затем использовать командлеты New-ADUser для получения этих данных и создания учетных записей локально. Тем не менее, готового способа сделать это нет. Вам нужно будет что-нибудь написать.