Poniżej przedstawiono ustawienia umożliwiające dodanie tego warunku przy użyciu witryny Azure Portal i edytora warunków.
Aby wybrać zarówno akcje dodawania, jak i usuwania przypisania roli, należy dodać dwa warunki. Należy dodać dwa warunki, ponieważ źródło atrybutów jest inne dla każdej akcji. Jeśli spróbujesz kierować obie akcje w tym samym warunku, nie będzie można dodać wyrażenia. Aby uzyskać więcej informacji, zobacz Objaw — brak dostępnych opcji błędu.
Przykład: ograniczenia ról i typów podmiotów zabezpieczeń
Ten warunek umożliwia delegatowi dodawanie lub usuwanie przypisań ról tylko dla ról Współautor kopii zapasowej lub Czytelnik kopii zapasowych. Ponadto pełnomocnik może przypisać te role tylko do podmiotów zabezpieczeń typu użytkownik lub grupa.
Ten warunek należy dodać do wszystkich przypisań ról dla delegata, które obejmują następujące akcje.
Poniżej przedstawiono ustawienia umożliwiające dodanie tego warunku przy użyciu witryny Azure Portal i edytora warunków.
Aby wybrać zarówno akcje dodawania, jak i usuwania przypisania roli, należy dodać dwa warunki. Należy dodać dwa warunki, ponieważ źródło atrybutów jest inne dla każdej akcji. Jeśli spróbujesz kierować obie akcje w tym samym warunku, nie będzie można dodać wyrażenia. Aby uzyskać więcej informacji, zobacz Objaw — brak dostępnych opcji błędu.
(
(
!(ActionMatches{'Microsoft.Authorization/roleAssignments/write'})
)
OR
(
@Request[Microsoft.Authorization/roleAssignments:RoleDefinitionId] ForAnyOfAnyValues:GuidEquals {5e467623-bb1f-42f4-a55d-6e525e11384b, a795c7a0-d4a2-40c1-ae25-d81f01202912}
AND
@Request[Microsoft.Authorization/roleAssignments:PrincipalType] ForAnyOfAnyValues:StringEqualsIgnoreCase {'User', 'Group'}
)
)
AND
(
(
!(ActionMatches{'Microsoft.Authorization/roleAssignments/delete'})
)
OR
(
@Resource[Microsoft.Authorization/roleAssignments:RoleDefinitionId] ForAnyOfAnyValues:GuidEquals {5e467623-bb1f-42f4-a55d-6e525e11384b, a795c7a0-d4a2-40c1-ae25-d81f01202912}
AND
@Resource[Microsoft.Authorization/roleAssignments:PrincipalType] ForAnyOfAnyValues:StringEqualsIgnoreCase {'User', 'Group'}
)
)
Poniżej przedstawiono sposób dodawania tego warunku przy użyciu programu Azure PowerShell.
$roleDefinitionId = "f58310d9-a9f6-439a-9e8d-f62e7b41a168"
$principalId = "<principalId>"
$scope = "/subscriptions/<subscriptionId>"
$condition = "((!(ActionMatches{'Microsoft.Authorization/roleAssignments/write'})) OR (@Request[Microsoft.Authorization/roleAssignments:RoleDefinitionId] ForAnyOfAnyValues:GuidEquals {5e467623-bb1f-42f4-a55d-6e525e11384b, a795c7a0-d4a2-40c1-ae25-d81f01202912} AND @Request[Microsoft.Authorization/roleAssignments:PrincipalType] ForAnyOfAnyValues:StringEqualsIgnoreCase {'User', 'Group'})) AND ((!(ActionMatches{'Microsoft.Authorization/roleAssignments/delete'})) OR (@Resource[Microsoft.Authorization/roleAssignments:RoleDefinitionId] ForAnyOfAnyValues:GuidEquals {5e467623-bb1f-42f4-a55d-6e525e11384b, a795c7a0-d4a2-40c1-ae25-d81f01202912} AND @Resource[Microsoft.Authorization/roleAssignments:PrincipalType] ForAnyOfAnyValues:StringEqualsIgnoreCase {'User', 'Group'}))"
$conditionVersion = "2.0"
New-AzRoleAssignment -ObjectId $principalId -Scope $scope -RoleDefinitionId $roleDefinitionId -Condition $condition -ConditionVersion $conditionVersion
Przykład: ograniczenia ról i określonych grup
Ten warunek umożliwia delegatowi dodawanie lub usuwanie przypisań ról tylko dla ról Współautor kopii zapasowej lub Czytelnik kopii zapasowych. Ponadto pełnomocnik może przypisać te role tylko do określonych grup o nazwie Marketing (28c35fea-2099-4cf5-8ad9-473547bc9423) lub Sales (86951b8b-723a-407b-a74a-1bca3f0c95d0).
Ten warunek należy dodać do wszystkich przypisań ról dla delegata, które obejmują następujące akcje.
Poniżej przedstawiono ustawienia umożliwiające dodanie tego warunku przy użyciu witryny Azure Portal i edytora warunków.
Aby wybrać zarówno akcje dodawania, jak i usuwania przypisania roli, należy dodać dwa warunki. Należy dodać dwa warunki, ponieważ źródło atrybutów jest inne dla każdej akcji. Jeśli spróbujesz kierować obie akcje w tym samym warunku, nie będzie można dodać wyrażenia. Aby uzyskać więcej informacji, zobacz Objaw — brak dostępnych opcji błędu.
Ten warunek umożliwia delegatowi dodawanie lub usuwanie przypisań ról tylko dla ról logowania Administracja istratora maszyny wirtualnej lub logowania użytkownika maszyny wirtualnej. Ponadto pełnomocnik może przypisać te role tylko do określonego użytkownika o nazwie Dara (ea585310-c95c-4a68-af22-49af4363bbb1).
Ten warunek jest przydatny, gdy chcesz zezwolić delegatowi na przypisanie roli logowania maszyny wirtualnej do siebie dla właśnie utworzonej maszyny wirtualnej.
Ten warunek należy dodać do wszystkich przypisań ról dla delegata, które obejmują następujące akcje.
Poniżej przedstawiono ustawienia umożliwiające dodanie tego warunku przy użyciu witryny Azure Portal i edytora warunków.
Aby wybrać zarówno akcje dodawania, jak i usuwania przypisania roli, należy dodać dwa warunki. Należy dodać dwa warunki, ponieważ źródło atrybutów jest inne dla każdej akcji. Jeśli spróbujesz kierować obie akcje w tym samym warunku, nie będzie można dodać wyrażenia. Aby uzyskać więcej informacji, zobacz Objaw — brak dostępnych opcji błędu.
Ten warunek jest przydatny, gdy chcesz zezwolić delegatowi na przypisanie ról autoryzacji płaszczyzny danych klastra usługi Azure Kubernetes Service (AKS) do siebie dla właśnie utworzonego klastra.
Ten warunek należy dodać do wszystkich przypisań ról dla delegata, które obejmują następujące akcje.
Poniżej przedstawiono ustawienia umożliwiające dodanie tego warunku przy użyciu witryny Azure Portal i edytora warunków.
Aby wybrać zarówno akcje dodawania, jak i usuwania przypisania roli, należy dodać dwa warunki. Należy dodać dwa warunki, ponieważ źródło atrybutów jest inne dla każdej akcji. Jeśli spróbujesz kierować obie akcje w tym samym warunku, nie będzie można dodać wyrażenia. Aby uzyskać więcej informacji, zobacz Objaw — brak dostępnych opcji błędu.
(
(
!(ActionMatches{'Microsoft.Authorization/roleAssignments/write'})
)
OR
(
@Request[Microsoft.Authorization/roleAssignments:RoleDefinitionId] ForAnyOfAnyValues:GuidEquals {3498e952-d568-435e-9b2c-8d77e338d7f7, b1ff04bb-8a4e-4dc4-8eb5-8693973ce19b, 7f6c6a51-bcf8-42ba-9220-52d62157d7db, a7ffa36f-339b-4b5c-8bdf-e2c188b2c0eb}
AND
@Request[Microsoft.Authorization/roleAssignments:PrincipalId] ForAnyOfAnyValues:GuidEquals {ea585310-c95c-4a68-af22-49af4363bbb1}
)
)
AND
(
(
!(ActionMatches{'Microsoft.Authorization/roleAssignments/delete'})
)
OR
(
@Resource[Microsoft.Authorization/roleAssignments:RoleDefinitionId] ForAnyOfAnyValues:GuidEquals {3498e952-d568-435e-9b2c-8d77e338d7f7, b1ff04bb-8a4e-4dc4-8eb5-8693973ce19b, 7f6c6a51-bcf8-42ba-9220-52d62157d7db, a7ffa36f-339b-4b5c-8bdf-e2c188b2c0eb}
AND
@Resource[Microsoft.Authorization/roleAssignments:PrincipalId] ForAnyOfAnyValues:GuidEquals {ea585310-c95c-4a68-af22-49af4363bbb1}
)
)
Poniżej przedstawiono sposób dodawania tego warunku przy użyciu programu Azure PowerShell.
$roleDefinitionId = "f58310d9-a9f6-439a-9e8d-f62e7b41a168"
$principalId = "<principalId>"
$scope = "/subscriptions/<subscriptionId>"
$condition = "((!(ActionMatches{'Microsoft.Authorization/roleAssignments/write'})) OR (@Request[Microsoft.Authorization/roleAssignments:RoleDefinitionId] ForAnyOfAnyValues:GuidEquals {3498e952-d568-435e-9b2c-8d77e338d7f7, b1ff04bb-8a4e-4dc4-8eb5-8693973ce19b, 7f6c6a51-bcf8-42ba-9220-52d62157d7db, a7ffa36f-339b-4b5c-8bdf-e2c188b2c0eb} AND @Request[Microsoft.Authorization/roleAssignments:PrincipalId] ForAnyOfAnyValues:GuidEquals {ea585310-c95c-4a68-af22-49af4363bbb1})) AND ((!(ActionMatches{'Microsoft.Authorization/roleAssignments/delete'})) OR (@Resource[Microsoft.Authorization/roleAssignments:RoleDefinitionId] ForAnyOfAnyValues:GuidEquals {3498e952-d568-435e-9b2c-8d77e338d7f7, b1ff04bb-8a4e-4dc4-8eb5-8693973ce19b, 7f6c6a51-bcf8-42ba-9220-52d62157d7db, a7ffa36f-339b-4b5c-8bdf-e2c188b2c0eb} AND @Resource[Microsoft.Authorization/roleAssignments:PrincipalId] ForAnyOfAnyValues:GuidEquals {ea585310-c95c-4a68-af22-49af4363bbb1}))"
$conditionVersion = "2.0"
New-AzRoleAssignment -ObjectId $principalId -Scope $scope -RoleDefinitionId $roleDefinitionId -Condition $condition -ConditionVersion $conditionVersion
Przykład: ograniczanie zarządzania usługą ACR
Ten warunek umożliwia delegatowi dodawanie lub usuwanie przypisań ról tylko dla roli AcrPull . Ponadto pełnomocnik może przypisywać te role tylko do jednostek typu jednostki usługi.
Ten warunek jest przydatny, gdy chcesz zezwolić deweloperowi na przypisanie roli AcrPull do tożsamości zarządzanej, aby można było ściągać obrazy z usługi Azure Container Registry (ACR).
Ten warunek należy dodać do wszystkich przypisań ról dla delegata, które obejmują następujące akcje.
Poniżej przedstawiono ustawienia umożliwiające dodanie tego warunku przy użyciu witryny Azure Portal i edytora warunków.
Aby wybrać zarówno akcje dodawania, jak i usuwania przypisania roli, należy dodać dwa warunki. Należy dodać dwa warunki, ponieważ źródło atrybutów jest inne dla każdej akcji. Jeśli spróbujesz kierować obie akcje w tym samym warunku, nie będzie można dodać wyrażenia. Aby uzyskać więcej informacji, zobacz Objaw — brak dostępnych opcji błędu.
(
(
!(ActionMatches{'Microsoft.Authorization/roleAssignments/write'})
)
OR
(
@Request[Microsoft.Authorization/roleAssignments:RoleDefinitionId] ForAnyOfAnyValues:GuidEquals {7f951dda-4ed3-4680-a7ca-43fe172d538d}
AND
@Request[Microsoft.Authorization/roleAssignments:PrincipalType] ForAnyOfAnyValues:StringEqualsIgnoreCase {'ServicePrincipal'}
)
)
AND
(
(
!(ActionMatches{'Microsoft.Authorization/roleAssignments/delete'})
)
OR
(
@Resource[Microsoft.Authorization/roleAssignments:RoleDefinitionId] ForAnyOfAnyValues:GuidEquals {7f951dda-4ed3-4680-a7ca-43fe172d538d}
AND
@Resource[Microsoft.Authorization/roleAssignments:PrincipalType] ForAnyOfAnyValues:StringEqualsIgnoreCase {'ServicePrincipal'}
)
)
Poniżej przedstawiono sposób dodawania tego warunku przy użyciu programu Azure PowerShell.
$roleDefinitionId = "f58310d9-a9f6-439a-9e8d-f62e7b41a168"
$principalId = "<principalId>"
$scope = "/subscriptions/<subscriptionId>"
$condition = "((!(ActionMatches{'Microsoft.Authorization/roleAssignments/write'})) OR (@Request[Microsoft.Authorization/roleAssignments:RoleDefinitionId] ForAnyOfAnyValues:GuidEquals {7f951dda-4ed3-4680-a7ca-43fe172d538d} AND @Request[Microsoft.Authorization/roleAssignments:PrincipalType] ForAnyOfAnyValues:StringEqualsIgnoreCase {'ServicePrincipal'})) AND ((!(ActionMatches{'Microsoft.Authorization/roleAssignments/delete'})) OR (@Resource[Microsoft.Authorization/roleAssignments:RoleDefinitionId] ForAnyOfAnyValues:GuidEquals {7f951dda-4ed3-4680-a7ca-43fe172d538d} AND @Resource[Microsoft.Authorization/roleAssignments:PrincipalType] ForAnyOfAnyValues:StringEqualsIgnoreCase {'ServicePrincipal'}))"
$conditionVersion = "2.0"
New-AzRoleAssignment -ObjectId $principalId -Scope $scope -RoleDefinitionId $roleDefinitionId -Condition $condition -ConditionVersion $conditionVersion
Przykład: Ograniczenie dodawania przypisań ról
Ten warunek umożliwia delegatowi dodawanie tylko przypisań ról dla ról Współautor kopii zapasowej lub Czytelnik kopii zapasowych. Pełnomocnik może usunąć wszystkie przypisania ról.
Ten warunek należy dodać do wszystkich przypisań ról dla pełnomocnika, które obejmują następującą akcję.
Ten warunek jest przydatny, gdy chcesz zezwolić delegatowi na przypisywanie większości ról, ale nie zezwalaj delegatowi na przypisywanie ról innym osobom.
Uwaga
Ten warunek należy stosować ostrożnie. Jeśli zostanie później dodana nowa wbudowana lub niestandardowa rola, która zawiera uprawnienie do tworzenia przypisań ról, ten warunek nie uniemożliwi delegatowi przypisywania ról. Warunek musi zostać zaktualizowany, aby uwzględnić nową wbudowaną lub niestandardową rolę.
Ten warunek należy dodać do wszystkich przypisań ról dla delegata, które obejmują następujące akcje.
Poniżej przedstawiono ustawienia umożliwiające dodanie tego warunku przy użyciu witryny Azure Portal i edytora warunków.
Aby wybrać zarówno akcje dodawania, jak i usuwania przypisania roli, należy dodać dwa warunki. Należy dodać dwa warunki, ponieważ źródło atrybutów jest inne dla każdej akcji. Jeśli spróbujesz kierować obie akcje w tym samym warunku, nie będzie można dodać wyrażenia. Aby uzyskać więcej informacji, zobacz Objaw — brak dostępnych opcji błędu.