Bagikan melalui


Menambahkan anggota grup secara massal di ID Microsoft Entra

Anda dapat menambahkan beberapa anggota ke grup dengan menggunakan file nilai yang dipisahkan koma (CSV) ke anggota grup impor massal di portal untuk ID Microsoft Entra.

Memahami templat CSV

Unduh dan isi templat CSV unggahan massal untuk berhasil menambahkan anggota grup Microsoft Entra secara massal. Templat CSV Anda mungkin terlihat seperti contoh ini:

Cuplikan layar yang memperlihatkan spreadsheet untuk pengunggahan dan panggilan yang menjelaskan tujuan dan nilai untuk setiap baris dan kolom.

Struktur templat CSV

Baris dalam templat CSV yang diunduh adalah:

  • Nomor versi: Baris pertama yang berisi nomor versi harus disertakan dalam CSV unggahan.
  • Judul kolom: Format judul kolom adalah <Nama item> [PropertyName] <Wajib diisi atau kosong>. Contohnya Member object ID or user principal name [memberObjectIdOrUpn] Required. Beberapa versi templat yang lebih lama mungkin memiliki sedikit variasi. Untuk perubahan keanggotaan grup, Anda dapat memilih ID objek anggota atau nama prinsipal pengguna.
  • Contoh baris: Templat menyertakan baris contoh nilai yang dapat diterima untuk setiap kolom. Anda harus menghapus baris contoh dan menggantinya dengan entri Anda sendiri.

Panduan lainnya

  • Dua baris pertama templat unggahan tidak boleh dihapus atau dimodifikasi atau unggahan tidak dapat diproses.
  • Kolom yang wajib diisi dicantumkan terlebih dahulu.
  • Kami tidak menyarankan untuk menambahkan kolom baru ke templat. Kolom lain yang Anda tambahkan diabaikan dan tidak diproses.
  • Kami menyarankan agar Anda mengunduh template CSV versi terbaru sesering mungkin.
  • Tambahkan setidaknya dua UPN atau ID objek agar berhasil mengunggah file.

Mengimpor anggota grup secara massal

Tip

Langkah-langkah dalam artikel ini mungkin sedikit berbeda berdasarkan portal tempat Anda memulai.

  1. Masuk ke pusat admin Microsoft Entra sebagai setidaknya Administrator Grup.

  2. Pilih Microsoft Entra ID.

    Catatan

    Pemilik grup juga dapat mengimpor anggota grup yang mereka miliki secara massal.

  3. Pilih Grup>Semua grup.

  4. Buka grup tempat Anda menambahkan anggota, lalu pilih Anggota.

  5. Pada halaman Anggota , pilih operasi massal lalu pilih Impor anggota.

  6. Di halaman Impor massal anggota grup, pilih Unduh untuk mendapatkan templat file CSV dengan properti anggota grup yang diperlukan.

    Cuplikan layar yang memperlihatkan perintah Impor Anggota ada di halaman profil untuk grup.

  7. Buka file CSV dan tambahkan baris untuk setiap anggota grup yang ingin Anda impor ke dalam grup. Nilai yang diperlukan adalah ID objek Anggota atau Nama prinsipal pengguna. Kemudian simpan file tersebut.

    Cuplikan layar yang memperlihatkan file CSV berisi nama dan ID anggota yang akan diimpor.

  8. Di halaman Impor massal anggota grup, pada bagian Unggah file csv Anda, telusuri file tersebut. Saat Anda memilih file, validasi file .csv dimulai.

  9. Saat konten file divalidasi, halaman impor massal menampilkan File yang berhasil diunggah. Jika ada kesalahan, Anda harus memperbaikinya sebelum dapat mengirimkan pekerjaan tersebut.

  10. Saat file Anda melewati validasi, pilih Kirim untuk memulai operasi massal yang mengimpor anggota grup ke grup.

  11. Ketika operasi impor selesai, pemberitahuan menyatakan bahwa operasi massal berhasil.

Jika Anda mengalami kesalahan, Anda dapat mengunduh dan melihat file hasil di halaman Hasil operasi massal. File berisi alasan untuk setiap kesalahan. Pengiriman file harus sesuai dengan templat yang disediakan dan menyertakan nama kolom yang tepat. Untuk informasi selengkapnya tentang batasan operasi massal, lihat Batas layanan impor massal.

Memeriksa status impor

Anda dapat melihat status semua permintaan massal yang tertunda di halaman Hasil operasi massal.

Cuplikan layar yang memperlihatkan opsi Periksa status pada halaman Hasil operasi massal.

Untuk mengetahui detail tentang setiap item baris dalam operasi massal, pilih nilai di bagian kolom # Berhasil, # Gagal, atau Permintaan Total. Jika kegagalan terjadi, alasan kegagalan dicantumkan.

Batas layanan impor massal

Anda harus menyadari bahwa setiap aktivitas operasi massal dapat berjalan hingga satu jam.

Operasi massal di portal admin Microsoft Entra dapat kehabisan waktu dan gagal pada penyewa yang sangat besar. Batasan ini adalah masalah yang diketahui karena keterbatasan penskalaan. Tim teknik Microsoft sedang mengerjakan layanan baru yang pada akhirnya akan mengatasi batasan ini.

Catatan

Saat melakukan operasi massal, seperti mengimpor atau membuat, Anda mungkin mengalami masalah jika operasi massal tidak selesai dalam satu jam. Untuk mengatasi masalah ini, sebaiknya pisahkan jumlah rekaman yang diproses per batch. Misalnya, sebelum memulai ekspor, Anda dapat membatasi hasil yang ditetapkan dengan memfilter jenis grup atau nama pengguna untuk mengurangi ukuran hasil. Dengan menyempurnakan filter Anda, pada dasarnya Anda membatasi data yang dikembalikan oleh operasi massal.

Solusi lain untuk masalah ini adalah menggunakan PowerShell untuk melakukan panggilan LANGSUNG Microsoft Graph API. Untuk kegagalan mengunduh pengguna dan grup secara massal, sebaiknya gunakan cmdlet GET-MgGroup -All PowerShell dan GET-MgUser -All.

Contoh kode PowerShell berikut adalah untuk operasi massal yang terkait dengan:

Pengguna

Mengunduh semua pengguna secara massal

# 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" 

Membuat pengguna secara massal

# 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." 

Catatan

Pastikan file CSV Anda berisi kolom yang diperlukan (misalnya; DisplayName, , UserPrincipalNamedan sebagainya). Selain itu, sesuaikan skrip agar sesuai dengan nama kolom aktual dalam file CSV Anda.

Menghapus pengguna secara massal

# 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." 

Catatan

Pastikan file CSV Anda berisi kolom yang diperlukan (misalnya, UserPrincipalName). Selain itu, sesuaikan skrip agar sesuai dengan nama kolom aktual dalam file CSV Anda.

Grup

Mengunduh semua grup secara massal

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" 

Mengunduh anggota grup secara massal

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"  

Menambahkan anggota secara massal

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 

Menghapus anggota secara massal

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 

Perangkat

Mengunduh semua perangkat secara massal

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"  

Langkah berikutnya