Skip to content
KitploitKITPLOIT
ツールエクスプロイトブログ
Log in
提出
ツールエクスプロイトブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

フィードお問い合わせプライバシー© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
azpim — Azure Privileged Identity Management (PIM) ロールアクティベーションをターミナルから直接管理するためのコマンドラインインターフェースツールです。 | Kitploit
ツール/GitHubGitHub/tapanmeena/azpim
認証と認可クラウドインフラストラクチャセキュリティスクリプトと自動化クラウドセキュリティユーティリティとフレームワークアイデンティティ&アクセス管理 (IAM)
GitHubtapanmeena/azpim

azpim

Azure Privileged Identity Management (PIM) ロールアクティベーションをターミナルから直接管理するためのコマンドラインインターフェースツールです。

リポジトリを見る
62567ヶ月前未レビュー

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

Azure PIM CLI (azpim)

ターミナルから直接Azure Privileged Identity Management (PIM) ロールのアクティベーションを管理するためのコマンドラインインターフェースツールです。

Terminal UI TypeScript npm License

機能

  • 🔐 ロールのアクティベーション - 対象となるAzure PIMロールをすばやくアクティベート
  • 🔓 ロールの非アクティブ化 - 不要になったアクティブロールを非アクティブ化
  • 📋 インタラクティブメニュー - ユーザーフレンドリーなメニュー駆動インターフェース
  • ✨ 美しいUI - スピナーとカラーを備えた洗練されたターミナル体験
  • 🔄 マルチロール対応 - 複数のロールを一度にアクティベートまたは非アクティブ化
  • 📊 ステータストラッキング - アクティベーション/非アクティブ化の状況をリアルタイムに表示
  • 💾 プリセット - アクティベーション/非アクティブ化の設定を保存して再利用
  • ⭐ お気に入り - サブスクリプションをお気に入りに登録して素早くアクセス
  • 🗃️ サブスクリプションキャッシュ - サブスクリプションの自動キャッシュ(TTL 6時間)による高速起動
  • 🚀 非対話モード - スクリプトと自動化のためのCLIフラグ
  • 🔔 更新通知 - 設定可能な動作で自動更新チェック
  • 📤 JSON出力 - 他ツールとの統合のための機械可読な出力
  • 👤 ユーザーごとのデータ分離 - AzureユーザーIDごとに設定とキャッシュを保存

前提条件

azpimを使用する前に、次のものが揃っていることを確認してください。

  1. Node.js(v18以上)
  2. Azure CLIがインストールおよび構成されている
  3. AzureアカウントにPIM対象ロールがある

Azure CLIのセットアップ

# Azure CLIのインストール(未インストールの場合)
# 参照: https://docs.microsoft.com/ja-jp/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からの移行

以前にazp-cliを使用していた場合、プリセットは~/.config/azp-cli/(Windowsの場合は%APPDATA%\azp-cli\)に保存されています。移行するには:

  1. presets.jsonを新しい場所(~/.config/azpim/、Windowsの場合は%APPDATA%\azpim\)にコピーします。
  2. 古いパッケージをアンインストールします:npm uninstall -g azp-cli

ソースから(開発用)

# リポジトリのクローン
git clone https://github.com/tapanmeena/azpim.git
cd azpim

# 依存関係のインストール
pnpm install

# プロジェクトのビルド
pnpm build

# 開発用にグローバルリンク
npm link

使用方法

CLIの実行

# グローバルインストール後
azpim

# 特定のコマンドを指定
azpim activate
azpim deactivate
azpim preset list
azpim update

# 開発モード(ソースから)
pnpm dev

コマンド

コマンドエイリアス説明
activateaAzure PIMでロールをアクティベート(デフォルト)
deactivatedAzure PIMでロールを非アクティブ化
preset-再利用可能なプリセットを管理
favoritesfavお気に入りのサブスクリプションを管理
check-updateupdate, 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は、1日に1回まで「更新可能」という短いヒント(テキストモードのみ)を表示します。
  • 更新チェックを無効にするには、AZPIM_NO_UPDATE_NOTIFIER=1(またはAZPIM_DISABLE_UPDATE_CHECK=1)を設定します。

アップデート確認のキャッシュは、プリセットと同じ設定ディレクトリに保存されます。

  • macOS/Linux: ~/.config/azpim/update-check.json(または$XDG_CONFIG_HOME/azpim/update-check.json)
  • Windows: %APPDATA%\azpim\update-check.json

非対話モード(自動化)

フラグを使用して、インタラクティブメニューを経由せずにPIMロールを直接アクティベートまたは非アクティブ化できます。スクリプトやCI/CDワークフローに最適です。

アクティベーションの例

# 単一のロールを名前でアクティベート(非対話)
azpim activate --non-interactive --yes \
   --subscription-id <SUBSCRIPTION_GUID> \
   --role-name "Owner" \
   --duration-hours 2 \
   --justification "インシデント対応のための緊急アクセス" \
   --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 "タスク完了"

# すべてのサブスクリプションにわたって非アクティブ化(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 - 重要でない出力を抑制

アクティベーション固有:

  • --duration-hours <n> - 期間(1~8時間、デフォルトはロールによって異なる)
  • --justification <text> - アクティベーションの理由

非アクティブ化固有:

  • --justification <text> - 非アクティブ化の理由(省略可能)

プリセット

プリセットを使用すると、日常的なアクティベーション/非アクティブ化ルーチン(サブスクリプション+ロール名+期間+理由)を保存し、--preset <name> で再利用できます。

プリセットファイルの場所

デフォルトでは、プリセットはユーザーごとの設定ファイルに保存されます。

  • macOS/Linux: ~/.config/azpim/presets.json(または$XDG_CONFIG_HOME/azpim/presets.json)
  • Windows: %APPDATA%\azpim\presets.json

場所を上書きするには:

  • AZPIM_PRESETS_PATH=/path/to/presets.json

プリセットの内容

プリセットには、以下の一方または両方のブロックを定義できます。

  • activate: subscriptionId、roleNames[]、durationHours、justification、allowMultiple
  • deactivate: subscriptionId(省略可能)、roleNames[]、justification、allowMultiple

justificationでは単純なテンプレートが使用可能:

  • ${date} → YYYY-MM-DD
  • ${datetime} → ISOタイムスタンプ
  • ${userPrincipalName} → Microsoft Graph /me から解決

一般的なワークフロー

# プリセットを作成(インタラクティブウィザード)
azpim preset add daily-ops

# Azure統合でプリセットを作成(サブスクリプション/ロールを取得)
azpim preset add daily-ops --from-azure

# プリセットを編集(インタラクティブウィザード)
azpim preset edit daily-ops

# すべてのプリセットを一覧表示
azpim preset list

# 1つのプリセットの詳細を表示
azpim preset show daily-ops

# プリセットを削除
azpim preset remove daily-ops

# プリセットを使用(フラグはプリセット値を上書き)
azpim activate --preset daily-ops --yes

# プリセットを使用した非対話実行
azpim activate --preset daily-ops --non-interactive --yes --output json

# プリセットを使用して非アクティブ化
azpim deactivate --preset daily-ops --non-interactive --yes

デフォルト

azpim preset addでプリセットを作成する際、activateやdeactivateのデフォルトとして設定することもできます。

  • デフォルトプリセットは、ワンショットフローを実行する際に必要なフラグを明示的に指定していない場合に自動的に適用されます。
  • 例:デフォルトのアクティベートプリセットを設定した後、azpim activate --non-interactive --yes は --subscription-idや--role-nameを指定しなくても動作できます。

セッション例

╔════════════════════════════════════════════════════╗
║     Azure PIM CLI - Role Activation Manager        ║
╚════════════════════════════════════════════════════╝

✔ 認証成功

┌─ ユーザー情報 ──────────────────────────────────
│ 名前: 山田 太郎
│ メール: [email protected]
└──────────────────────────────────────────────────────

✔ 3件のサブスクリプションが見つかりました
ツールをダウンロード