Importera AD-grupper till Identum eADM
Denna guide beskriver processen för att importera befintliga Active Directory (AD)-grupper till Identum eADM. Detta gör att eADM kan ta över styrningen av dessa grupper utan att radera eller återskapa dem. Processen omfattar export av gruppdata till CSV, konfigurering av synkroniseringsmallar och import av data till eADM.
Förkunskapskrav
Administrativ åtkomst till Active Directory Domain Controller.
Administrativ åtkomst till eADM-hyresgästen.
PowerShell installerad på den server där exporten ska utföras.
Steg 1: Exportera AD-grupper till CSV
För att importera grupper måste du först generera en formaterad CSV-fil som innehåller gruppdata. Vi använder ett PowerShell-skript för att extrahera nödvändig information från Active Directory.
Öppna PowerShell ISE eller en textredigerare på en maskin med Active Directory-moduler installerade.
Kopiera skriptet nedan.
Viktigt: Uppdatera variablerna i avsnitten General Setup, System Values och Groups / OUs så att de stämmer överens med din miljö.
Se till att variabeln
$exportmembersär inställd på"false"för detta specifika importscenario.
PowerShell
<#
Description: Exports AD groups to CSV for eADM import.
Usage: Update variables in the "Setup" section before running.
#>
#------ General Setup ------
$customer = "utfjord" # Short customer name, used in file extensions.
$eadm_path = "C:\eadm" # Path to eAdm installation.
$outputfolder = "C:\eadm\tmp\groupexport" # Output directory. Folder must exist.
$exportmembers = "false" # Set to "false" for initial group import.
# ------ System Values ------
$domaincontroller = "DC01" # Name of the DC used for extraction.
$domain = "domain.local"
$mergeAttribute = "employeeNumber" # Unique user attribute (e.g., samaccountName or employeeNumber).
$sourceId = "objectGuid" # Source ID type (objectGuid or samaccountName).
#------ Groups / OUs ------
# Define OUs to export. Add specific OUs to the array below.
$groupOUs = @()
# Add an object for each OU
$groupOUs += @{
DN = "OU=Grupper,OU=Resurser,DC=utfjord,DC=local" # Full DN of the OU.
alias = "Felles" # Short name for the OU (used in filenames).
scope = "SubTree" # Search scope: "SubTree" or "OneLevel".
synctemplateid = "ImportedGroups" # ID of the sync template.
}
#------ Members ------
$userSearchBase = "OU=Brukere,DC=utfjord,DC=local" # Parent OU for member fetch.
<#
Limit user selection to specific OUs if necessary.
Set equal to $userSearchbase if no limitations are needed.
#>
$userOUs = @(
"OU=Brukere,DC=utfjord,DC=local"
)
# // End of Setup
#------ Export Logic ------
# Create Regex for User OU validation
$regex = ""
$userOUs | ForEach-Object { $regex += ".*," + [Regex]::Escape($_) + "$|" }
$regex = $regex.Substring(0,$regex.Length-1)
foreach ($ou in $groupOUs) {
Write-Host "Fetching groups for OU $($ou.DN)"
$groups = Get-ADGroup -filter '*' -searchbase "$($ou.DN)" -searchscope "$($ou.scope)" -properties name,samaccountname,description,ManagedBy,mailnickname,grouptype,groupscope,GroupCategory,Mail,distinguishedName,ObjectGuid
Write-Host "Writing group list to file for OU $($ou.DN) --> $($outputfolder)"
$groups | Select-Object @{Label="name";Expression = {("$($_.samaccountname)")}},`
@{Label="displayname";Expression = {("$($_.name)")}},`
@{Label="sourceid";Expression = {("$($_.$($sourceid))")}},`
mail,description,`
@{Label="GroupType";Expression = {("$($_.groupScope)$($_.GroupCategory)")}},`
@{n='parentPath';e={$_.DistinguishedName -replace '^.*?,(?=[A-Z]{2}=)'}},`
@{Label="groupScope";Expression = {("OnPremAD")}},`
@{Label="ImportedAnchor";Expression = {($_.objectguid)}},`
@{Label="parent";Expression = {($ou.synctemplateid)}} |
ConvertTo-Csv -NoTypeInformation -Delimiter ";" |
ForEach-Object { $_ -replace '"' } |
Out-file -Encoding utf8 -filepath "$($outputfolder)\groups-$($ou.alias).csv"
# Member export logic (Skipped if $exportmembers is false)
if($exportmembers -eq "true") {
foreach ($group in $groups) {
Write-Host "Fetching and writing members to file for group $($group.samaccountname) --> $($outputfolder)"
(Get-ADGroupMember -identity $group.samaccountname -Recursive |
Where-Object {$_.objectClass -eq "user"} |
Get-ADUser -Properties $($mergeattribute) |
Where-Object { $_.DistinguishedName -match $regex -and $_.enabled -eq $True -and $($mergeattribute) -like "*"} |
ForEach-Object { $_.$($mergeattribute) }) -join "," |
Out-file -filepath "$($outputfolder)\members-$($group.samaccountname)_$($customer).csv" -Encoding UTF8
}
}
}
Steg 2: Uppdatera befintliga synkroniseringsregler
Innan du importerar de nya grupperna måste du se till att dina befintliga gruppsynkroniseringsmallar inte försöker exportera dessa grupper tillbaka till AD, vilket skulle orsaka dubbletter eller fel.
Granska alla aktiva mallar för gruppsynkronisering.
Leta reda på den regeluppsättning som är kopplad till varje mall.
Lägg till en regel för att utesluta grupper där
Parentattribut är lika medImportedGroups.
Varning för detta: Om du inte utför detta steg kan det leda till att grupper i Active Directory dupliceras.
Steg 3: Konfigurera mallen för importsynkronisering
Du behöver en specifik synkroniseringsmall i eADM för att hantera de importerade grupperna. Du kan antingen kopiera en färdig mall eller skapa en mall manuellt.
Alternativ A: Kopia från Templates Tenant
Om du har tillgång till "Templates"-hanteraren kopierar du mallen med namnet AD: Imported groups (sourceid = objectguid). Regeluppsättningen AD: Imported groups from OnPremAD objectguid kommer också att kopieras över.
Alternativ B: Manuell konfiguration
Om du inte kan kopiera mallen skapar du en ny med följande inställningar:
Inställningar för mall:
Namn:
AD: Imported groups (sourceid = objectguid)Aktiv: Ja
Objekttyp: Grupp
Synkroniseringssteg: Exportera AD
Objektets sökväg:
[IFEMPTYUSE;[ExtensionAttribute2];OU=Groups DC=domain DC=local]Obs: Ersätt DN ovan med din standard Group OU.
Exportera attribut:

Källa | Mål | Tomt mål | Utländsk nyckel |
| beskrivning | Nej | |
| cn | Nej | |
| samKontonamn | Nej | |
| GruppTyp | Nej | |
| förlängningAttribut1 | Nej | |
| hanterad av | Nej | Användare.chef |
| visningsnamn | Nej | |
| förlängningAttribut3 | Nej | |
| förlängningAttribut4 | Nej |
Konfiguration av regeluppsättning:

Skapa en regeluppsättning med namnet "AD: Importerade grupper från OnPremAD" och länka den till mallen.
Attribut: Förälder
Term: Är lika med något av
Argument:
ManualGroupWizard,ImportedGroups
Steg 4: Importera CSV till eADM
När CSV-filerna har skapats och mallarna har konfigurerats kan du fortsätta med importen.
Logga in på eADM.
Navigera till Grupper i sidofältet.
Välj Källdata för manuella grupper.
Starta guiden för att ladda upp manuella grupper.
Ladda upp CSV-filen/filerna som genererades i steg 1.
Observera: Korrekta kolumnmappningar kommer att upptäckas automatiskt.
Slutför guiden för att avsluta importen.
Resultat: Vid nästa synkroniseringscykel kommer ett ankare att upprättas som länkar eADM-objekten till de befintliga AD-grupperna via deras objectGuid. Du kan nu hantera dessa grupper med hjälp av eADM.
4. Sammanfattning för AI och sök
Detta dokument innehåller instruktioner för att importera befintliga Active Directory-grupper till Identum eADM för hantering. Det beskriver processen för att köra ett PowerShell-skript för att exportera AD-grupper till CSV, ändra befintliga synkroniseringsregler för att förhindra duplicering, konfigurera en dedikerad synkroniseringsmall för "Imported Groups" och använda "Wizard for uploading manual groups" i eADM. Denna procedur upprättar en permanent länk (ankare) mellan eADM och AD utan att radera befintliga data.