Aracılığıyla paylaş


Microsoft Entra Id'de kullanıcıları toplu oluşturma

Microsoft Entra'nın bir parçası olan Microsoft Entra Id, toplu kullanıcı oluşturma ve silme işlemlerini destekler ve kullanıcı listelerini indirmeyi destekler. Microsoft Entra Id'den indirebileceğiniz virgülle ayrılmış değerler (CSV) şablonunu doldurmanız yeter.

Gerekli izinler

Yönetim portalında kullanıcıları toplu olarak oluşturmak için en azından Kullanıcı Yöneticisi olarak oturum açmanız gerekir.

CSV şablonunu anlama

Microsoft Entra kullanıcılarını toplu olarak başarıyla oluşturmanıza yardımcı olmak için toplu karşıya yükleme CSV şablonunu indirin ve doldurun. İndirdiğiniz CSV şablonu şu örneğe benzer olabilir:

Her satır ve sütun için amacı ve değerleri açıklayan karşıya yükleme ve aramalar için elektronik tablo ekran görüntüsü.

Uyarı

CSV şablonunu kullanarak yalnızca bir girdi ekliyorsanız, 3. satırı korumanız ve yeni girdinizi 4. satıra eklemeniz gerekir.

Dosya uzantısını eklediğinizden .csv ve , passwordProfileve accountEnabled'nin önünde userPrincipalNameyer alan boşlukları kaldırdığınızdan emin olun.

CSV şablon yapısı

İndirilen CSV şablonundaki satırlar aşağıdaki gibidir:

  • Sürüm numarası: Sürüm numarasını içeren ilk satır karşıya yükleme CSV'sine eklenmelidir.
  • Sütun başlıkları: Sütun başlıklarının biçimi Öğe adı> [PropertyName]< Gerekli veya boş> şeklindedir.< Örneğin, Name [displayName] Required. Şablonun bazı eski sürümlerinde küçük çeşitlemeler olabilir.
  • Örnek satırı: Şablona her sütun için kabul edilebilir değerlere ilişkin bir dizi örnek ekledik. Örnek satırını kaldırmanız ve kendi girdilerinizle değiştirmeniz gerekir.

Ek yönergeler

  • Karşıya yükleme şablonunun ilk iki satırı kaldırılmamalı veya değiştirilmemelidir veya karşıya yükleme işlenemez.
  • Önce gerekli sütunlar listelenir.
  • Şablona yeni sütunlar eklemenizi önermiyoruz. Eklediğiniz ek sütunlar yoksayılır ve işlenmez.
  • CSV şablonunun en son sürümünü mümkün olduğunca sık indirmenizi öneririz.
  • Herhangi bir alandan önce/sonra istenmeyen boşluk olmadığından emin olun. Kullanıcı asıl adı için bu tür bir boşluk olması içeri aktarma hatasına neden olabilir.
  • İlk paroladaki değerlerin şu anda etkin olan parola ilkesiyle uyumlu olduğundan emin olun.

Kullanıcıları toplu olarak oluşturmak için

  1. Microsoft Entra yönetim merkezinde en az Bir Kullanıcı Yöneticisi olarak oturum açın.

  2. Microsoft Entra Kimlik'i seçin.

  3. Tüm kullanıcılar Kullanıcılar>>Toplu oluştur'u seçin.

  4. Kullanıcı özelliklerini içeren geçerli bir virgülle ayrılmış değerler (CSV) dosyası almak için Kullanıcı oluştur sayfasında İndir'i seçin ve ardından oluşturmak istediğiniz kullanıcıları ekleyin.

    Eklemek istediğiniz kullanıcıları listelediğiniz yerel bir CSV dosyasının nasıl seçildiği gösteren ekran görüntüsü.

  5. CSV dosyasını açın ve oluşturmak istediğiniz her kullanıcı için bir satır ekleyin. Yalnızca Ad, Kullanıcı asıl adı, İlk parola ve Oturum açmayı engelle (Evet/Hayır) değerleri gereklidir. Ardından dosyayı kaydedin.

    Oluşturulacak kullanıcıların adlarını ve kimliklerini içeren CSV dosyasının bir örneğini gösteren ekran görüntüsü.

  6. Kullanıcı oluştur sayfasında, CSV dosyanızı karşıya yükleyin altında dosyaya göz atın. Dosyayı seçip Gönder'e tıkladığınızda CSV dosyasının doğrulaması başlar.

  7. Dosya içeriği doğrulandıktan sonra Dosya başarıyla karşıya yüklendi ifadesini görürsünüz. Hatalar varsa, işi göndermeden önce bunları düzeltmeniz gerekir.

  8. Dosyanız doğrulamayı geçtiğinde, yeni kullanıcıları içeri aktaran toplu işlemi başlatmak için Gönder'i seçin.

  9. İçeri aktarma işlemi tamamlandığında toplu işlem iş durumuyla ilgili bir bildirim görürsünüz.

Hatayla karşılaşırsanız, Toplu işlem sonuçları sayfasında sonuç dosyasını indirebilir ve görüntüleyebilirsiniz. Bu dosyada her hatanın nedeni belirtilir. Dosya gönderiminin sağlanan şablonla eşleşmesi ve tam sütun adlarını içermesi gerekir. Toplu işlem sınırlamaları hakkında daha fazla bilgi için bkz . Toplu içeri aktarma hizmeti sınırları.

Durumu kontrol et

Bekleyen tüm toplu isteklerinizin durumunu Toplu işlem sonuçları sayfasında görebilirsiniz.

Toplu işlem sonuçları sayfasında işlemin durumunu denetlemeyi gösteren ekran görüntüsü.

Ardından, oluşturduğunuz kullanıcıların Azure portalında veya PowerShell kullanarak Microsoft Entra kuruluşunda mevcut olup olmadığını kontrol edebilirsiniz.

Kullanıcıları doğrulama

  1. Microsoft Entra yönetim merkezinde en az Bir Kullanıcı Yöneticisi olarak oturum açın.
  2. Microsoft Entra Kimlik'i seçin.
  3. Tüm kullanıcılar Kullanıcılar'ı> seçin.
  4. Göster'in altında Tüm kullanıcılar'ı seçin ve oluşturduğunuz kullanıcıların listelendiğini doğrulayın.

PowerShell ile kullanıcıları doğrulama

Şu komutu çalıştırın:

Get-MgUser -Filter "UserType eq 'Member'"

Oluşturduğunuz kullanıcıların listelendiğini görmeniz gerekir.

Toplu içeri aktarma hizmeti sınırları

Her toplu işlem etkinliğinin bir saate kadar çalışabileceğini unutmayın.

Microsoft Entra yönetim portalındaki toplu işlemler zaman aşımına uğradı ve çok büyük kiracılarda başarısız olabilir. Bu sınırlama, ölçeklendirme sınırlamaları nedeniyle bilinen bir sorundur. Microsoft mühendislik ekibi, sonunda bu sınırlamayı giderecek yeni bir hizmet üzerinde çalışmaktadır.

Not

İçeri aktarma veya oluşturma gibi toplu işlemler gerçekleştirirken, toplu işlem bir saat içinde tamamlanmazsa bir sorunla karşılaşabilirsiniz. Bu sorunu geçici olarak çözmek için toplu iş başına işlenen kayıt sayısını bölmenizi öneririz. Örneğin, dışarı aktarma işlemine başlamadan önce sonuçların boyutunu küçültmek için grup türüne veya kullanıcı adına göre filtreleyerek sonuç kümesini sınırlayabilirsiniz. Filtrelerinizi iyileştirerek, temelde toplu işlem tarafından döndürülen verileri sınırlandırıyorsunuz.

Bu sorunun bir diğer geçici çözümü de PowerShell kullanarak doğrudan Microsoft Graph API çağrıları yapmaktır. Kullanıcıları ve grupları toplu indirme hatası için Ve PowerShell cmdlet'lerini GET-MgGroup -All GET-MgUser -Allkullanmanızı öneririz.

Aşağıdaki PowerShell kod örnekleri şunlarla ilgili toplu işlemlere yöneliktir:

Kullanıcılar

Tüm kullanıcıları toplu indirme

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

Kullanıcıları toplu oluşturma

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

Not

CSV dosyanızın gerekli sütunları (örneğin, , UserPrincipalNamevb.) DisplayNameiçerdiğinden emin olun. Ayrıca, betiği CSV dosyanızdaki gerçek sütun adlarına uyacak şekilde ayarlayın.

Kullanıcıları toplu silme

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

Not

CSV dosyanızın gerekli sütunları içerdiğinden emin olun (örneğin, UserPrincipalName). Ayrıca, betiği CSV dosyanızdaki gerçek sütun adlarına uyacak şekilde ayarlayın.

Gruplar

Tüm grupları toplu indirme

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" 

Grubun üyelerini toplu indirme

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"  

Üyeleri toplu olarak ekleme

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 

Üyeleri toplu olarak kaldırma

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 

Cihazlar

Tüm cihazları toplu indirme

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"  

Sonraki adımlar