Groepsleden bulksgewijs toevoegen in Microsoft Entra-id
U kunt meerdere leden aan een groep toevoegen met behulp van een CSV-bestand (door komma's gescheiden waarden) om groepsleden bulksgewijs te importeren in de portal voor Microsoft Entra-id.
Inzicht in de CSV-sjabloon
Download en vul de CSV-sjabloon voor bulksgewijs uploaden in om microsoft Entra-groepsleden bulksgewijs toe te voegen. Uw CSV-sjabloon kan eruitzien als in dit voorbeeld:
CSV-sjabloonstructuur
De rijen in een gedownloade CSV-sjabloon zijn:
- Versienummer: De eerste rij die het versienummer bevat, moet worden opgenomen in het csv-uploadbestand.
- Kolomkoppen: De indeling van de kolomkoppen is< Itemnaam> [PropertyName]< Vereist of leeg.> Een voorbeeld is
Member object ID or user principal name [memberObjectIdOrUpn] Required
. Sommige oudere versies van de sjabloon kunnen iets afwijken. Voor wijzigingen in het groepslidmaatschap kunt u de id van het lidobject of de principal-naam van de gebruiker kiezen. - Voorbeeldenrij: De sjabloon bevat een rij met voorbeelden van acceptabele waarden voor elke kolom. U moet de rij met voorbeelden verwijderen en vervangen door uw eigen invoerwaarden.
Meer richtlijnen
- De eerste twee rijen van de uploadsjabloon mogen niet worden verwijderd of gewijzigd of het uploaden kan niet worden verwerkt.
- De vereiste kolommen worden het eerst weergegeven.
- Het is niet raadzaam om nieuwe kolommen aan de sjabloon toe te voegen. Alle andere kolommen die u toevoegt, worden genegeerd en worden niet verwerkt.
- U wordt aangeraden altijd de meest recente versie van de CSV-sjabloon te downloaden.
- Voeg ten minste twee UPN's of object-id's van gebruikers toe om het bestand te uploaden.
Groepsleden bulksgewijs importeren
Tip
Stappen in dit artikel kunnen enigszins variëren op basis van de portal waaruit u begint.
Meld u als groepsbeheerder aan bij het Microsoft Entra-beheercentrum.
Selecteer Microsoft Entra ID.
Notitie
Groepseigenaren kunnen leden uit groepen waarvan ze eigenaar zijn ook bulksgewijs importeren.
Selecteer Groepen>Alle groepen.
Open de groep waaraan u leden toevoegt en selecteer vervolgens Leden.
Selecteer op de pagina Leden bulkbewerkingen en kies Leden importeren.
Selecteer op de pagina Groepsleden bulksgewijs importeren de optie Downloaden om de CSV-bestandssjabloon met vereiste eigenschappen van groepsleden te downloaden.
Open het CSV-bestand en voeg een regel toe voor elk groepslid dat u in de groep wilt importeren. Vereiste waarden zijn lidobject-id of user principal name. Sla het bestand op.
Blader op de pagina Groepsleden bulksgewijs importeren onder CSV-bestand uploaden naar het bestand. Wanneer u het bestand selecteert, wordt de validatie van het CSV-bestand gestart.
Wanneer de bestandsinhoud is gevalideerd, wordt op de pagina voor bulkimport Het bestand is geüpload weergegeven. Als er fouten zijn, moet u deze corrigeren voordat u de taak kunt verzenden.
Wanneer het bestand is gevalideerd, selecteert u Verzenden om de bulkbewerking te starten waarmee de groepsleden naar de groep worden geïmporteerd.
Wanneer de importbewerking is voltooid, wordt in een melding aangegeven dat de bulkbewerking is geslaagd.
Als er fouten optreden, kunt u het resultatenbestand downloaden en weergeven op de pagina met resultaten van bulkbewerkingen. Het bestand bevat de reden voor elke fout. De bestandsverzending moet met de opgegeven sjabloon overeenkomen en de exacte kolomnamen bevatten. Zie Servicelimieten voor bulkimport voor meer informatie over beperkingen voor bulkbewerkingen.
Importstatus controleren
U kunt de status van al uw in behandeling zijnde bulkaanvragen bekijken op de pagina met resultaten van bulkbewerkingen.
Selecteer de waarden onder de kolommen Aantal geslaagd, Aantal mislukt of Totaal aantal aanvragen voor details over elk regelitem in de bulkbewerking. Als er fouten zijn opgetreden, worden de oorzaken van de fout vermeld.
Servicelimieten voor bulkimport
U moet er rekening mee houden dat elke bulkbewerkingsactiviteit maximaal één uur kan worden uitgevoerd.
Bulkbewerkingen in de Microsoft Entra-beheerportal kunnen een time-out hebben en mislukken op zeer grote tenants. Deze beperking is een bekend probleem vanwege schaalbeperkingen. Het technische team van Microsoft werkt aan een nieuwe service waarmee deze beperking uiteindelijk wordt opgelost.
Notitie
Bij het uitvoeren van bulkbewerkingen, zoals importeren of maken, kan er een probleem optreden als de bulkbewerking niet binnen het uur wordt voltooid. U kunt dit probleem omzeilen door het aantal records dat per batch is verwerkt, te splitsen. Voordat u bijvoorbeeld een export start, kunt u de resultatenset beperken door te filteren op een groepstype of gebruikersnaam om de grootte van de resultaten te verkleinen. Door uw filters te verfijnen, beperkt u in wezen de gegevens die worden geretourneerd door de bulkbewerking.
Een andere tijdelijke oplossing voor dit probleem is het gebruik van PowerShell om directe Microsoft Graph API-aanroepen te maken. Als u gebruikers en groepen bulksgewijs wilt downloaden, raden we u aan de PowerShell-cmdlets GET-MgGroup -All
en GET-MgUser -All
.
De volgende PowerShell-codevoorbeelden zijn bedoeld voor bulkbewerkingen met betrekking tot:
Gebruikers
Alle gebruikers bulksgewijs downloaden
# Import the Microsoft Graph module
Import-Module Microsoft.Graph
# Authenticate to Microsoft Graph (you may need to provide your credentials)
Connect-MgGraph -Scopes "User.Read.All"
# Get all users using Get-MgUser
$users = Get-MgUser -All -ConsistencyLevel eventual -Property Id, DisplayName, UserPrincipalName,UserType,OnPremisesSyncEnabled,CompanyName,CreationType
# Specify the output CSV file path
$outputCsvPath = "C:\\Users\\YourUsername\\Documents\\Users.csv"
# Create a custom object to store user data
$userData = @()
# Loop through each user and collect relevant data
foreach ($user in $users) {
$userObject = [PSCustomObject]@{
Id = $user.Id
DisplayName = $user.DisplayName
UserPrincipalName = $user.UserPrincipalName
UserType = $user.UserType
OnPremisesSyncEnabled = $user.OnPremisesSyncEnabled
CompanyName = $user.CompanyName
CreationType = $user.CreationType
}
$userData += $userObject
}
# Export user data to a CSV file
$userData | Export-Csv -Path $outputCsvPath -NoTypeInformation
# Disconnect from Microsoft Graph
Disconnect-MgGraph
Write-Host "User data exported to $outputCsvPath"
Gebruikers bulksgewijs maken
# Import the Microsoft Graph module
Import-Module Microsoft.Graph
# Authenticate to Microsoft Graph (you may need to provide your credentials)
Connect-MgGraph -Scopes "User.ReadWrite.All"
# Specify the path to the CSV file containing user data
$csvFilePath = "C:\\Path\\To\\Your\\Users.csv"
# Read the CSV file (adjust the column names as needed)
$usersData = Import-Csv -Path $csvFilePath
# Loop through each row in the CSV and create users \
foreach ($userRow in $usersData) {
$userParams = @{
DisplayName = $userRow.'Name [displayName] Required'
UserPrincipalName = $userRow.'User name [userPrincipalName] Required'
PasswordProfile = @{
Password = $userRow.'Initial password [passwordProfile] Required'
}
AccountEnabled = $true
MailNickName = $userRow.mailNickName
}
try {
New-MgUser @userParams
Write-Host "User $($userRow.UserPrincipalName) created successfully."
} catch {
Write-Host "Error creating user $($userRow.UserPrincipalName): $($_.Exception.Message)"
}
}
# Disconnect from Microsoft Graph
Disconnect-MgGraph
Write-Host "Bulk user creation completed."
Notitie
Zorg ervoor dat uw CSV-bestand de benodigde kolommen bevat (bijvoorbeeld DisplayName
, UserPrincipalName
enzovoort). Pas het script ook aan zodat het overeenkomt met de werkelijke kolomnamen in uw CSV-bestand.
Gebruikers bulksgewijs verwijderen
# Import the Microsoft Graph module
Import-Module Microsoft.Graph
# Authenticate to Microsoft Graph (you may need to provide your credentials)
Connect-MgGraph -Scopes "User.ReadWrite.All"
# Specify the path to the CSV file containing user data
$csvFilePath = "C:\\Path\\To\\Your\\Users.csv"
# Read the CSV file (adjust the column names as needed)
$usersData = Import-Csv -Path $csvFilePath
# Loop through each row in the CSV and delete users
foreach ($userRow in $usersData) {
try {
Remove-MgUser -UserId $userRow.UserPrincipalName -Confirm:$false
Write-Host "User $($userRow.UserPrincipalName) deleted successfully."
} catch {
Write-Host "Error deleting user $($userRow.UserPrincipalName): $($_.Exception.Message)"
}
}
# Disconnect from Microsoft Graph
Disconnect-MgGraph
Write-Host "Bulk user deletion completed."
Notitie
Zorg ervoor dat het CSV-bestand de benodigde kolommen bevat (bijvoorbeeld UserPrincipalName
). Pas het script ook aan zodat het overeenkomt met de werkelijke kolomnamen in uw CSV-bestand.
Groepen
Alle groepen bulksgewijs downloaden
Import-Module Microsoft.Graph.Groups
# Authenticate to Microsoft Graph (you may need to provide your credentials)
Connect-MgGraph -Scopes "Group.Read.All"
# Get the group members
$groups = Get-MgGroup -All | Select displayName, Id, groupTypes,mail
# Create a custom object to store group data
$groupData = @()
# Loop through each group and collect relevant data
foreach ($group in $groups) {
if ($group.groupTypes -contains "Unified"){$groupType = "Microsoft 365"}
else {$groupType = "Security"}
if ($group.groupTypes -contains "DynamicMembership"){$membershipType = "Dynamic"}
else {$membershipType = "Assigned"}
$groupObject = [PSCustomObject]@{
Id = $group.Id
DisplayName = $group.displayName
Mail = $group.mail
GroupType = $groupType
MemebershipType = $membershipType
}
$groupData += $groupObject
}
# Specify the output CSV file path
$outputCsvPath = "C:\\Users\\cewu\\Documents\\Groups.csv"
$groupData| Export-Csv -Path $outputCsvPath -NoTypeInformation
Write-Host "Group members exported to $outputCsvPath"
Leden van een groep bulksgewijs downloaden
Import-Module Microsoft.Graph.Groups
# Authenticate to Microsoft Graph (you may need to provide your credentials)
Connect-MgGraph -Scopes "Group.Read.All,GroupMember.Read.All"
# Set the group ID of the group whose members you want to download
$groupId = "your_group_id"
# Get the group members
$members = Get-MgGroupMember -GroupId $groupId -All | select * -ExpandProperty additionalProperties | Select-Object @(
'id'
@{ Name = 'userPrincipalName'
Expression = { $_.AdditionalProperties["userPrincipalName"] }
}
@{ Name = 'displayName'
Expression = { $_.AdditionalProperties["displayName"] }
}
)
# Specify the output CSV file path
$outputCsvPath = "C:\\Users\\YourUserName\\Documents\\GroupMembers.csv"
$members| Export-Csv -Path $outputCsvPath -NoTypeInformation
# Disconnect from Microsoft Graph
Disconnect-MgGraph
Write-Host "Group members exported to $outputCsvPath"
Leden bulksgewijs toevoegen
Import-Module Microsoft.Graph.Groups
# Authenticate to Microsoft Graph (you may need to provide your credentials)
Connect-MgGraph -Scopes "GroupMember.ReadWrite.All"
# Import the CSV file
$members = Import-Csv -Path "C:\path\to\your\file.csv"
# Define the Group ID
$groupId = "your-group-id"
# Iterate over each member and add them to the group
foreach ($member in $members) {
try{
New-MgGroupMember -GroupId $groupId -DirectoryObjectId $member.memberObjectId
Write-Host "Added $($member.memberObjectId) to the group."
}
Catch{
Write-Host "Error adding member $($member.memberObjectId):$($_.Exception.Message)"
}
}
# Disconnect from Microsoft Graph
Disconnect-MgGraph
Leden bulksgewijs verwijderen
Import-Module Microsoft.Graph.Groups
# Authenticate to Microsoft Graph (you may need to provide your credentials)
Connect-MgGraph -Scopes "GroupMember.ReadWrite.All"
# Import the CSV file
$members = Import-Csv -Path "C:\path\to\your\file.csv"
# Define the Group ID
$groupId = "your-group-id"
# Iterate over each member and add them to the group
foreach ($member in $members) {
try{
Remove-MgGroupMemberByRef -GroupId $groupId -DirectoryObjectId $member.memberObjectId \
Write-Host "Removed $($member.memberObjectId) from the group."
}
Catch{
Write-Host "Error removing member $($member.memberObjectId):$($_.Exception.Message)"
}
}
# Disconnect from Microsoft Graph
Disconnect-MgGraph
Apparaten
Alle apparaten bulksgewijs downloaden
Import-Module Microsoft.Graph
# Authenticate to Microsoft Graph (you may need to provide your credentials)
Connect-MgGraph -Scopes "Device.Read.All"
# Get all devices
$devices = Get-MgDevice -All |select displayName,deviceId,operatingSystem,operatingSystemVersion,isManaged,isCompliant,mdmAppId,registeredOwners,TrustType
# Specify the output CSV file path
$outputCsvPath = "C:\\Users\\YourUserName\\Documents\\Devices.csv"
$devices| Export-Csv -Path $outputCsvPath -NoTypeInformation
Write-Host "Devices exported to $outputCsvPath"