
Uno strumento da interfaccia a riga di comando per gestire le attivazioni dei ruoli di Azure Privileged Identity Management (PIM) direttamente dal tuo terminale.
Uno strumento a riga di comando per gestire le attivazioni dei ruoli di Azure Privileged Identity Management (PIM) direttamente dal tuo terminale.
Prima di utilizzare azpim, assicurati di avere:
# Installa l'interfaccia a riga di comando di Azure (se non installata)
# Vedi: https://docs.microsoft.com/it-it/cli/azure/install-azure-cli
# Accedi ad Azure
az login
# Verifica di aver effettuato l'accesso
az account show
# Usando npm
npm install -g azpim
# Usando pnpm
pnpm add -g azpim
# Usando yarn
yarn global add azpim
Dopo l'installazione, il comando azpim sarà disponibile globalmente.
Se in precedenza utilizzavi azp-cli, i tuoi preset sono memorizzati in ~/.config/azp-cli/ (o %APPDATA%\azp-cli\ su Windows). Per migrare:
presets.json nella nuova posizione: ~/.config/azpim/ (o %APPDATA%\azpim\)npm uninstall -g azp-cli# Clona il repository
git clone https://github.com/tapanmeena/azpim.git
cd azpim
# Installa le dipendenze
pnpm install
# Compila il progetto
pnpm build
# Collega globalmente per lo sviluppo
npm link
# Dopo l'installazione globale
azpim
# Oppure con comandi specifici
azpim activate
azpim deactivate
azpim preset list
azpim update
# Modalità sviluppo (dal sorgente)
pnpm dev
| Comando | Alias | Descrizione |
|---|---|---|
activate | a | Attiva un ruolo in Azure PIM (predefinito) |
deactivate | d | Disattiva un ruolo in Azure PIM |
preset | - | Gestisce preset riutilizzabili |
favorites | fav | Gestisce le sottoscrizioni preferite |
check-update | update, upgrade | Controlla la disponibilità di una nuova versione |
help | - | Mostra le informazioni di aiuto |
Flag globali:
--debug - Abilita la registrazione di debug--version - Mostra il numero di versione| Comando | Descrizione |
|---|---|
preset list | Elenca tutti i preset disponibili |
preset show | Mostra i dettagli di un preset specifico |
preset add | Aggiungi un nuovo preset (procedura guidata interattiva) |
preset edit | Modifica un preset esistente (procedura guidata interattiva) |
preset remove | Rimuovi un preset |
| Comando | Descrizione |
|---|---|
favorites list | Elenca tutte le sottoscrizioni preferite |
favorites add | Aggiungi una sottoscrizione ai preferiti |
favorites remove | Rimuovi una sottoscrizione dai preferiti |
favorites clear | Cancella tutti i preferiti |
favorites export | Esporta i preferiti in un file |
favorites import | Importa i preferiti da un file |
favorites refresh | Aggiorna la cache delle sottoscrizioni |
Puoi verificare se è disponibile una versione più recente:
azpim update
# alias
azpim upgrade
Note:
azpim update termina con codice 0 se aggiornato, 2 se è disponibile un aggiornamento e 1 in caso di errore.--check-only - Controlla e stampa solo lo stato senza mostrare le istruzioni di aggiornamento.--output json restituisce una risposta strutturata adatta agli script.azpim activate e azpim deactivate mostreranno anche un breve suggerimento "aggiornamento disponibile" (solo in modalità testo) al massimo una volta al giorno.AZPIM_NO_UPDATE_NOTIFIER=1 (o AZPIM_DISABLE_UPDATE_CHECK=1).La cache del controllo aggiornamenti è memorizzata insieme ai preset nella directory di configurazione:
~/.config/azpim/update-check.json (o $XDG_CONFIG_HOME/azpim/update-check.json)%APPDATA%\azpim\update-check.jsonUsa i flag per attivare o disattivare i ruoli PIM direttamente senza passare attraverso il menu interattivo, perfetto per script e flussi di lavoro CI/CD.
# Attiva un singolo ruolo per nome (non interattivo)
azpim activate --non-interactive --yes \
--subscription-id <SUBSCRIPTION_GUID> \
--role-name "Owner" \
--duration-hours 2 \
--justification "Break-glass per incidente" \
--output json
# Attiva più ruoli (ripeti --role-name)
azpim activate --non-interactive --yes \
--subscription-id <SUBSCRIPTION_GUID> \
--role-name "Contributor" \
--role-name "User Access Administrator"
# Se un nome ruolo corrisponde a più ruoli idonei (ambiti diversi),
# --non-interactive darà errore a meno che non si consenta esplicitamente l'attivazione di tutte le corrispondenze
azpim activate --non-interactive --yes \
--subscription-id <SUBSCRIPTION_GUID> \
--role-name "Contributor" \
--allow-multiple
# Anteprima di cosa accadrebbe senza inviare richieste
azpim activate --non-interactive --dry-run \
--subscription-id <SUBSCRIPTION_GUID> \
--role-name "Contributor" \
--output json
# Disattiva ruoli specifici
azpim deactivate --non-interactive --yes \
--subscription-id <SUBSCRIPTION_GUID> \
--role-name "Owner" \
--justification "Attività completata"
# Disattiva su tutte le sottoscrizioni (ometti subscription-id)
azpim deactivate --non-interactive --yes \
--role-name "Contributor" \
--allow-multiple