Udostępnij za pośrednictwem


Set-AzRoleDefinition

Modyfikuje rolę niestandardową w kontroli dostępu opartej na rolach platformy Azure. Podaj zmodyfikowaną definicję roli jako plik JSON lub jako definicję PSRoleDefinition. Najpierw użyj polecenia Get-AzRoleDefinition, aby pobrać rolę niestandardową, którą chcesz zmodyfikować. Następnie zmodyfikuj właściwości, które chcesz zmienić. Na koniec zapisz definicję roli przy użyciu tego polecenia.

Składnia

Set-AzRoleDefinition
   -InputFile <String>
   [-SkipClientSideScopeValidation]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
Set-AzRoleDefinition
   -Role <PSRoleDefinition>
   [-SkipClientSideScopeValidation]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]

Opis

Polecenie cmdlet Set-AzRoleDefinition aktualizuje istniejącą rolę niestandardową w kontroli dostępu opartej na rolach platformy Azure. Podaj zaktualizowaną definicję roli jako dane wejściowe polecenia jako plik JSON lub obiekt PSRoleDefinition. Definicja roli zaktualizowanej roli niestandardowej MUSI zawierać identyfikator i wszystkie inne wymagane właściwości roli, nawet jeśli nie są zaktualizowane: DisplayName, Description, Actions, AssignableScopes. NotActions, DataActions, NotDataActions są opcjonalne.

Przykłady

Przykład 1. Aktualizowanie przy użyciu obiektu PSRoleDefinitionObject

$roleDef = Get-AzRoleDefinition "Contoso On-Call"
$roleDef.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

Przykład 2. Tworzenie przy użyciu pliku JSON

Set-AzRoleDefinition -InputFile C:\Temp\roleDefinition.json
<#
Following is a sample updated role definition json for Set-AzRoleDefinition:
{
        "Id": "52a6cc13-ff92-47a8-a39b-2a8205c3087e",
        "Name": "Updated Role",
        "Description": "Can monitor all resources and start and restart virtual machines",
        "Actions":
        [
            "*/read",
            "Microsoft.ClassicCompute/virtualmachines/restart/action",
            "Microsoft.ClassicCompute/virtualmachines/start/action"
        ],
        "NotActions":
        [
            "*/write"
        ],
        "DataActions":
        [
            "Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read"
        ],
        "NotDataActions":
        [
            "Microsoft.Storage/storageAccounts/blobServices/containers/blobs/write"
        ],
        "AssignableScopes": ["/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"]
}
#>

Parametry

-DefaultProfile

Poświadczenia, konto, dzierżawa i subskrypcja używane do komunikacji z platformą Azure

Typ:IAzureContextContainer
Aliasy:AzContext, AzureRmContext, AzureCredential
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-InputFile

Nazwa pliku zawierająca pojedynczą definicję roli JSON do zaktualizowania. Uwzględnij tylko właściwości, które mają zostać zaktualizowane w formacie JSON. Właściwość Id jest wymagana.

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-Role

Obiekt definicji roli do zaktualizowania

Typ:PSRoleDefinition
Position:Named
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-SkipClientSideScopeValidation

Jeśli zostanie określony, pomiń walidację zakresu po stronie klienta.

Typ:SwitchParameter
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

Dane wejściowe

PSRoleDefinition

Dane wyjściowe

PSRoleDefinition

Uwagi

Słowa kluczowe: azure, azurerm, arm, resource, management, manager, resource, group, template, deployment