PowerShell ile Microsoft 365 kullanıcı hesaplarına yönetici rolleri atama
Bu makale hem Microsoft 365 Kurumsal hem de Office 365 Kurumsal için geçerlidir.
Microsoft 365 için PowerShell'i kullanarak kullanıcı hesaplarına kolayca rol atayabilirsiniz.
Not
Microsoft 365 yönetim merkezi ile kullanıcı hesaplarına yönetici rolleri atamayı öğrenin.
Ek kaynakların listesi için bkz. Kullanıcıları ve grupları yönetme.
Microsoft Graph PowerShell kullanarak kullanıcı hesaplarına rol atama
Not
Azure Active Directory modülünün yerini Microsoft Graph PowerShell SDK'sı alır. Tüm Microsoft Graph API'lerine erişmek için Microsoft Graph PowerShell SDK'sını kullanabilirsiniz. Daha fazla bilgi için bkz. Microsoft Graph PowerShell SDK'sını kullanmaya başlama.
İlk olarak, Microsoft 365 kiracınıza bağlanmak için bir Microsoft Entra DC yöneticisi, Cloud Application Yönetici veya Genel yönetici hesabı kullanın. Bu makaledeki cmdlet'ler, RoleManagement.ReadWrite.Directory izin kapsamını veya 'Abone olunanSkuları listele' Graph API başvuru sayfasında listelenen diğer izinlerden birini gerektirir. Bu makaledeki bazı komutlar farklı izin kapsamları gerektirebilir; bu durumda bu durum ilgili bölümde not edilir.
Connect-MgGraph -Scopes "RoleManagement.ReadWrite.Directory"
Daha fazla bilgi için bkz. Yönetici rolleri hakkında.
Ardından, bir role eklemek istediğiniz kullanıcı hesabının oturum açma adını tanımlayın (örnek: fredsm@contoso.com). Bu, kullanıcı asıl adı (UPN) olarak da bilinir.
Ardından rolün adını belirleyin. Bkz. Microsoft Entra yerleşik roller.
Not
Bu makaledeki notlara dikkat edin. Azure Active Directory (Azure AD) PowerShell için bazı rol adları farklıdır. Örneğin, Microsoft 365 yönetim merkezi SharePoint Yöneticisi rolü Azure AD PowerShell'de SharePoint Hizmet Yöneticisi'dir.
Ardından, kullanıcı UPN'sini ve rol adlarını doldurun ve şu komutları çalıştırın:
$userUPN="<user UPN>"
$roleName="<role name>"
$role = Get-MgDirectoryRole | Where-Object {$_.displayName -eq $roleName}
if ($role -eq $null) {
$roleTemplate = (Get-MgDirectoryRoleTemplate | Where-Object {$_.displayName -eq $roleName}).id
New-MgDirectoryRole -DisplayName $roleName -RoleTemplateId $roleTemplate
$role = Get-MgDirectoryRole | Where-Object {$_.displayName -eq $roleName}
}
$userId = (Get-MgUser -Filter "userPrincipalName eq '$userUPN'").Id
$newRoleMember =@{
"@odata.id"= "https://graph.microsoft.com/v1.0/users/$userId"
}
New-MgDirectoryRoleMemberByRef -DirectoryRoleId $role.Id -BodyParameter $newRoleMember
SharePoint Hizmet Yöneticisi rolünü hesaba atayan tamamlanmış bir komut kümesi örneği aşağıda verilmiştir belindan@contoso.com :
$userUPN="adelev@contoso.com"
$roleName="Exchange Administrator"
$role = Get-MgDirectoryRole | Where-Object {$_.displayName -eq $roleName}
if ($role -eq $null) {
$roleTemplate = (Get-MgDirectoryRoleTemplate | Where-Object {$_.displayName -eq $roleName}).id
New-MgDirectoryRole -DisplayName $roleName -RoleTemplateId $roleTemplate
$role = Get-MgDirectoryRole | Where-Object {$_.displayName -eq $roleName}
}
$userId = (Get-MgUser -Filter "userPrincipalName eq '$userUPN'").Id
$newRoleMember =@{
"@odata.id"= "https://graph.microsoft.com/v1.0/users/$userId"
}
New-MgDirectoryRoleMemberByRef -DirectoryRoleId $role.Id -BodyParameter $newRoleMember
Belirli bir yönetici rolüne ait kullanıcı kimliklerinin listesini görüntülemek için bu komutları kullanın.
$roleName="<role name>"
Connect-MgGraph -Scopes "Directory.Read.All"
Get-MgDirectoryRole | Where-Object { $_.DisplayName -eq $roleName } | ForEach-Object { Get-MgDirectoryRoleMember -DirectoryRoleId $_.Id }
Ayrıca bkz.
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin