In diesem Artikel werden Beispiele für das Delegieren der Azure-Rollenzuweisungsverwaltung an andere Benutzer mit Bedingungen aufgeführt.
Voraussetzungen
Informationen zu den Voraussetzungen für das Hinzufügen oder Bearbeiten von Rollenzuweisungsbedingungen finden Sie unter Voraussetzungen für Bedingungen.
Beispiel: Einschränken von Rollen
Mit dieser Bedingung kann ein Delegat nur Rollenzuweisungen für die Rollen Backup-Mitwirkender oder Backup-Leser hinzufügen oder entfernen.
Sie müssen diese Bedingung allen Rollenzuweisungen für die Stellvertretung hinzufügen, die die folgenden Aktionen enthalten.
Microsoft.Authorization/roleAssignments/write
Microsoft.Authorization/roleAssignments/delete
Hier sind die Einstellungen zum Hinzufügen dieser Bedingung mithilfe des Azure-Portals und einer Bedingungsvorlage.
Hier sind die Einstellungen zum Hinzufügen dieser Bedingung mithilfe des Azure-Portals und des Bedingungs-Editors.
Um sowohl die Aktionen zum Hinzufügen als auch zum Entfernen von Rollen zu verwalten, beachten Sie, dass Sie zwei Bedingungen hinzufügen müssen. Sie müssen zwei Bedingungen hinzufügen, da die Attributquelle für jede Aktion unterschiedlich ist. Wenn Sie versuchen, beide Aktionen in derselben Bedingung als Ziel festzulegen, können Sie keinen Ausdruck hinzufügen. Weitere Informationen finden Sie unter Symptom – Keine verfügbaren Optionen.
(
(
!(ActionMatches{'Microsoft.Authorization/roleAssignments/write'})
)
OR
(
@Request[Microsoft.Authorization/roleAssignments:RoleDefinitionId] ForAnyOfAnyValues:GuidEquals {5e467623-bb1f-42f4-a55d-6e525e11384b, a795c7a0-d4a2-40c1-ae25-d81f01202912}
)
)
AND
(
(
!(ActionMatches{'Microsoft.Authorization/roleAssignments/delete'})
)
OR
(
@Resource[Microsoft.Authorization/roleAssignments:RoleDefinitionId] ForAnyOfAnyValues:GuidEquals {5e467623-bb1f-42f4-a55d-6e525e11384b, a795c7a0-d4a2-40c1-ae25-d81f01202912}
)
)
Hier erfahren Sie, wie Sie diese Bedingung mithilfe von Azure PowerShell hinzufügen.
$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 ((!(ActionMatches{'Microsoft.Authorization/roleAssignments/delete'})) OR (@Resource[Microsoft.Authorization/roleAssignments:RoleDefinitionId] ForAnyOfAnyValues:GuidEquals {5e467623-bb1f-42f4-a55d-6e525e11384b, a795c7a0-d4a2-40c1-ae25-d81f01202912}))"
$conditionVersion = "2.0"
New-AzRoleAssignment -ObjectId $principalId -Scope $scope -RoleDefinitionId $roleDefinitionId -Condition $condition -ConditionVersion $conditionVersion
Beispiel: Einschränken von Rollen und Prinzipaltypen
Mit dieser Bedingung kann ein Delegat nur Rollenzuweisungen für die Rollen Backup-Mitwirkender oder Backup-Leser hinzufügen oder entfernen. Außerdem kann der Delegat diese Rollen nur Prinzipalen des Typs 'Benutzer' oder 'Gruppe' zuweisen.
Sie müssen diese Bedingung allen Rollenzuweisungen für die Stellvertretung hinzufügen, die die folgenden Aktionen enthalten.
Microsoft.Authorization/roleAssignments/write
Microsoft.Authorization/roleAssignments/delete
Diagramm der Rollenzuweisungen für eingeschränkte Rollen des Backup-Mitwirkenden oder Backup-Lesers und Benutzer- oder Gruppenprinzipaltypen.
Hier sind die Einstellungen zum Hinzufügen dieser Bedingung mithilfe des Azure-Portals und einer Bedingungsvorlage.
Hier sind die Einstellungen zum Hinzufügen dieser Bedingung mithilfe des Azure-Portals und des Bedingungs-Editors.
Um sowohl die Aktionen zum Hinzufügen als auch zum Entfernen von Rollenzuweisungen abzielen zu können, beachten Sie, dass Sie zwei Bedingungen hinzufügen müssen. Sie müssen zwei Bedingungen hinzufügen, da die Attributquelle für jede Aktion unterschiedlich ist. Wenn Sie versuchen, beide Aktionen in derselben Bedingung als Ziel festzulegen, können Sie keinen Ausdruck hinzufügen. Weitere Informationen finden Sie unter Symptom – Keine verfügbaren Optionen.
(
(
!(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'}
)
)
Hier erfahren Sie, wie Sie diese Bedingung mithilfe von Azure PowerShell hinzufügen.
$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
Beispiel: Einschränken von Rollen und bestimmten Gruppen
Mit dieser Bedingung kann ein Delegat nur Rollenzuweisungen für die Rollen Backup-Mitwirkender oder Backup-Leser hinzufügen oder entfernen. Außerdem kann der Stellvertreter diese Rollen nur bestimmten Gruppen mit dem Namen Marketing (28c35fea-2099-4cf5-8ad9-473547bc9423) oder Sales (86951b8b-723a-407b-a74a-1bca3f0c95d0) zuweisen.
Sie müssen diese Bedingung allen Rollenzuweisungen für die Stellvertretung hinzufügen, die die folgenden Aktionen enthalten.
Microsoft.Authorization/roleAssignments/write
Microsoft.Authorization/roleAssignments/delete
Hier sind die Einstellungen zum Hinzufügen dieser Bedingung mithilfe des Azure-Portals und einer Bedingungsvorlage.
Hier sind die Einstellungen zum Hinzufügen dieser Bedingung mithilfe des Azure-Portals und des Bedingungs-Editors.
Um sowohl die Aktionen zum Hinzufügen als auch zum Entfernen von Rollenzuweisungen abzielen zu können, beachten Sie, dass Sie zwei Bedingungen hinzufügen müssen. Sie müssen zwei Bedingungen hinzufügen, da die Attributquelle für jede Aktion unterschiedlich ist. Wenn Sie versuchen, beide Aktionen in derselben Bedingung als Ziel festzulegen, können Sie keinen Ausdruck hinzufügen. Weitere Informationen finden Sie unter Symptom – Keine verfügbaren Optionen.
(
(
!(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:PrincipalId] ForAnyOfAnyValues:GuidEquals {28c35fea-2099-4cf5-8ad9-473547bc9423, 86951b8b-723a-407b-a74a-1bca3f0c95d0}
)
)
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:PrincipalId] ForAnyOfAnyValues:GuidEquals {28c35fea-2099-4cf5-8ad9-473547bc9423, 86951b8b-723a-407b-a74a-1bca3f0c95d0}
)
)
Hier erfahren Sie, wie Sie diese Bedingung mithilfe von Azure PowerShell hinzufügen.
$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:PrincipalId] ForAnyOfAnyValues:GuidEquals {28c35fea-2099-4cf5-8ad9-473547bc9423, 86951b8b-723a-407b-a74a-1bca3f0c95d0})) 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:PrincipalId] ForAnyOfAnyValues:GuidEquals {28c35fea-2099-4cf5-8ad9-473547bc9423, 86951b8b-723a-407b-a74a-1bca3f0c95d0}))"
$conditionVersion = "2.0"
New-AzRoleAssignment -ObjectId $principalId -Scope $scope -RoleDefinitionId $roleDefinitionId -Condition $condition -ConditionVersion $conditionVersion
Beispiel: Einschränken der Verwaltung virtueller Computer
Mit dieser Bedingung kann ein Delegat nur Rollenzuweisungen für die Administratoranmeldung des virtuellen Computers oder die Benutzeranmeldungsrollen des virtuellen Computers hinzufügen oder entfernen. Außerdem kann der Stellvertreter diese Rollen nur einem bestimmten Benutzer namens Dara zuweisen (ea585310-c95c-4a68-af22-49af4363bbb1).
Diese Bedingung ist nützlich, wenn Sie es einem Delegierten erlauben möchten, sich selbst eine Anmelderolle für eine virtuelle Maschine zuzuweisen, die er gerade erstellt hat.
Sie müssen diese Bedingung allen Rollenzuweisungen für die Stellvertretung hinzufügen, die die folgenden Aktionen enthalten.
Microsoft.Authorization/roleAssignments/write
Microsoft.Authorization/roleAssignments/delete
Hier sind die Einstellungen zum Hinzufügen dieser Bedingung mithilfe des Azure-Portals und einer Bedingungsvorlage.
Hier sind die Einstellungen zum Hinzufügen dieser Bedingung mithilfe des Azure-Portals und des Bedingungs-Editors.
Um sowohl die Aktionen zum Hinzufügen als auch zum Entfernen von Rollenzuweisungen abzielen zu können, beachten Sie, dass Sie zwei Bedingungen hinzufügen müssen. Sie müssen zwei Bedingungen hinzufügen, da die Attributquelle für jede Aktion unterschiedlich ist. Wenn Sie versuchen, beide Aktionen in derselben Bedingung als Ziel festzulegen, können Sie keinen Ausdruck hinzufügen. Weitere Informationen finden Sie unter Symptom – Keine verfügbaren Optionen.
(
(
!(ActionMatches{'Microsoft.Authorization/roleAssignments/write'})
)
OR
(
@Request[Microsoft.Authorization/roleAssignments:RoleDefinitionId] ForAnyOfAnyValues:GuidEquals {1c0163c0-47e6-4577-8991-ea5c82e286e4, fb879df8-f326-4884-b1cf-06f3ad86be52}
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 {1c0163c0-47e6-4577-8991-ea5c82e286e4, fb879df8-f326-4884-b1cf-06f3ad86be52}
AND
@Resource[Microsoft.Authorization/roleAssignments:PrincipalId] ForAnyOfAnyValues:GuidEquals {ea585310-c95c-4a68-af22-49af4363bbb1}
)
)
Hier erfahren Sie, wie Sie diese Bedingung mithilfe von Azure PowerShell hinzufügen.
$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 {1c0163c0-47e6-4577-8991-ea5c82e286e4, fb879df8-f326-4884-b1cf-06f3ad86be52} 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 {1c0163c0-47e6-4577-8991-ea5c82e286e4, fb879df8-f326-4884-b1cf-06f3ad86be52} 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
Beispiel: Einschränken der AKS-Clusterverwaltung
Mit dieser Bedingung kann ein Delegat nur Rollenzuweisungen für den Azure Kubernetes Service RBAC Admin, Azure Kubernetes Service RBAC Cluster Admin, Azure Kubernetes Service RBAC Reader oder Azure Kubernetes Service RBAC Writer-Rollen hinzufügen oder entfernen. Außerdem kann der Stellvertreter diese Rollen nur einem bestimmten Benutzer namens Dara zuweisen (ea585310-c95c-4a68-af22-49af4363bbb1).
Diese Bedingung ist nützlich, wenn Sie zulassen möchten, dass eine Stellvertretung Azure Kubernetes Service (AKS)-Clusterdatenebenenautorisierungsrollen sich selbst für einen soeben erstellten Cluster zuweisen kann.
Sie müssen diese Bedingung allen Rollenzuweisungen für die Stellvertretung hinzufügen, die die folgenden Aktionen enthalten.
Microsoft.Authorization/roleAssignments/write
Microsoft.Authorization/roleAssignments/delete
Hier sind die Einstellungen zum Hinzufügen dieser Bedingung mithilfe des Azure-Portals und einer Bedingungsvorlage.
Hier sind die Einstellungen zum Hinzufügen dieser Bedingung mithilfe des Azure-Portals und des Bedingungs-Editors.
Um sowohl die Aktionen zum Hinzufügen als auch zum Entfernen von Rollenzuweisungen abzielen zu können, beachten Sie, dass Sie zwei Bedingungen hinzufügen müssen. Sie müssen zwei Bedingungen hinzufügen, da die Attributquelle für jede Aktion unterschiedlich ist. Wenn Sie versuchen, beide Aktionen in derselben Bedingung als Ziel festzulegen, können Sie keinen Ausdruck hinzufügen. Weitere Informationen finden Sie unter Symptom – Keine verfügbaren Optionen.
(
(
!(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}
)
)
Hier erfahren Sie, wie Sie diese Bedingung mithilfe von Azure PowerShell hinzufügen.
$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
Beispiel: Einschränken der ACR-Verwaltung
Mit dieser Bedingung kann ein Delegat nur Rollenzuweisungen für die AcrPull-Rolle hinzufügen oder entfernen. Außerdem kann der Delegierte diese Rollen nur Prinzipalen des Typs Dienstprinzipal zuweisen.
Diese Bedingung ist nützlich, wenn Sie es einem Entwickler ermöglichen möchten, die AcrPull-Rolle einer verwalteten Identität selbst zuzuweisen, damit bilder aus der Azure Container Registry (ACR) abgerufen werden können.
Sie müssen diese Bedingung allen Rollenzuweisungen für die Stellvertretung hinzufügen, die die folgenden Aktionen enthalten.
Microsoft.Authorization/roleAssignments/write
Microsoft.Authorization/roleAssignments/delete
Hier sind die Einstellungen zum Hinzufügen dieser Bedingung mithilfe des Azure-Portals und einer Bedingungsvorlage.
| Zustand |
Setting |
| Vorlage |
Einschränken von Rollen und Prinzipaltypen |
| Rollen |
AcrPull |
| Prinzipaltypen |
Dienstprinzipale |
Hier sind die Einstellungen zum Hinzufügen dieser Bedingung mithilfe des Azure-Portals und des Bedingungs-Editors.
Um sowohl die Aktionen zum Hinzufügen als auch zum Entfernen von Rollenzuweisungen abzielen zu können, beachten Sie, dass Sie zwei Bedingungen hinzufügen müssen. Sie müssen zwei Bedingungen hinzufügen, da die Attributquelle für jede Aktion unterschiedlich ist. Wenn Sie versuchen, beide Aktionen in derselben Bedingung als Ziel festzulegen, können Sie keinen Ausdruck hinzufügen. Weitere Informationen finden Sie unter Symptom – Keine verfügbaren Optionen.
(
(
!(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'}
)
)
Hier erfahren Sie, wie Sie diese Bedingung mithilfe von Azure PowerShell hinzufügen.
$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
Beispiel: Einschränken des Hinzufügens von Rollenzuweisungen
Mit dieser Bedingung kann ein Delegat nur Rollenzuweisungen für die Rollen Sicherungsmitwirkender oder Sicherungsleser hinzufügen. Der Delegat kann alle Rollenzuweisungen entfernen.
Sie müssen diese Bedingung allen Rollenzuweisungen für die Stellvertretung hinzufügen, die die folgende Aktion enthalten.
Microsoft.Authorization/roleAssignments/write
Diagramm, das das Hinzufügen und Entfernen von Rollenzuweisungen zeigt, die auf die Rollen "Backup Contributor" oder "Backup Reader" beschränkt sind.
Hier sind die Einstellungen zum Hinzufügen dieser Bedingung mithilfe des Azure-Portals und des Bedingungs-Editors.
(
(
!(ActionMatches{'Microsoft.Authorization/roleAssignments/write'})
)
OR
(
@Request[Microsoft.Authorization/roleAssignments:RoleDefinitionId] ForAnyOfAnyValues:GuidEquals {5e467623-bb1f-42f4-a55d-6e525e11384b, a795c7a0-d4a2-40c1-ae25-d81f01202912}
)
)
Hier erfahren Sie, wie Sie diese Bedingung mithilfe von Azure PowerShell hinzufügen.
$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}))"
$conditionVersion = "2.0"
New-AzRoleAssignment -ObjectId $principalId -Scope $scope -RoleDefinitionId $roleDefinitionId -Condition $condition -ConditionVersion $conditionVersion
Beispiel: Die meisten Rollen erlauben, aber anderen nicht erlauben, Rollen zuzuweisen.
Mit dieser Bedingung kann ein Delegat Rollenzuweisungen für alle Rollen hinzufügen oder entfernen, mit Ausnahme der Rollen "Besitzer", " Rollenbasierter Zugriffssteuerungsadministrator" und " Benutzerzugriffsadministrator ".This condition allows a delegate to add or remove role assignments for all roles except the Owner, Role Based Access Control Administrator, and User Access Administrator roles.
Diese Bedingung ist nützlich, wenn Sie zulassen möchten, dass eine Stellvertretung die meisten Rollen zuweist, aber nicht zulassen, dass andere Personen Rollen zuweisen können.
Hinweis
Diese Bedingung sollte mit Vorsicht verwendet werden. Wenn später eine neue integrierte oder benutzerdefinierte Rolle hinzugefügt wird, die die Berechtigung zum Erstellen von Rollenzuweisungen enthält, würde diese Bedingung nicht verhindern, dass der Stellvertreter Rollen zuweist. Die Bedingung muss aktualisiert werden, um die neue integrierte oder benutzerdefinierte Rolle einzuschließen.
Sie müssen diese Bedingung allen Rollenzuweisungen für die Stellvertretung hinzufügen, die die folgenden Aktionen enthalten.
Microsoft.Authorization/roleAssignments/write
Microsoft.Authorization/roleAssignments/delete
Hier sind die Einstellungen zum Hinzufügen dieser Bedingung mithilfe des Azure-Portals und einer Bedingungsvorlage.
Hier sind die Einstellungen zum Hinzufügen dieser Bedingung mithilfe des Azure-Portals und des Bedingungs-Editors.
Um sowohl die Aktionen zum Hinzufügen als auch zum Entfernen von Rollenzuweisungen abzielen zu können, beachten Sie, dass Sie zwei Bedingungen hinzufügen müssen. Sie müssen zwei Bedingungen hinzufügen, da die Attributquelle für jede Aktion unterschiedlich ist. Wenn Sie versuchen, beide Aktionen in derselben Bedingung als Ziel festzulegen, können Sie keinen Ausdruck hinzufügen. Weitere Informationen finden Sie unter Symptom – Keine verfügbaren Optionen.
(
(
!(ActionMatches{'Microsoft.Authorization/roleAssignments/write'})
)
OR
(
@Request[Microsoft.Authorization/roleAssignments:RoleDefinitionId] ForAnyOfAllValues:GuidNotEquals {8e3af657-a8ff-443c-a75c-2fe8c4bcb635, f58310d9-a9f6-439a-9e8d-f62e7b41a168, 18d7d88d-d35e-4fb5-a5c3-7773c20a72d9}
)
)
AND
(
(
!(ActionMatches{'Microsoft.Authorization/roleAssignments/delete'})
)
OR
(
@Resource[Microsoft.Authorization/roleAssignments:RoleDefinitionId] ForAnyOfAllValues:GuidNotEquals {8e3af657-a8ff-443c-a75c-2fe8c4bcb635, f58310d9-a9f6-439a-9e8d-f62e7b41a168, 18d7d88d-d35e-4fb5-a5c3-7773c20a72d9}
)
)
Hier erfahren Sie, wie Sie diese Bedingung mithilfe von Azure PowerShell hinzufügen.
$roleDefinitionId = "f58310d9-a9f6-439a-9e8d-f62e7b41a168"
$principalId = "<principalId>"
$scope = "/subscriptions/<subscriptionId>"
$condition = "((!(ActionMatches{'Microsoft.Authorization/roleAssignments/write'})) OR (@Request[Microsoft.Authorization/roleAssignments:RoleDefinitionId] ForAnyOfAllValues:GuidNotEquals {8e3af657-a8ff-443c-a75c-2fe8c4bcb635, f58310d9-a9f6-439a-9e8d-f62e7b41a168, 18d7d88d-d35e-4fb5-a5c3-7773c20a72d9})) AND ((!(ActionMatches{'Microsoft.Authorization/roleAssignments/delete'})) OR (@Resource[Microsoft.Authorization/roleAssignments:RoleDefinitionId] ForAnyOfAllValues:GuidNotEquals {8e3af657-a8ff-443c-a75c-2fe8c4bcb635, f58310d9-a9f6-439a-9e8d-f62e7b41a168, 18d7d88d-d35e-4fb5-a5c3-7773c20a72d9}))"
$conditionVersion = "2.0"
New-AzRoleAssignment -ObjectId $principalId -Scope $scope -RoleDefinitionId $roleDefinitionId -Condition $condition -ConditionVersion $conditionVersion
Nächste Schritte