Concesión de acceso RBAC a reservas de Azure mediante PowerShell

En este artículo se muestra cómo conceder acceso de control de acceso basado en rol (RBAC) a reservas de Azure mediante Azure PowerShell. Para ver y administrar el acceso de RBAC en Azure Portal, consulte Permisos para ver y administrar reservas de Azure.

Nota:

Se recomienda usar el módulo de PowerShell de Azure Az para interactuar con Azure. Para comenzar, consulte Instalación de Azure PowerShell. Para obtener información sobre cómo migrar al módulo Az PowerShell, consulte Migración de Azure PowerShell de AzureRM a Az.

Concesión de acceso mediante PowerShell

Los siguientes tipos de usuario pueden delegar la administración de acceso para todos los pedidos de reserva a los que pueden acceder:

Al conceder acceso mediante PowerShell, no puede ver los roles en Azure Portal. En su lugar, puede ver los roles mediante el comando get-AzRoleAssignment en la sección siguiente.

Asignación del rol "Propietario" para todas las reservas

Use el siguiente script de PowerShell para proporcionar a un usuario acceso de RBAC a todos los pedidos de reservas en su inquilino (directorio) de Microsoft Entra.


Import-Module Az.Accounts
Import-Module Az.Resources
 
Connect-AzAccount -Tenant <TenantId>
 
$response = Invoke-AzRestMethod -Path /providers/Microsoft.Capacity/reservations?api-version=2020-06-01 -Method GET
 
$responseJSON = $response.Content | ConvertFrom-JSON
 
$reservationObjects = $responseJSON.value
 
foreach ($reservation in $reservationObjects)
{
  $reservationOrderId = $reservation.id.substring(0, 84)
  Write-Host "Assigning Owner role assignment to "$reservationOrderId
  New-AzRoleAssignment -Scope $reservationOrderId -ObjectId <ObjectId> -RoleDefinitionName Owner
}

Cuando se usa el script de PowerShell para asignar el rol de propiedad y se ejecuta correctamente, no se devuelve un mensaje correcto.

Parámetros

El parámetro -ObjectId es el Microsoft Entra ObjectId del usuario, grupo o entidad de servicio.

  • Tipo: cadena
  • Alias: Id, PrincipalId
  • Posición: con nombre
  • Valor predeterminado: ninguno
  • Aceptar entrada de canalización: true
  • Aceptar caracteres comodín: false

El -TenantId parámetro es el identificador único del inquilino.

  • Tipo: cadena
  • Posición: 5
  • Valor predeterminado: ninguno
  • Aceptar entrada de canalización: false
  • Aceptar caracteres comodín: false

Concesión de acceso a nivel de arrendatario

Necesita derechos de administrador de acceso de usuario para poder conceder a los usuarios o grupos los siguientes roles en el nivel de arrendatario:

  • Administrador de reservas
  • Colaborador de reservas
  • Lector de reservas

Para obtener derechos de administrador de acceso de usuario en el nivel de inquilino, siga los pasos para elevar el acceso.

Incorporación de un rol Administrador de reservas, Colaborador de reservas o Lector de reservas en el nivel de inquilino

Solo los usuarios con el rol administrador global pueden asignar estos roles desde Azure Portal.

  1. Inicie sesión en Azure Portal y vaya a Reservas.
  2. Seleccione una reserva a la que pueda acceder.
  3. En la parte superior de la página, seleccione Asignación de roles.
  4. Seleccione la pestaña Roles.
  5. Para realizar modificaciones, agregue un usuario como administrador de reservas, colaborador de reservas o Lector de reservas mediante el control de acceso.

Adición de un rol de administrador de reservas en el nivel de inquilino mediante un script de Azure PowerShell

Use el siguiente script de Azure PowerShell para agregar un rol de administrador de reservas en el nivel de inquilino.

Import-Module Az.Accounts
Import-Module Az.Resources
Connect-AzAccount -Tenant <TenantId>
New-AzRoleAssignment -Scope "/providers/Microsoft.Capacity" -PrincipalId <ObjectId> -RoleDefinitionName "Reservations Administrator"

Parámetros

El parámetro -ObjectId es el Microsoft Entra ObjectId del usuario, grupo o entidad de servicio.

  • Tipo: cadena
  • Alias: Id, PrincipalId
  • Posición: con nombre
  • Valor predeterminado: ninguno
  • Aceptar entrada de canalización: true
  • Aceptar caracteres comodín: false

El -TenantId parámetro es el identificador único del inquilino.

  • Tipo: cadena
  • Posición: 5
  • Valor predeterminado: ninguno
  • Aceptar entrada de canalización: false
  • Aceptar caracteres comodín: false

Adición de un rol Colaborador de reservas en el nivel de inquilino mediante un script de Azure PowerShell

Use el siguiente script de Azure PowerShell para agregar un rol Colaborador de reservas en el nivel de inquilino.

Import-Module Az.Accounts
Import-Module Az.Resources
Connect-AzAccount -Tenant <TenantId>
New-AzRoleAssignment -Scope "/providers/Microsoft.Capacity" -PrincipalId <ObjectId> -RoleDefinitionName "Reservations Contributor"

Parámetros

El parámetro -ObjectId es el Microsoft Entra ObjectId del usuario, grupo o entidad de servicio.

  • Tipo: cadena
  • Alias: Id, PrincipalId
  • Posición: con nombre
  • Valor predeterminado: ninguno
  • Aceptar entrada de canalización: true
  • Aceptar caracteres comodín: false

El -TenantId parámetro es el identificador único del inquilino.

  • Tipo: cadena
  • Posición: 5
  • Valor predeterminado: ninguno
  • Aceptar entrada de canalización: false
  • Aceptar caracteres comodín: false

Asignación de un rol lector de reservas en el nivel de inquilino mediante un script de Azure PowerShell

Use el siguiente script de Azure PowerShell para asignar el rol Lector de reservas en el nivel de inquilino.


Import-Module Az.Accounts
Import-Module Az.Resources

Connect-AzAccount -Tenant <TenantId>

New-AzRoleAssignment -Scope "/providers/Microsoft.Capacity" -PrincipalId <ObjectId> -RoleDefinitionName "Reservations Reader"

Parámetros

El parámetro -ObjectId es el Microsoft Entra ObjectId del usuario, grupo o entidad de servicio.

  • Tipo: cadena
  • Alias: Id, PrincipalId
  • Posición: con nombre
  • Valor predeterminado: ninguno
  • Aceptar entrada de canalización: true
  • Aceptar caracteres comodín: false

El -TenantId parámetro es el identificador único del inquilino.

  • Tipo: cadena
  • Posición: 5
  • Valor predeterminado: ninguno
  • Aceptar entrada de canalización: false
  • Aceptar caracteres comodín: false