Active-Directory

將使用者帳戶從 Azure AD 遷移到本地 AD?

  • May 19, 2018

我的公司使用 Office 365 for Exchange、SharePoint、Lync 等,包括通過 Azure Active Directory 進行的內置使用者管理。

現在我們要切換到 Windows Server 上的本地 AD。它應將更改同步到 Azure,但主要使用者和組策略管理髮生在 Windows 伺服器上。

我們最初如何將使用者帳戶從 Azure AD 獲取到本地(Windows 伺服器)AD?

**編輯 1:**有人使用 Microsoft Forefront Identity Manager 對此進行過調查嗎?看起來這個工具是隨 DirSync 一起提供的。在 DirSync 伺服器上打開“miisclient.exe”(位於“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 接受自由文本。

密碼將設置為“秘密!”,因為如果未提供密碼,則將創建帳戶,但會禁用該帳戶。

在 Excel 或其他工具中編輯 CSV 文件可能很方便,但我建議僅使用 PowerShell。Excel 從電話號碼中刪除前導零或重新格式化其他內容。另外,請注意 UTF8。

引用自:https://serverfault.com/questions/647241