Set-AzRoleDefinition
Upraví vlastní roli v Azure RBAC. Zadejte upravenou definici role buď jako soubor JSON, nebo jako PSRoleDefinition. Nejprve pomocí příkazu Get-AzRoleDefinition načtěte vlastní roli, kterou chcete upravit. Potom upravte vlastnosti, které chcete změnit. Nakonec pomocí tohoto příkazu uložte definici role.
Syntax
InputFileParameterSet
Set-AzRoleDefinition
-InputFile <String>
[-SkipClientSideScopeValidation]
[-DefaultProfile <IAzureContextContainer>]
[<CommonParameters>]
RoleDefinitionParameterSet
Set-AzRoleDefinition
-Role <PSRoleDefinition>
[-SkipClientSideScopeValidation]
[-DefaultProfile <IAzureContextContainer>]
[<CommonParameters>]
Description
Rutina Set-AzRoleDefinition aktualizuje existující vlastní roli v Azure Role-Based Access Control. Zadejte aktualizovanou definici role jako vstup příkazu jako soubor JSON nebo objekt PSRoleDefinition.
Definice role aktualizované vlastní role musí obsahovat:
- ID: jedinečný identifikátor definice role, která se má aktualizovat.
- Název: název vlastní role
- Popis: stručný popis role
- Oprávnění: pole objektů oprávnění obsahujících Akce a/nebo DataActions
- AssignableScopes: obory, ve kterých lze roli přiřadit
Každý objekt oprávnění v poli Oprávnění může obsahovat Akce, NotActions, DataActions, NotDataActions a volitelně Podmínky a ConditionVersion pro podmínky Attribute-Based Access Control (ABAC).
Important
Změnil se tvar JSON a tvar PSRoleDefinition-InputFile JSON. Oba -Role (PSRoleDefinition) a -InputFile (JSON) nyní používají Permissions pole objektů oprávnění místo zploštěné nejvyšší úrovně Actions, NotActions, DataActionsa NotDataActions vlastnosti. Skripty, které se předčítají do Get-AzRoleDefinition kanáluSet-AzRoleDefinition -Role, musí číst a upravovat akce a podmínky, $role.Permissions[n] a nikoli přímo na objektu role. Soubory JSON, které se používají s oprávněními -InputFile k vnoření do pole, musí mít podobně vnořená Permissions oprávnění.
Note
Rozhraní API Azure RBAC v současné době podporuje pouze jeden prvek v poli Oprávnění při aktualizaci vlastních rolí. I když datový model podporuje více položek oprávnění, operace aktualizace musí používat přesně jeden objekt oprávnění.
Příklady
Příklad 1: Aktualizace pomocí PSRoleDefinitionObject
$roleDef = Get-AzRoleDefinition "Contoso On-Call"
$roleDef.Permissions[0].Actions.Add("Microsoft.ClassicCompute/virtualmachines/start/action")
$roleDef.Description = "Can monitor all resources and start and restart virtual machines"
$roleDef.AssignableScopes = @("/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx", "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx")
Set-AzRoleDefinition -Role $roleDef
Příklad 2: Aktualizace pomocí souboru JSON
Set-AzRoleDefinition -InputFile C:\Temp\roleDefinition.json
Aktualizuje vlastní definici role ze souboru JSON. Soubor JSON musí obsahovat vlastnost ID role.
Parametry
-DefaultProfile
Přihlašovací údaje, účet, tenant a předplatné používané ke komunikaci s Azure
Vlastnosti parametru
| Typ: | IAzureContextContainer |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
| Aliasy: | AzContext, AzureRmContext, AzureCredential |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-InputFile
Název souboru obsahující jednu definici role JSON, která se má aktualizovat. Zahrnout pouze vlastnosti, které se mají aktualizovat ve formátu JSON. Vlastnost ID je povinná.
Vlastnosti parametru
| Typ: | String |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
InputFileParameterSet
| Position: | Named |
| Povinné: | True |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-Role
Objekt definice role, který se má aktualizovat
Vlastnosti parametru
| Typ: | PSRoleDefinition |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
RoleDefinitionParameterSet
| Position: | Named |
| Povinné: | True |
| Hodnota z kanálu: | True |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
-SkipClientSideScopeValidation
Pokud je zadáno, přeskočte ověření oboru na straně klienta.
Vlastnosti parametru
| Typ: | SwitchParameter |
| Default value: | None |
| Podporuje zástupné znaky: | False |
| DontShow: | False |
Sady parametrů
(All)
| Position: | Named |
| Povinné: | False |
| Hodnota z kanálu: | False |
| Hodnota z kanálu podle názvu vlastnosti: | False |
| Hodnota ze zbývajících argumentů: | False |
CommonParameters
Tato rutina podporuje běžné parametry: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction a -WarningVariable. Další informace najdete v about_CommonParameters.
Vstupy
PSRoleDefinition
Výstupy
PSRoleDefinition
Poznámky
Klíčová slova: azure, azurerm, arm, resource, management, manager, resource, group, template, deployment