Eseguire la migrazione di gruppi da una foresta a un'altra per Microsoft Entra Connessione
Questo articolo descrive come eseguire la migrazione di gruppi da una foresta a un'altra in modo che gli oggetti gruppo migrati corrispondano agli oggetti esistenti nel cloud.
Prerequisiti
- Microsoft Entra Connessione versione 1.5.18.0 o successiva
- Attributo di ancoraggio di origine impostato su
mS-DS-ConsistencyGuid
Eseguire la migrazione di gruppi
A partire dalla versione 1.5.18.0, Microsoft Entra Connessione supporta l'uso dell'attributo per i mS-DS-ConsistencyGuid
gruppi. Se si sceglie mS-DS-ConsistencyGuid
come attributo di ancoraggio di origine e il valore viene popolato in Active Directory, Microsoft Entra Connessione usa il valore di mS-DS-ConsistencyGuid
come immutableId
. In caso contrario, esegue il fallback all'uso objectGUID
di . Si noti tuttavia che Microsoft Entra Connessione non scrive nuovamente il valore nell'attributo mS-DS-ConsistencyGuid
in Active Directory.
Durante uno spostamento tra foreste, quando un oggetto gruppo viene spostato da una foresta (ad esempio F1) a un'altra foresta (ad esempio F2), è necessario copiare il mS-DS-ConsistencyGuid
valore (se presente) o il objectGUID
valore dall'oggetto nella foresta F1 all'attributo dell'oggetto mS-DS-ConsistencyGuid
in F2.
Usare gli script seguenti come guida per informazioni su come eseguire la migrazione di un singolo gruppo da una foresta a un'altra. È anche possibile usare questi script come guida per la migrazione di più gruppi. Gli script usano il nome della foresta F1 per la foresta di origine e F2 per la foresta di destinazione.
In primo luogo, si ottiene l'oggetto objectGUID
e mS-DS-ConsistencyGuid
dell'oggetto gruppo nella foresta F1. Questi attributi vengono esportati in un file CSV.
<#
DESCRIPTION
============
This script will take DN of a group as input.
It then copies the objectGUID and mS-DS-ConsistencyGuid values along with other attributes of the given group to a CSV file.
This CSV file can then be used as input to the Export-Group script.
#>
Param(
[ValidateNotNullOrEmpty()]
[string]
$dn,
[ValidateNotNullOrEmpty()]
[string]
$outputCsv
)
$defaultProperties = @('samAccountName', 'distinguishedName', 'objectGUID', 'mS-DS-ConsistencyGuid')
$group = Get-ADGroup -Filter "DistinguishedName -eq '$dn'" -Properties $defaultProperties -ErrorAction Stop
$results = @()
if ($group -eq $null)
{
Write-Error "Group not found"
}
else
{
$objectGUIDValue = [GUID]$group.'objectGUID'
$mSDSConsistencyGuidValue = "N/A"
if ($group.'mS-DS-ConsistencyGuid' -ne $null)
{
$mSDSConsistencyGuidValue = [GUID]$group.'mS-DS-ConsistencyGuid'
}
$adgroup = New-Object -TypeName PSObject
$adgroup | Add-Member -MemberType NoteProperty -Name samAccountName -Value $($group.'samAccountName')
$adgroup | Add-Member -MemberType NoteProperty -Name distinguishedName -Value $($group.'distinguishedName')
$adgroup | Add-Member -MemberType NoteProperty -Name objectGUID -Value $($objectGUIDValue)
$adgroup | Add-Member -MemberType NoteProperty -Name mS-DS-ConsistencyGuid -Value $($mSDSConsistencyGuidValue)
$results += $adgroup
}
Write-Host "Exporting group to output file"
$results | Export-Csv "$outputCsv" -NoTypeInformation
Verrà quindi usato il file CSV di output generato per contrassegnare l'attributo nell'oggetto mS-DS-ConsistencyGuid
di destinazione nella foresta F2:
<#
DESCRIPTION
============
This script will take DN of a group as input and the CSV file that was generated by the Import-Group script.
It copies either the objectGUID or the mS-DS-ConsistencyGuid value from the CSV file to the given object.
#>
Param(
[ValidateNotNullOrEmpty()]
[string]
$dn,
[ValidateNotNullOrEmpty()]
[string]
$inputCsv
)
$group = Get-ADGroup -Filter "DistinguishedName -eq '$dn'" -ErrorAction Stop
if ($group -eq $null)
{
Write-Error "Group not found"
}
$csvFile = Import-Csv -Path $inputCsv -ErrorAction Stop
$msDSConsistencyGuid = $csvFile.'mS-DS-ConsistencyGuid'
$objectGuid = [GUID] $csvFile.'objectGUID'
$targetGuid = $msDSConsistencyGuid
if ($msDSConsistencyGuid -eq "N/A")
{
$targetGuid = $objectGuid
}
Set-ADGroup -Identity $dn -Replace @{'mS-DS-ConsistencyGuid'=$targetGuid} -ErrorAction Stop
Passaggi successivi
Altre informazioni sull'integrazione delle identità locali con Microsoft Entra ID.