
Инструмент командной строки для управления активациями ролей Azure Privileged Identity Management (PIM) непосредственно из вашего терминала.
Инструмент командной строки для управления активацией ролей Azure Privileged Identity Management (PIM) непосредственно из терминала.
Перед использованием azpim убедитесь, что у вас есть:
# Установка Azure CLI (если не установлен)
# См.: https://docs.microsoft.com/ru-ru/cli/azure/install-azure-cli
# Вход в Azure
az login
# Проверка, что вы вошли
az account show
# С помощью npm
npm install -g azpim
# С помощью pnpm
pnpm add -g azpim
# С помощью yarn
yarn global add azpim
После установки команда azpim будет доступна глобально.
Если вы ранее использовали azp-cli, ваши пресеты хранятся в ~/.config/azp-cli/ (или %APPDATA%\azp-cli\ в Windows). Для миграции:
presets.json в новое расположение: ~/.config/azpim/ (или %APPDATA%\azpim\)npm uninstall -g azp-cli# Клонирование репозитория
git clone https://github.com/tapanmeena/azpim.git
cd azpim
# Установка зависимостей
pnpm install
# Сборка проекта
pnpm build
# Создание глобальной ссылки для разработки
npm link
# После глобальной установки
azpim
# Или с конкретными командами
azpim activate
azpim deactivate
azpim preset list
azpim update
# Режим разработки (из исходников)
pnpm dev
| Команда | Псевдоним | Описание |
|---|---|---|
activate | a | Активировать роль в Azure PIM (по умолчанию) |
deactivate | d | Деактивировать роль в Azure PIM |
preset | - | Управление повторно используемыми пресетами |
favorites | fav | Управление избранными подписками |
check-update | update, upgrade | Проверка наличия новой версии |
help | - | Показать справочную информацию |
Глобальные флаги:
--debug — Включить отладочное логирование--version — Показать номер версии| Команда | Описание |
|---|---|
preset list | Список всех доступных пресетов |
preset show | Показать детали конкретного пресета |
preset add | Добавить новый пресет (интерактивный мастер) |
preset edit | Редактировать существующий пресет (интерактивный мастер) |
preset remove | Удалить пресет |
| Команда | Описание |
|---|---|
favorites list | Список всех избранных подписок |
favorites add | Добавить подписку в избранное |
favorites remove | Удалить подписку из избранного |
favorites clear | Очистить все избранное |
favorites export | Экспортировать избранное в файл |
favorites import | Импортировать избранное из файла |
favorites refresh | Обновить кэш подписок |
Вы можете проверить, доступна ли новая версия:
azpim update
# псевдоним
azpim upgrade
Примечания:
azpim update завершается с кодом 0, если версия актуальна, 2, если доступно обновление, и 1 при ошибке.--check-only — Только проверить и показать статус без инструкций по обновлению.--output json возвращает структурированный ответ, подходящий для скриптов.azpim activate и azpim deactivate также будут показывать краткое уведомление о доступном обновлении (только в текстовом режиме) не чаще одного раза в день.AZPIM_NO_UPDATE_NOTIFIER=1 (или AZPIM_DISABLE_UPDATE_CHECK=1).Кэш проверки обновлений хранится вместе с пресетами в вашем каталоге конфигурации:
~/.config/azpim/update-check.json (или $XDG_CONFIG_HOME/azpim/update-check.json)%APPDATA%\azpim\update-check.jsonИспользуйте флаги для активации или деактивации PIM-ролей напрямую, без интерактивного меню — идеально для скриптов и CI/CD.
# Активация одной роли по имени (неинтерактивно)
azpim activate --non-interactive --yes \
--subscription-id <SUBSCRIPTION_GUID> \
--role-name "Owner" \
--duration-hours 2 \
--justification "Break-glass for incident" \
--output json
# Активация нескольких ролей (повторите --role-name)
azpim activate --non-interactive --yes \
--subscription-id <SUBSCRIPTION_GUID> \
--role-name "Contributor" \
--role-name "User Access Administrator"
# Если имя роли совпадает с несколькими доступными ролями (разные области),
# --non-interactive выдаст ошибку, если явно не разрешить активацию всех совпадений
azpim activate --non-interactive --yes \
--subscription-id <SUBSCRIPTION_GUID> \
--role-name "Contributor" \
--allow-multiple
# Предварительный просмотр того, что произойдёт, без отправки запросов
azpim activate --non-interactive --dry-run \
--subscription-id <SUBSCRIPTION_GUID> \
--role-name "Contributor" \
--output json
# Деактивация конкретных ролей
azpim deactivate --non-interactive --yes \
--subscription-id <SUBSCRIPTION_GUID> \
--role-name "Owner" \
--justification "Task completed"
# Деактивация по всем подпискам (опустите subscription-id)
azpim deactivate --non-interactive --yes \
--role-name "Contributor" \
--allow-multiple
Общие флаги (activate/deactivate):
--non-interactive — Отключить интерактивные подсказки-y, --yes — Пропустить подтверждения--subscription-id <id> — Целевая подписка (необязательно для deactivate)--role-name <name> — Имя(имена) ролей (можно повторять)--allow-multiple — Разрешить несколько совпадений ролей--dry-run — Предварительный просмотр без отправки--output <text|json> — Формат вывода (по умолчанию text)--quiet — Подавить необязательный вывод