
Uma ferramenta de interface de linha de comando para gerenciar ativações de funções do Azure Privileged Identity Management (PIM) diretamente do seu terminal.
Uma ferramenta de interface de linha de comando para gerenciar ativações de funções do Azure Privileged Identity Management (PIM) diretamente do seu terminal.
Antes de usar o azpim, certifique-se de ter:
# Instalar a Azure CLI (se não estiver instalada)
# Veja: https://docs.microsoft.com/en-us/cli/azure/install-azure-cli
# Fazer login no Azure
az login
# Verificar se está logado
az account show
# Usando npm
npm install -g azpim
# Usando pnpm
pnpm add -g azpim
# Usando yarn
yarn global add azpim
Após a instalação, o comando azpim estará disponível globalmente.
Se você usava o azp-cli anteriormente, suas predefinições estão armazenadas em ~/.config/azp-cli/ (ou %APPDATA%\azp-cli\ no Windows). Para migrar:
presets.json para o novo local: ~/.config/azpim/ (ou %APPDATA%\azpim\)npm uninstall -g azp-cli# Clonar o repositório
git clone https://github.com/tapanmeena/azpim.git
cd azpim
# Instalar dependências
pnpm install
# Compilar o projeto
pnpm build
# Vincular globalmente para desenvolvimento
npm link
# Após instalação global
azpim
# Ou com comandos específicos
azpim activate
azpim deactivate
azpim preset list
azpim update
# Modo de desenvolvimento (a partir do código fonte)
pnpm dev
| Comando | Alias | Descrição |
|---|---|---|
activate | a | Ativar uma função no Azure PIM (padrão) |
deactivate | d | Desativar uma função no Azure PIM |
preset | - | Gerenciar predefinições reutilizáveis |
favorites | fav | Gerenciar assinaturas favoritas |
check-update | update, upgrade | Verificar se há uma versão mais recente |
help | - | Exibir informações de ajuda |
Flags Globais:
--debug - Ativar log de depuração--version - Mostrar número da versão| Comando | Descrição |
|---|---|
preset list | Listar todas as predefinições disponíveis |
preset show | Mostrar detalhes de uma predefinição específica |
preset add | Adicionar uma nova predefinição (assistente interativo) |
preset edit | Editar uma predefinição existente (assistente interativo) |
preset remove | Remover uma predefinição |
| Comando | Descrição |
|---|---|
favorites list | Listar todas as assinaturas favoritas |
favorites add | Adicionar uma assinatura aos favoritos |
favorites remove | Remover uma assinatura dos favoritos |
favorites clear | Limpar todos os favoritos |
favorites export | Exportar favoritos para um arquivo |
favorites import | Importar favoritos de um arquivo |
favorites refresh | Atualizar o cache de assinaturas |
Você pode verificar se há uma versão mais recente disponível:
azpim update
# alias
azpim upgrade
Notas:
azpim update sai com código 0 quando atualizado, 2 quando uma atualização está disponível e 1 em caso de erro.--check-only - Apenas verificar e imprimir o status sem mostrar instruções de atualização.--output json retorna uma resposta estruturada adequada para scripts.azpim activate e azpim deactivate também mostrarão uma breve dica "atualização disponível" (apenas modo texto) no máximo uma vez por dia.AZPIM_NO_UPDATE_NOTIFIER=1 (ou AZPIM_DISABLE_UPDATE_CHECK=1).O cache de verificação de atualização é armazenado junto com as predefinições no diretório de configuração:
~/.config/azpim/update-check.json (ou $XDG_CONFIG_HOME/azpim/update-check.json)%APPDATA%\azpim\update-check.jsonUse flags para ativar ou desativar funções do PIM diretamente, sem passar pelo menu interativo, perfeito para scripts e fluxos de trabalho CI/CD.
# Ativar uma única função pelo nome (não interativo)
azpim activate --non-interactive --yes \
--subscription-id <SUBSCRIPTION_GUID> \
--role-name "Owner" \
--duration-hours 2 \
--justification "Break-glass for incident" \
--output json
# Ativar múltiplas funções (repetir --role-name)
azpim activate --non-interactive --yes \
--subscription-id <SUBSCRIPTION_GUID> \
--role-name "Contributor" \
--role-name "User Access Administrator"
# Se um nome de função corresponder a várias funções elegíveis (diferentes escopos),
# --non-interactive gerará erro a menos que você permita explicitamente ativar todas as correspondências
azpim activate --non-interactive --yes \
--subscription-id <SUBSCRIPTION_GUID> \
--role-name "Contributor" \
--allow-multiple
# Visualizar o que aconteceria sem enviar solicitações
azpim activate --non-interactive --dry-run \
--subscription-id <SUBSCRIPTION_GUID> \
--role-name "Contributor" \
--output json
# Desativar funções específicas
azpim deactivate --non-interactive --yes \
--subscription-id <SUBSCRIPTION_GUID> \
--role-name "Owner" \
--justification "Task completed"
# Desativar em todas as assinaturas (omitir subscription-id)
azpim deactivate --non-interactive --yes \
--role-name "Contributor" \
--allow-multiple
Flags comuns (ativar/desativar):