Microsoft Graph PowerShell ile Gruplara Kullanıcı Ekleme
Kullanıcıları Microsoft 365 veya Microsoft Entra'daki gruplara eklemek, yeni kullanıcıların oluşturulması ve genel sürekli destek sırasında yaygın bir ihtiyaçtır. Bu, web yönetim merkezleri aracılığıyla yapılan basit bir görev olsa da, basitlik ve otomasyon amacıyla bu görevin Microsoft Graph PowerShell kullanılarak programlı olarak yerine getirilmesine hala ihtiyaç vardır.
Bu eğitimde size Microsoft Graph PowerShell kullanarak bir gruba tek veya birden fazla kullanıcıyı nasıl ekleyebileceğinizi göstereceğim.
New-MgGroupMember cmdlet'i hakkında
New-MgGroupMember cmdlet'i, ister bir güvenlik grubu, ister dağıtım grubu veya Microsoft 365 grubu olsun, belirli bir gruba tek bir kullanıcı eklemenize olanak tanır. Aynı anda yalnızca tek bir kullanıcı ekleyebileceğiniz için, tek bir komut veya komut dosyasına birden fazla kullanıcı eklemek için bir döngü kullanılabilir.
New-MgGroupMember, Microsoft Graph PowerShell'deki Microsoft.Graph.Groups modüllerine aittir. Bu modül aşağıdaki komutla manuel olarak kurulabilir:
Install-Module Microsoft.Graph.GroupsKullanıcıları gruplara eklemek için gereken minimum düzeyde izinler de vardır; aşağıdaki izinlere izin verilmesi gerekir:
- GrupÜyesi.ReadWrite.Tümü
- Kullanıcı.ReadWrite.Tümü
Microsoft Graph PowerShell'e yukarıdaki izinlerle bağlanmak için aşağıdaki komutu kullanabilir ve Genel Yönetici kullanıcısı ile oturum açabilirsiniz:
Connect-MgGraph -Scopes GroupMember.ReadWrite.All, User.ReadWrite.AllMicrosoft Graph PowerShell'e bağlandıktan sonra grupları gruplara ekleme işlemine devam edebilirsiniz.
Microsoft Graph PowerShell ile bir gruba tek bir kullanıcı ekleme
Birçok Microsoft Graph PowerShell cmdlet'inde olduğu gibi, New-MgGroupMember cmdlet'inin tuhaflıklarından biri, grubun veya kullanıcının benzersiz adını (veya kullanıcı adını) kullanmak yerine, bunun yerine daha az kullanıcı anlamına gelen ObjectID dizinini girmenizi gerektirmesidir. arkadaşça.
Hem kullanıcının hem de grubun ObjectID'si, Microsoft Graph PowerShell'deki -Arama parametresi kullanılarak kolayca bulunabilir.
Get-MgUser'ın Microsoft Graph PowerShell ile Kullanımı başlıklı blogumda -Search parametresi hakkında daha fazla ayrıntıya gireceğim.
Hem hedef grup hem de hedef kullanıcı için dizin nesnesini depolamak üzere aşağıdaki komutu kullanarak başlayın:
$group = Get-MgGroup -Search '"DisplayName:GroupName"' -ConsistencyLevel eventual
$user = Get-MgUser -Search '"DisplayName:UserDiplayName"' -ConsistencyLevel eventualDaha sonra kullanıcıyı hedef gruba eklemek için New-MgGroupMember cmdlet'ini kullanın ve hem kullanıcı hem de grup için ObjectID'ye başvurun:
New-MgGroupMember -GroupId $group.id -DirectoryObjectId $user.idBir gruba birden fazla kullanıcı ekleme
Bir gruba birden fazla kullanıcı eklemenin en kolay yolu, New-MgGroupMember cmdlet'ini çalıştırırken bir grup kullanıcı arasında geçiş yapmak için bir PowerShell döngüsü kullanmaktır.
PowerShell ile döngülerin nasıl kullanılacağı hakkında daha fazla ayrıntı için ayrıntılı bloguma göz atın: Örneklerle Powershell Foreach Döngüsü Nasıl Kullanılır.
Başlamak için son örneğe kıyasla benzer bir kod parçası kullanacağız. Bunun yerine, bu sefer hedeflemek istediğimiz kullanıcıların listesini almak için Get-MgUser cmd'si ile -Filter parametresini kullanacağız.
$group = Get-MgGroup -Search '"DisplayName:Test2"' -ConsistencyLevel eventual
$users = Get-MgUser -Filter "endsWith(mail,'ourcloudnetwork.com')" -ConsistencyLevel eventual
Artık $users değişkeni bir dizi kullanıcı içerdiğine göre, kullanıcılar arasında aşağıdaki gibi döngü yapabiliriz:
Foreach ($user in $users) {
Write-host "Adding user $($User.DisplayName) ..." -ForegroundColor Cyan
New-MgGroupMember -GroupId $group.id -DirectoryObjectId $user.id
}