Az Powershell
El módulo Az de PowerShell es un conjunto de cmdlets para administrar los recursos de Azure directamente desde PowerShell.
Instalación
Az PowerShell
Install-Module Az
Conexión
Una vez se hayan obtenido credenciales válidas, se podría utilizar la herramienta de Az PowerShell para conectarse al tenant y enumerar Azure AD y recursos (Azure Resources).
Popup
Connect-AzAccount
Account SubscriptionName TenantId Environment
------- ---------------- -------- -----------
[email protected] 10081781-e4e1-4302-bf67-43fae511bbe4 AzureCloud
Línea de comandos con credenciales
$passwd = ConvertTo-SecureString "<password>" -AsPlainText -Force
$creds = New-Object System.Management.Automation.PSCredential("<email>", $passwd)
Connect-AzAccount -Credential $creds
Línea de comandos con secreto de servicio principal
$passwd = ConvertTo-SecureString "<secret>" -AsPlainText -Force
$creds = New-Object System.Management.Automation.PSCredential("<App ID>", $passwd)
Connect-AzAccount -ServicePrincipal -Credential $creds -Tenant <Tenant ID>
Conexión con token
$AccessToken = '<token JWT>'
$AccountId = '063aaf57-30af-41f1-840a-0e51ed144916' # TenantID
Connect-AzAccount -AccessToken $AccessToken -AccountId $AccountId
Token
ARM Token
(Get-AzAccessToken).Token
Graph Token
(Get-AzAccessToken -ResourceUrl https://graph.microsoft.com).Token
Comandos
Comandos de AzureAD:
Get-Command *azad*
Comandos de Azure Resources:
Get-Command *az*
Buscar comandos de un recurso en particular:
Get-Command *azvm*
Get-Command -Noun *vm* -Verb Get
Get-Command *vm*
Información general
Obtener información del contexto (tenant, cuenta, ...):
Get-AzContext
Obtener subscripciones accesibles por el usuario actual:
Get-AzSubscription
Obtener los recursos visibles por el usuario actual:
Get-AzResource
Get-AzResourceGroup
Obtener todos los Azure RBAC roles asignados:
Get-AzRoleAssignment
Obtener todas las máquinas virtuales donde el usuario actual tiene al menos el rol de lectura:
Get-AzVM | fl
Usuarios
Obtener todos los usuarios:
Get-AzADUser
Obtener información de un usuario:
Get-AzADUser -UserPrincipalName
Buscar un usuario que comience por una cadena específica:
Get-AzADUser -SearchString "admin"
Obtener los usuarios que contengan una cadena específica:
Get-AzADUser |?{$_.Displayname -match "admin"}
Grupos
Obtener todos los grupos:
Get-AzADGroup
Obtener detalles de un grupo en concreto:
Get-AzADGroup -ObjectId ff7d0475-364b-4ad6-8f7d-7e8f831e93ce
Obtener detalles de los grupos que empiecen por una cadena en concreto:
Get-AzADGroup -SearchString "admin" | fl *
Obtener detalles de los grupos que contengan una cadena en concreto:
Get-AzADGroup |?{$_.Displayname -match "admin"}
Obtener miembros de un grupo:
Get-AzADGroupMember -ObjectId 9197ad11-c384-4289-bb2a-45d03cfb6d05
Aplicaciones
Obtener todos los objetos de aplicaciones registradas en el Tenant:
Get-AzADApplication
Obtener todos los detalles de una aplicación:
Get-AzADApplication -ObjectId fe5e6dcb-1c46-2abe-b964-9af5ba322494
Obtener una aplicación según su Display Name:
Get-AzADApplication | ?{$_.DisplayName -match "app"}
Obtener todas las aplicaciones que tienen contraseña:
Get-AzADApplication | %{if(Get-AzADAppCredential -ObjectID $_.ObjectID){$_}}
Obtener aplicaciones web visibles:
Get-AzWebApp | ?{$_.Kind -notmatch "functionapp"}
Service Principals
Obtener todos los Service Principals:
Get-AzADServicePrincipal
Obtener todos los detalles de un Service Principal:
Get-AzADServicePrincipal -ObjectId fe5e6dcb-1c46-2abe-b964-9af5ba322494
Obtener los Service Principal según su Display Name:
Get-AzADServicePrincipal | ?{$_.DisplayName -match "app"}
Roles
Obtener roles asignados:
Get-AzRoleAssignment
Automation Accounts
Obtener grupo del Automation Accounts:
Get-AzAutomationHybridWorkerGroup -AutomationAccountName HybridAutomation -ResourceGroupName Test
Última actualización
¿Te fue útil?