Set-AzRoleDefinition

Modifica un rol personalizado en RBAC de Azure. Proporcione la definición de rol modificada como un archivo JSON o como PSRoleDefinition. En primer lugar, use el comando Get-AzRoleDefinition para recuperar el rol personalizado que desea modificar. A continuación, modifique las propiedades que desea cambiar. Por último, guarde la definición de roles con este comando.

Syntax

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

Description

El cmdlet Set-AzRoleDefinition actualiza un rol personalizado existente en el control de acceso basado en rol de Azure. Proporcione la definición de rol actualizada como entrada al comando como un archivo JSON o un objeto PSRoleDefinition. La definición de rol para el rol personalizado actualizado DEBE contener el identificador y todas las demás propiedades necesarias del rol aunque no se actualicen: DisplayName, Description, Actions, AssignableScopes. NotActions, DataActions, NotDataActions son opcionales.

Ejemplos

Ejemplo 1: Actualización mediante 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

Ejemplo 2: Creación mediante un archivo 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

Las credenciales, la cuenta, el inquilino y la suscripción que se usan para la comunicación con Azure

Type:IAzureContextContainer
Aliases:AzContext, AzureRmContext, AzureCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-InputFile

Nombre de archivo que contiene una única definición de rol json que se va a actualizar. Incluya solo las propiedades que se van a actualizar en json. La propiedad Id es Requerida.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Role

Objeto de definición de roles que se va a actualizar

Type:PSRoleDefinition
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-SkipClientSideScopeValidation

Si se especifica, omita la validación del ámbito del lado cliente.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Entradas

PSRoleDefinition

Salidas

PSRoleDefinition

Notas

Palabras clave: azure, azurerm, arm, resource, management, manager, resource, group, template, deployment