Import af AD-grupper til Identum eADM

Denne vejledning beskriver fremgangsmåden for import af eksisterende Active Directory (AD)-grupper til Identum eADM. Dette gør det muligt for eADM at overtage styringen af disse grupper uden at slette eller genoprette dem. Processen omfatter eksport af gruppedata til CSV, konfiguration af synkroniseringsskabeloner og import af dataene til eADM.


Forudsætninger

  • Administratoradgang til Active Directory-domænecontrolleren.

  • Administrativ adgang til eADM-tenantet.

  • PowerShell skal være installeret på den server, hvor eksporten skal udføres.


Trin 1: Eksportér AD-grupper til CSV

For at importere grupper skal du først oprette en formateret CSV-fil, der indeholder gruppedataene. Vi bruger et PowerShell-script til at udtrække de nødvendige oplysninger fra Active Directory.

  1. Åbn PowerShell ISE eller et tekstredigeringsprogram på en computer, hvor Active Directory-modulerne er installeret.

  2. Kopier scriptet nedenfor.

  3. Vigtigt: Opdater variablerne i afsnittene »Generelle indstillinger«, »Systemværdier« og »Grupper/OU'er«, så de passer til dit miljø.

  4. Sørg for, at variablen $exportmembers er indstillet til "false" for netop dette importscenarie.

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
        }
    }
}


Trin 2: Opdater eksisterende synkroniseringsregler

Inden du importerer de nye grupper, skal du sikre dig, at dine eksisterende skabeloner til gruppesynkronisering ikke forsøger at eksportere disse grupper tilbage til AD, da dette vil medføre dubletter eller fejl.

  1. Gennemgå alle aktive gruppesynkroniseringsskabeloner.

  2. Find det regelsæt, der er knyttet til hver skabelon.

  3. Tilføj en regel til udelukke grupper, hvor Parent attribut er lig med ImportedGroups.

Advarsel: Hvis dette trin ikke udføres, kan det medføre, at der opstår dubletter af grupper i Active Directory.


Trin 3: Konfigurer skabelonen til importsynkronisering

Du skal bruge en bestemt synkroniseringsskabelon i eADM for at kunne håndtere de importerede grupper. Du kan enten kopiere en færdiglavet skabelon eller oprette en manuelt.


Valgmulighed A: Kopier fra skabeloner for lejer

Hvis du har adgang til »Templates«-tenantet, skal du kopiere skabelonen med navnet AD: Imported groups (sourceid = objectguid). Regelsættet AD: Imported groups from OnPremAD objectguid vil også blive kopieret over.


Mulighed B: Manuel konfiguration

Hvis du ikke kan kopiere skabelonen, skal du oprette en ny med følgende indstillinger:

Skabelonindstillinger:

  • Navn: AD: Imported groups (sourceid = objectguid)

  • Aktiv: Ja

  • Objekttype: Gruppe

  • Synkroniseringstrin: Eksport af AD

  • Objektsti: [IFEMPTYUSE;[ExtensionAttribute2];OU=Groups DC=domain DC=local]

    • Bemærk: Erstat ovenstående DN med din standardgruppe-OU.

Eksportattributter:

image-20251129-154643.png

Kilde

Mål

Tomt mål

Fremmednøgle

[description]

beskrivelse

Nej


[Name]

cn

Nej


[Name]

samAccountName

Nej


[IFEMPTYUSE;[TRANSFORM;[GroupType];DomainLocalDistribution|4;GlobalDistribution|2;UniversalDistribution|8;DomainLocalSecurity|-2147483644;GlobalSecurity|-2147483646;UniversalSecurity|-2147483640];-2147483646]

Gruppetype

Nej


eAdm

udvidelsesattribut1

Nej


[Manager]

administreret af

Nej

User.Manager

[IFEMPTYUSE;[ExtensionAttribute3];[Name]]

displayName

Nej


ReservedForFutureUse

extensionAttribute3

Nej


ReservedForFutureUse

extensionAttribute4

Nej


Konfiguration af regelsæt:

image-20251129-154532.png

Opret et regelsæt med navnet »AD: Importerede grupper fra OnPremAD« og knyt det til skabelonen.

  • Egenskab: Overordnet

  • Udtryk: Er lig med et af følgende

  • Argument: ManualGroupWizard,ImportedGroups


Trin 4: Importér CSV-filen til eADM

Når CSV-filerne er genereret, og skabelonerne er konfigureret, kan du fortsætte med importen.

  1. Log ind på eADM.

  2. Gå til »Grupper« i sidepanelet.

  3. Vælg kildedata til manuelle grupper.

  4. Start guiden til upload af manuelle grupper.

  5. Upload den eller de CSV-filer, der blev genereret i trin 1.

    • Bemærk: De korrekte kolonnemappinger registreres automatisk.

  6. Gennemfør guiden for at afslutte importen.

Resultat: Ved den næste synkroniseringscyklus oprettes der en sammenkobling, der forbinder eADM-objekterne med de eksisterende AD-grupper via deres objectGuid. Du kan nu administrere disse grupper ved hjælp af eADM.


Dette dokument indeholder vejledning i, hvordan man importerer eksisterende Active Directory-grupper til Identum eADM med henblik på administration. Det beskriver fremgangsmåden for at køre et PowerShell-script til eksport af AD-grupper til CSV, ændring af eksisterende synkroniseringsregler for at undgå dubletter, konfiguration af en dedikeret synkroniseringsskabelon ved navn »Imported Groups« samt brug af »Guiden til upload af manuelle grupper« i eADM. Denne fremgangsmåde opretter en permanent forbindelse (anker) mellem eADM og AD uden at slette eksisterende data.

Senest opdateret: