- Keeper Commanderを使ってロック中ユーザーを一括移管する方法
- SSO環境でのKeeper Commanderログイン手順
- ハマりやすいポイント2つとその対処法
先日、社内のKeeper Securityで退職者等のロック中ユーザーのアカウント移管(Transfer Account)をまとめてやる必要があった。
先に結論から言うと、Keeper CommanderというCLIツールを使って、300人超のロック中ユーザーを一括でIT管理者アカウントに移管することができた。セットアップ含めて約1時間で完了した。
同様の作業が発生している情シス担当者向けに、背景と具体的な進め方をまとめる。
▼背景・やりたかったこと
Keeper Admin Consoleを開くと、退職者等のロック中ユーザーが大量に存在していた。これらのユーザーに対してやりたかったことは以下の3ステップだ。
- ▶ ロック中のユーザーを特定する
- ▶ 各ユーザーのアカウント移管(Transfer Account)を実行する
- ▶ 移管先としてIT管理者アカウントを指定する
GUIでやろうとすると1人ずつポチポチする必要があり、300人超は現実的じゃない。なので自動化を検討した。
▼Claude in ChromeじゃなくてKeeper Commanderを選んだ理由
最初はClaude in Chromeで同じ操作をやっていた。ブラウザを操作させてAdmin Consoleを読み取り、1人ずつ移管する、という流れだ。
ただ、これが使用量を爆発的に圧迫した。Claude in Chromeはページの読み取り・クリック・確認を1アクションごとにトークンを消費する。1人を移管するだけでも相当な量になるため、300人超を処理しようとすると使用量が一気に飛んでしまった。
これをCLIでできないか?と思って調べたところ、Keeper Commanderという公式CLIツールの存在にたどり着いた。
Claude in ChromeはGUIをそのまま操作する感じだが、Keeper CommanderはAPIレベルで操作できるので安定性・速度・再現性の面で断然こちらが優れている。同じ作業を繰り返し実行する可能性があるなら、CLIで仕組み化する方が絶対にいい。
向いている:数件程度の単発操作、CLIやAPIが存在しないツールの操作、手順確認・下調べ
向いていない:大量の繰り返し処理(今回のような数百件規模)、定期的に実行したい定型作業
大量処理はCLI・API一択。Claude in Chromeで始めて使用量が爆発してから気づくのが一番もったいない。
▼Keeper Commanderのセットアップ
MacにHomebrewが入っていれば簡単だ。
インストール後、PATHが通っていない場合は以下を実行する。
▼ログイン(SSO認証)
SSOでKeeperにログインしている環境では、通常のメアド+パスワードではなくSSOフローになる。手順は以下の通りだ。
でインタラクティブシェルを起動後:
- 1.
login メールアドレスを実行 - 2. SSO認証の選択肢が出るので
c(ブラウザでSSO URLを開く)を選択 - 3. ブラウザでSSOログイン → 「Copy login token」ボタンをクリック
- 4. ターミナルに戻って
p(Paste SSO Token)を選択 - 5. デバイス承認が求められるので
2(Admin Approval)を選択、管理者側で承認 - 6.
r(Resume)で認証完了
「Successfully authenticated with SSO Login」が出ればOK。
▼ロック中ユーザーの一覧取得
これで全ユーザーのステータス一覧が取れる。LockedとActiveが混在しているので、Lockedの人だけ手元でリスト化する。
▼一括移管の実行
transfer-user コマンドが移管の本体だ。
ファイルで渡す場合は @ファイルパス で指定できるが、フォーマットが from -> to のマッピング形式である必要があるため注意(後述)。
今回はロックユーザーのメールリストを ~/locked_users.txt に作成し、以下で一括実行した。
-f は確認スキップ(force)オプションだ。
▼ハマりポイント2つ
① 「Can Be Transferred」ロール設定がないと移管できない
一部ユーザーで以下のエラーが出た。
Keeperのロール設定で「アカウント転送を許可する」が有効になっていないユーザーは、Commanderからも移管できない。該当ユーザーは別途ロール設定を変更した上で再実行する必要がある。
一部ユーザーだけこのエラーが出ると、後から個別対応が発生して手間になる。事前にAdmin Consoleで全ロールの「アカウント転送を許可する」設定を確認・統一しておくのがベター。
② @ファイル指定のフォーマットに注意
transfer-user @ファイル名 で一括指定できるが、ファイルの中身は from_account -> to_account 形式でないと invalid mapping エラーになる。メールアドレスだけのリストでは動かないので注意。
今回は全員同じ移管先なので、コマンドライン引数で直接渡す方が楽だった。
▼まとめ
| 項目 | 内容 |
|---|---|
| 使用ツール | Keeper Commander(公式CLI) |
| 対象ユーザー数 | 300人超 |
| 所要時間 | セットアップ含め約1時間 |
GUIで1人ずつやっていたら数時間かかっていたはずの作業が、CLIで一括処理できた。Keeper Securityを使っている情シスの方で同様の作業がある場合、ぜひKeeper Commanderを試してほしい。公式ドキュメントも充実しているので、他にもできることが多い。
GUIで1つずつやることに慣れていると、大量処理が発生したときに詰む。CLIで処理できると、同じ作業の繰り返しが圧倒的に速くなる。今回のKeeper Commanderのように、主要なSaaSには公式CLIが用意されていることが多い。
📩 SaaS運用・アカウント管理の効率化でお困りの方へ
「退職者対応が属人化している」「大量のアカウント整理をどうすればいいか」という相談にも対応しています。顧問プラン(月6万円〜)から対応可能です。
無料相談・お問い合わせはこちら →