Přiřazení vlastních rolí s oborem prostředků pomocí PowerShellu v ID Microsoft Entra
Tento článek popisuje, jak vytvořit přiřazení role v oboru celé organizace v Microsoft Entra ID. Přiřazení role na úrovni celé organizace poskytuje přístup napříč celou organizací Microsoft Entra. Pokud chcete vytvořit přiřazení role s oborem jednoho prostředku Microsoft Entra, přečtěte si téma Vytvoření a přiřazení vlastní role v Microsoft Entra ID. Tento článek používá modul Microsoft Graph PowerShell SDK .
Další informace o rolích Microsoft Entra naleznete v tématu Předdefinované role Microsoft Entra.
Požadavky
- Licence Microsoft Entra ID P1 nebo P2
- Správce privilegovaných rolí
- Modul Microsoft Graph PowerShellu při použití PowerShellu
Další informace najdete v tématu Požadavky pro použití PowerShellu nebo Graph Exploreru.
Přiřazení role adresáře uživateli nebo instančnímu objektu s oborem prostředků
Přihlaste se spuštěním příkazu
Connect-MgGraph
.Vytvořte novou roli pomocí následujícího skriptu PowerShellu.
## Assign a role to a user or service principal with resource scope # Get the user and role definition you want to link $user = Get-MgUser -Filter "UserPrincipalName eq 'cburl@f128.info'" $roleDefinition = Get-MgRoleManagementDirectoryRoleDefinition -Filter "DisplayName eq 'Application Support Administrator'" # Get app registration and construct resource scope for assignment. $appRegistration = Get-MgApplication -Filter "displayName eq 'f/128 Filter Photos'" $directoryScope = '/' + $appRegistration.Id # Create a scoped role assignment $roleAssignment = New-MgRoleManagementDirectoryRoleAssignment -DirectoryScopeId $directoryScope ` -RoleDefinitionId $roleDefinition.Id -PrincipalId $user.Id
Pokud chcete roli přiřadit k instančnímu objektu místo uživatele, použijte rutinu Get-MgServicePrincipal .
Definice rolí
Objekty definice role obsahují definici předdefinované nebo vlastní role spolu s oprávněními udělenými přiřazením této role. Tento prostředek zobrazí jak vlastní definice rolí, tak předdefinované role adresáře (které se zobrazují v ekvivalentním formuláři roleDefinition). Informace o maximálním počtu vlastních rolí, které lze vytvořit v organizaci Microsoft Entra, naleznete v tématu Omezení a omezení služby Microsoft Entra.
Vytvoření definice role
# Basic information
$description = "Can manage credentials of application registrations"
$displayName = "Application Registration Credential Administrator"
$templateId = (New-Guid).Guid
# Set of actions to include
$rolePermissions = @{
"allowedResourceActions" = @(
"microsoft.directory/applications/standard/read",
"microsoft.directory/applications/credentials/update"
)
}
# Create new custom directory role
$customAdmin = New-MgRoleManagementDirectoryRoleDefinition -RolePermissions $rolePermissions `
-DisplayName $displayName -Description $description -TemplateId $templateId -IsEnabled:$true
Čtení a výpis definic rolí
# Get all role definitions
Get-MgRoleManagementDirectoryRoleDefinition
# Get single role definition by ID
Get-MgRoleManagementDirectoryRoleDefinition -UnifiedRoleDefinitionId 00000000-0000-0000-0000-000000000000
# Get single role definition by templateId
Get-MgRoleManagementDirectoryRoleDefinition -Filter "TemplateId eq 'c4e39bd9-1100-46d3-8c65-fb160da0071f'"
Aktualizace definice role
# Update role definition
# This works for any writable property on role definition. You can replace display name with other
# valid properties.
Update-MgRoleManagementDirectoryRoleDefinition -UnifiedRoleDefinitionId c4e39bd9-1100-46d3-8c65-fb160da0071f `
-DisplayName "Updated DisplayName"
Odstranění definice role
# Delete role definition
Remove-MgRoleManagementDirectoryRoleDefinition -UnifiedRoleDefinitionId c4e39bd9-1100-46d3-8c65-fb160da0071f
Přiřazení rolí
Přiřazení rolí obsahují informace propojující daný objekt zabezpečení (instanční objekt uživatele nebo aplikace) s definicí role. V případě potřeby můžete přidat obor jednoho prostředku Microsoft Entra pro přiřazená oprávnění. Omezení rozsahu přiřazení role je podporováno pro předdefinované a vlastní role.
Vytvoření přiřazení role
# Get the user and role definition you want to link
$user = Get-MgUser -Filter "userPrincipalName eq 'cburl@f128.info'"
$roleDefinition = Get-MgRoleManagementDirectoryRoleDefinition -Filter "DisplayName eq 'Application Support Administrator'"
# Get app registration and construct resource scope for assignment.
$appRegistration = Get-MgApplication -Filter "displayName eq 'f/128 Filter Photos'"
$directoryScope = '/' + $appRegistration.Id
# Create a scoped role assignment
$roleAssignment = New-MgRoleManagementDirectoryRoleAssignment -DirectoryScopeId $directoryScope `
-RoleDefinitionId $roleDefinition.Id -PrincipalId $user.Id
Čtení a výpis přiřazení rolí
# Get role assignments for a given principal
Get-MgRoleManagementDirectoryRoleAssignment -Filter "PrincipalId eq 'aaaaaaaa-bbbb-cccc-1111-222222222222'"
# Get role assignments for a given role definition
Get-MgRoleManagementDirectoryRoleAssignment -Filter "RoleDefinitionId eq '00000000-0000-0000-0000-000000000000'"
Odebrání přiřazení role
# Remove role assignment
Remove-MgRoleManagementDirectoryRoleAssignment -UnifiedRoleAssignmentId 'aB1cD2eF3gH4iJ5kL6-mN7oP8qR-1'
Další kroky
- Sdílejte s námi na fóru pro správu Microsoft Entra
- Další informace o rolích a přiřazení rolí správce Microsoft Entra najdete v tématu Přiřazení rolí správce.
- Výchozí uživatelská oprávnění najdete v porovnání výchozích uživatelských oprávnění hostů a členů.
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro