概要
目的このガイドの目標は、Boxの管理対象ユーザーのプロビジョニング解除に必要なAPIコールについて説明することです。 実行する必要がある特定のAPIコールの概要を、以下で説明します。 注意事項このガイドは、APIコールを行うスクリプトやアプリケーション内でビジネスロジックを構築する方法については扱いません。 開発者向けポータルには、複数のウェブプログラミング言語の便利なSDKが用意されていますので、活用してください。プロビジョニング解除用のBox Command Lineツール
ユーザーのプロビジョニング解除を1回だけ行い、SDK管理プロセスをセットアップしたくない場合は、Boxのコマンドラインツールの機能を使ってユーザーをプロビジョニング解除します。 開発者は、コマンドラインを使ってアプリケーションを簡単に操作できます。 Box CLIツールの使用を始めるには、Getting Started (はじめに) ドキュメントを確認してください。 この方法を採用して、SDKを使わずにユーザーをプロビジョニング解除する場合は、前提条件セクションを飛ばしてプロビジョニング解除プロセスセクションに進んでください。前提条件
アプリの作成作業を始める前に、Boxの開発者向けポータルにBoxアプリがセットアップされていることを確認してください。 このプロセスにはBox Developers入門ガイドが参考になります。すぐに作業を始めたい場合は、アプリの作成へ進んでください。 認証 題の1つが、認証です。 BoxではOAuth 2.0を使用して、特定のユーザーとしてBoxでアクションを実行するアプリを承認します。 この場合、そのユーザーはBoxインスタンス内で何らかの管理者 (または共同管理者) である必要があります。 OAuthプロセスを理解することは大変なので、まずOAuthを使用した認証ガイドを参照してください。 OAuth認証プロセスによりアクセストークンとリフレッシュトークンが生成されます。アクセストークンは、Boxに対して実行するすべてのAPIコールで使用します。 As-User機能 下記の特定のステップでは、アプリケーションは管理対象ユーザーとしてAPIコールを実行できる必要があります。 これは、Box開発者コンソールの [構成] タブで有効にできます。 JWT認証を使用している場合は、必ずアプリケーションを再承認し、新しいトークンペアを取得して、変更を有効にしてください。 サービスアカウント ユーザーのコンテンツを別のBoxユーザーに移してから削除したい場合、スクリプトを実行する前に該当ユーザーのアカウントをBoxに作成する必要があります。 また、そのユーザーのBoxユーザーIDを入手する必要もあります。これは、会社ユーザーを取得するエンドポイントを呼び出すことでプログラム的に取得できます (あるいはBox担当者にお問い合わせください)。プロビジョニング解除プロセス
Boxのユーザーをプロビジョニング解除するには、いくつかの手順があります。 これらの手順は、ユーザーが所有する既存コンテンツをどう管理するかによっては省略できます。 また、必要な手順はそのコンテンツの扱い方に応じて変わります。 考えられるすべての手順の概要を以下に示します。-
ユーザーを非アクティブステータスにする
- この操作により、ユーザーは即座にすべてのアプリ (Box Sync、Mobileなど) からログアウトします。
- このユーザーが所有するフォルダのコラボレータは、そのユーザーが非アクティブになっている間、コラボレーションしているコンテンツにアクセスできなくなります。
- 残っているコンテンツを汎用サービスアカウント (または別のユーザー) に移す
- ユーザーアカウント (およびアカウントに残っているすべてのコンテンツ) を削除またはダウングレードする
ユーザープロビジョニング解除用のBox Command Lineの使い方
| 操作 | コマンドライン入力 | 注 | |
| 1. | Box内の全ユーザーをリストアップする | $ box users | フォーマットするには「—csv」フラグを追加します。 ファイルに保存するには「-s」を追加します。 |
| 2. | 単一のユーザーが所有するコンテンツを移行する | $ box users:transfer-content {USERID} {NEWUSERID} | |
| 3. | 1回の操作で複数のユーザーのコンテンツをまとめて移行する | $ box users:transfer-content —bulk-file-path=’./example.csv’ | 想定される入力 (例): 546781,100001 この操作により、ユーザー「546781」のコンテンツがユーザー「100001」に移動します。 |
| 4. | 単一のユーザーを削除する | $ box users:delete {USERID} | |
| 5. | 1回の操作で複数のユーザーをまとめて削除する | $ box users:delete —bulk-file-path=’./example.csv’ | 想定される入力 (例): 546781 この操作により、IDが「546781」のユーザーが削除されます。 |
ユーザープロビジョニング解除用のBox SDKの使い方
Box内の全ユーザーのリストを取得する ユーザーをプロビジョニング解除するには、Boxでユーザーを非アクティブ化および/または削除する必要があります。 Active Directoryで非アクティブ化されているBoxユーザーを把握するには、BoxユーザーのステータスとActive Directoryユーザーのステータスを比較します。 以下の手順で、ユーザーIDとメールアドレスを含むBox内の全ユーザーのリストを取得できます。 このメールアドレスを使用してActive Directoryをポーリングし、そのユーザーが非アクティブ化されているかどうかを確認します。 非アクティブ化されていた場合、本ガイドの続きの部分にはBoxユーザーIDを使用します。 コールはすべて管理者アカウントから実行する必要があることに注意してください。その他の考慮事項
- スクリプトの実行対象となるユーザーを判断する手段が必要です。
- 特定の操作でスクリプトを開始しますか? それとも、スクリプトを定期的に実行して、非アクティブ化の対象となるActive Directory内のユーザーを確認しますか?
- スクリプトを実行するユーザーのログイン情報 (メールアドレス) を取得する手段か、そのユーザーのBoxユーザーIDが必要です。