Box CLIでのPowerShellスクリプトの使用
Box CLIでのPowerShellスクリプトの使用
CLIはそれ自体がすでに強力ですが、PowerShellスクリプトと併用すると、反復タスクをさらに短時間で完了することができます。Boxでは、開発をすぐに開始できるように、BoxのCLI GitHubリポジトリ内にサンプルスクリプトフォルダを作成しました。
CLIスクリプトのしくみを説明するため、ユーザーのプロビジョニングと作成を行うスクリプトテンプレートを使用します。
このスクリプトでは、Box CLIを使用して、個人用フォルダ構造の作成と管理対象ユーザーの一括作成を実行し、新しく作成したフォルダ構造に新しいユーザーをビューアー/アップローダーのロールを持つコラボレータとして追加することでそのユーザーのプロビジョニングを行います。
ユースケース
ユーザーとフォルダ構造を自動的に作成するために、スクリプトによって以下の手順が実行されます。
.csvファイルを使用して従業員データを一括で読み込みます。- JSONファイルを使用してフォルダ構造を定義するか、ユーザーのローカルディレクトリから構造を アップロードします。
- 新しい管理対象ユーザーごとに、あらかじめ決められた個人用フォルダ構造を作成します。
前提条件
Windows
.NET Coreの最新バージョンのインストール
macOSおよびLinux
PowerShellのインストール
Box CLI
スクリプトを使用するには、Box CLIをインストールし、構成する必要があります。まだの場合は、このクイックスタートガイドの手順1を参照してください。または、開発者コンソールに移動し、OAuth 2.0を使用した設定ガイドに従ってください。
個人用フォルダの親フォルダの作成
このスクリプトは、作成される各ユーザーにフォルダ構造を作成することで動作します。そのためには、すべての個人用フォルダが格納される親フォルダを作成する必要があります。そうしないと、すべてのフォルダは、CLIの設定に使用したユーザーのルートに格納されます。このフォルダは、好きな場所に名前を付けて配置できますが、CLIの設定に使用したユーザーにそのフォルダへのアクセス権限を付与する必要があります。
スクリプト実行後の構造の例を次に示します。
スクリプトのダウンロード
任意のディレクトリにスクリプトを複製し、そのディレクトリに移動します。
git clone https://github.com/box/boxcli.git box-cli
cd box-cli/examples/User\ Creation\ \&\ Provisioning/
スクリプト設定の構成
自分の環境で実行できるようにスクリプトを調整します。この例では、スクリプトに用意されているサンプルデータを使用します。
パラメータの指定
スクリプトを実行する前に指定する必要があるパラメータがいくつかあります。
EmployeeList:Employee ListCSVのパス。PersonalFolderParentID: 入力にJSONファイルを使用してフォルダ構造を作成するかローカルの構造をアップロードするときに、すべての個人用フォルダが作成される宛先フォルダID。このフォルダは、初めてスクリプトを実行する前に作成する必要があります。この値を0にすることはお勧めしません。この値に設定した場合、CLIの設定に使用したアカウントのルートに個々の個人用フォルダが作成されるためです。FolderStructureJSONPath: 所有するフォルダ構造のJSONパス。PersonalFolderSlug: 個人用フォルダの親として作成されるフォルダ名の末尾に使用される文字列。デフォルトではPersonal Folderに設定されていますが、必要に応じて自由に設定できます。ユーザー名にこの値を連結して、各ユーザーの個人用フォルダの名前が作成されます (例:rsmith2's Personal Folder)。LocalUploadPath: フォルダ構造を直接アップロードするためのローカルディレクトリ。
ユーザーリストの更新
ユーザーを読み込むには、サンプルファイルEmployees_1.csv、Employees_5.csv、Employees_10.csvを使用できます。それぞれのファイルでは、新しいユーザーが1人、5人、10人読み込まれます。
これらのファイルをテスト実行用にカスタマイズします。たとえば、Employees_1.csvを次のデータで更新します。
firstName,lastName,email,username
Isaac,Newton,abc@abc.local,INewton23
EmployeeListパラメータを使用して、データを読み込む.csvファ イルを指定します。
フォルダ構造の作成
フォルダ構造は、JSONファイルから作成するか、ローカルドライブからアップロードすることができます。
JSONファイルを使用する
Folder_Structure.jsonファイルは、作成するフォルダ構造を含んでいます。たとえば、Market ResearchフォルダとSales Playsフォルダを作成し、それぞれにサブフォルダStatisticsとBig Pharmaを作成するとします。このスクリプトは、このフォルダ構造を、指定した親フォルダ内にある当該ユーザーのPersonal Folderフォルダの下に配置します。
FolderStructureJSONPathパラメータを使用して、Folder_Structure.jsonファイルの場所を指定します。