Skip to main content
Box CLIとPowerShellスクリプトを組み合わせることで、反復的な管理ワークフローを自動化できます。Boxでは、開発をすぐに開始できるように、BoxのCLI GitHubリポジトリ内にサンプルスクリプトフォルダを作成しました。 CLIスクリプトのしくみを説明するため、ユーザーのプロビジョニングと作成を行うスクリプトテンプレートを使用します。 このスクリプトでは、Box CLIを使用して、個人用フォルダ構造の作成と管理対象ユーザーの一括作成を実行し、新しく作成したフォルダ構造に新しいユーザーをビューアー/アップローダーのロールを持つコラボレータとして追加することでそのユーザーのプロビジョニングを行います。
このガイドは、管理者権限を持つサービスアカウントとユーザーのみを対象としています。Box管理者以外のユーザーの場合、またはサービスアカウントを使用していない場合は、この手順をスキップしてください。

ユースケース

ユーザーとフォルダ構造を自動的に作成するために、スクリプトによって以下の手順が実行されます。
  1. .csvファイルを使用して従業員データを一括で読み込みます。
  2. JSONファイルを使用してフォルダ構造を定義するか、ユーザーのローカルディレクトリから構造をアップロードします。
  3. 新しい管理対象ユーザーごとに、あらかじめ決められた個人用フォルダ構造を作成します。

前提条件

Windows

.NET Coreの最新バージョンのインストール

macOSおよびLinux

PowerShellのインストール

Box CLI

スクリプトを使用するには、Box CLIをインストールし、構成する必要があります。まだの場合は、を参照してください。

個人用フォルダの親フォルダの作成

このスクリプトは、作成される各ユーザーにフォルダ構造を作成することで動作します。そのためには、すべての個人用フォルダが格納される親フォルダを作成する必要があります。デフォルトでは、すべてのフォルダは、CLIで使用されているアカウントのルートフォルダ内に作成されます。このフォルダは、好きな場所に名前を付けて配置できますが、CLIの設定に使用したユーザーにそのフォルダへのアクセス権限を付与する必要があります。 スクリプト実行後の構造の例を次に示します。
完成したフォルダ構造

スクリプトのダウンロード

任意のディレクトリにスクリプトを複製し、そのディレクトリに移動します。

スクリプト設定の構成

自分の環境で実行できるようにスクリプトを調整します。この例では、スクリプトに用意されているサンプルデータを使用します。

パラメータの指定

スクリプトを実行する前に指定する必要があるパラメータがいくつかあります。
  • EmployeeList: Employee List CSVのパス。
  • PersonalFolderParentID: 入力にJSONファイルを使用してフォルダ構造を作成するかローカルの構造をアップロードするときに、すべての個人用フォルダが作成される宛先フォルダID。このフォルダは、初めてスクリプトを実行する前に作成する必要があります。この値を0にすることはお勧めしません。この値に設定した場合、CLIの設定に使用したアカウントのルートに個々の個人用フォルダが作成されるためです。
  • FolderStructureJSONPath: 所有するフォルダ構造のJSONパス。
  • PersonalFolderSlug: 個人用フォルダの親として作成されるフォルダ名の末尾に使用される文字列。デフォルトではPersonal Folderに設定されていますが、必要に応じて自由に設定できます。ユーザー名とこの値を組み合わせて、各ユーザーの個人用フォルダの名前が作成されます (例: rsmith2's Personal Folder)。
  • LocalUploadPath: フォルダ構造を直接アップロードするためのローカルディレクトリ。
ローカルのアップロードパスまたはフォルダ構造のJSONファイルのいずれかを指定してください。両方は指定できません。

ユーザーリストの更新

ユーザーを読み込むには、サンプルファイルEmployees_1.csvEmployees_5.csvEmployees_10.csvを使用できます。それぞれのファイルでは、新しいユーザーが1人、5人、10人作成されます。 これらのファイルをテスト実行用にカスタマイズします。たとえば、Employees_1.csvを次のデータで更新します。
EmployeeListパラメータを使用して、データを読み込む.csvファイルを指定します。
メールアドレスは、Box全体で一意である必要があります。また、ユーザー名は特定のBoxインスタンスで一意である必要があります。そうでない場合は、スクリプトを実行したときにエラーがスローされます。

フォルダ構造の作成

フォルダ構造は、JSONファイルから作成するか、ローカルドライブからアップロードすることができます。

JSONファイルを使用する

Folder_Structure.jsonファイルは、作成するフォルダ構造を含んでいます。たとえば、Market ResearchフォルダとSales Playsフォルダを作成し、それぞれにサブフォルダStatisticsBig Pharmaを作成するとします。このスクリプトは、このフォルダ構造を、指定した親フォルダ内にある当該ユーザーのPersonal Folderフォルダの下に配置します。 FolderStructureJSONPathパラメータを使用して、Folder_Structure.jsonファイルの場所を指定します。

ローカルドライブからアップロードする

フォルダ構造をローカルファイルシステムから直接アップロードすることもできます。LocalUploadPathパラメータを使用して、アップロードするローカルフォルダのパスを指定します。アップロードされたフォルダ構造は、JSONを使用した方法と同じ名前構造を使用してBox内に作成されます。

パラメータの更新

パラメータは3つの方法で指定できます。
  • スクリプトで静的な値を使用する
    実行する前に、スクリプト内のすべての必須パラメータを忘れずに更新してください。
  • パラメータを指定してスクリプトを実行する スクリプトの実行中にパラメータを指定できます。以下に例を示します。
  • 求められたときにパラメータを指定する 実行時に指定されていないパラメータがある場合は、スクリプトにより、指定するよう求められます。

スクリプトの実行

  1. ディレクトリを、スクリプトが格納されているフォルダに変更します。この例では、User Creation & Provisioningフォルダになります。
  2. スクリプトを実行します:
    レスポンスは以下のようになります。

新規ユーザーに対するスクリプトの再実行

会社で新しい従業員を雇用するたび、このスクリプトを定期的に実行することは一般的です。単に.csvファイルを編集し、前の行のユーザーを削除して新規ユーザーの情報を追加するだけです。その後、スクリプトを再度実行します。

まとめ

Box CLIとともにPowerShellスクリプトを使用した、ユーザーのプロビジョニングと最初のフォルダ構造の作成の自動化について確認しました。 その他のユースケースについては、他のを確認してください。
最終更新日 2026年4月15日