Partilhar via


Set-AzRoleDefinition

Modifica uma função personalizada no RBAC do Azure. Forneça a definição de função modificada como um arquivo JSON ou como PSRoleDefinition. Primeiro, use o comando Get-AzRoleDefinition para recuperar a função personalizada que você deseja modificar. Em seguida, modifique as propriedades que deseja alterar. Finalmente, salve a definição de função usando este comando.

Sintaxe

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

Description

O cmdlet Set-AzRoleDefinition atualiza uma função personalizada existente no Controle de Acesso Baseado em Função do Azure. Forneça a definição de função atualizada como uma entrada para o comando como um arquivo JSON ou um objeto PSRoleDefinition. A definição de função para a função personalizada atualizada DEVE conter o Id e todas as outras propriedades necessárias da função, mesmo que não sejam atualizadas: DisplayName, Description, Actions, AssignableScopes. NotActions, DataActions, NotDataActions são opcionais.

Exemplos

Exemplo 1: Atualizar usando 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

Exemplo 2: Criar usando o arquivo 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"]
}
#>

Parâmetros

-DefaultProfile

As credenciais, a conta, o locatário e a assinatura usados para comunicação com o azure

Tipo:IAzureContextContainer
Aliases:AzContext, AzureRmContext, AzureCredential
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-InputFile

Nome do arquivo contendo uma única definição de função json a ser atualizada. Inclua apenas as propriedades que devem ser atualizadas no JSON. A propriedade Id é Required.

Tipo:String
Position:Named
Default value:None
Necessário:True
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

-Role

Objeto de definição de função a ser atualizado

Tipo:PSRoleDefinition
Position:Named
Default value:None
Necessário:True
Aceitar entrada de pipeline:True
Aceitar carateres universais:False

-SkipClientSideScopeValidation

Se especificado, ignore a validação do escopo do lado do cliente.

Tipo:SwitchParameter
Position:Named
Default value:None
Necessário:False
Aceitar entrada de pipeline:False
Aceitar carateres universais:False

Entradas

PSRoleDefinition

Saídas

PSRoleDefinition

Notas

Palavras-chave: azure, azurerm, arm, resource, management, manager, resource, group, template, deployment