ユーザーのプロビジョニング解除とフォルダのアーカイブ

ガイド CLI CLIサンプルスクリプト ユーザーのプロビジョニング解除とフォルダのアーカイブ

ユーザーのプロビジョニング解除とフォルダのアーカイブ

このスクリプトを使用すると、ユーザーのリストによるプロビジョニング解除と削除が可能です。スクリプトでは以下の手順が実行されます。

  1. EmployeeArchiveFolderNameパラメータで指定された、別のユーザーのルートフォルダにユーザーコンテンツを転送します。
  2. ユーザーを削除します。

前提条件

Windows

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

MacOSおよびLinux

PowerShellをインストールします。pwshコマンドを実行して、インストール結果をテストします。

pwsh 

どのディレクトリでこのコマンドを実行するかに応じて、出力が異なる場合があります。以下に例を示します。

PowerShell 7.2.5
Copyright (c) Microsoft Corporation.

https://aka.ms/powershell
Type 'help' to get help.
  
PS /Users/user/repos/boxcli/examples> 

問題が発生する場合は、.NET CorePowerShellの両方をインストールしたかどうか確認してください。

Boxアプリケーション

スクリプトを使用するには、OAuth 2.0認証を使用するBoxアプリケーションが必要です。該当するアプリケーションがない場合は、開発者コンソールに移動して、OAuth 2.0を使用した設定ガイドに従ってください。

スクリプトの構成

  1. boxcli GitHubリポジトリを複製するか、examplesディレクトリからファイルをダウンロードします。

    git clone https://github.com/box/boxcli.git
    
2. Create the list of employees for deletion in `.csv`.

   The header row should look like as follows:

   ```bash
   name, email

この場合

  • nameは、Boxにおけるユーザーの名前です。
  • emailは、Boxにおけるこのユーザーのプライマリメールアドレスです。

    例:

nameemail
管理対象ユーザー1ManagedUser1@test.com
管理対象ユーザー2ManagedUser2@test.com
管理対象ユーザー3ManagedUser3@test.com

パラメータのリスト

ParameterDescriptionRequiredDefault Value
EmployeeList削除する従業員が記載された従業員リストCSVのパス。はい-
SkipTransferContentこのフラグを設定すると、スクリプトの実行時に、削除前にユーザーコンテンツの転送をスキップします。設定しない場合は、ユーザーのコンテンツが転送されます。いいえFalse
NewFilesOwnerIDユーザーの削除前にファイルの転送先となるユーザーのID。指定しなかった場合、スクリプトは、対話形式で入力を求めるか、現在認証されているユーザーのIDを使用してコンテンツを受け取ります。いいえ指定しなかった場合、スクリプトは、対話形式で入力を求めるか、現在認証されているユーザーのIDを使用します。
EmployeeArchiveFolderNameSkipTransferContentFalseに設定されている場合にユーザーのコンテンツの移動先となるフォルダの名前。この名前のフォルダがそのユーザーのNewFilesOwnerIDルートフォルダにすでに存在する場合は、そのフォルダが使用されます。存在しない場合は、新しいフォルダが作成されます。はいEmployee Archive
DryRun削除/作成/更新の呼び出しは行われず、読み取りの呼び出しのみが行われるモードでスクリプトを実行するかどうかを決定するフラグ。いいえFalse

スクリプトのパラメータの定義

パラメータを渡すには、以下のオプションを使用できます。

  • スクリプトでハードコードされた値を使用します。

    このオプションを使用するには、実行する前に、スクリプトのパラメータセクションに記載されている必須パラメータをすべて更新します。

  • パラメータを指定してスクリプトを実行します。

    コマンドを指定するときにパラメータを指定できます。以下に例を示します。

PS > ./Users_Deprovision.ps1 -EmployeeList ./Employees_to_delete.csv `
 -NewFilesOwnerID  123456789
 -EmployeeArchiveFolderName "Employee Archive"

または

PS > ./Users_Deprovision.ps1 -EmployeeList ./Employees_to_delete.csv `
 -SkipTransferContent

パラメータを指定しなかった場合は、スクリプトによって、パラメータを入力するよう求められます。

PS > ./Users_Deprovision.ps1
Please enter the path to the employee list CSV file:
./Employees_to_delete.csv
Please specify the user ID of the user who will own the files of the users being deprovisioned.
Press Enter if you want to use the current user as the new owner.
User ID: 1234567689
Starting User Deprovisioning script...

スクリプトの実行

これで、あとはスクリプトを実行するだけです。

  1. ディレクトリを、スクリプトが格納されているフォルダに変更します。この例では、User Deprovisioningフォルダになります。

    rvb@lab:~/box-cli/examples/User Deprovisioning$ pwsh
    PowerShell 7.2.4
    Copyright (c) Microsoft Corporation.
    https://aka.ms/powershell
    Type 'help' to get help.
    PS /home/rvb/box-cli/examples/User Deprovisioning>
    
  2. スクリプトを実行します:

    ./Users_Deprovision.ps1
    

    すべてのパラメータが定義されると、以下の出力が表示され、スクリプトが開始されたことを確認できます。

    PS /home/rvb/box-cli/examples/User Deprovisioning> ./Users_Deprovision.ps1
    Starting User Deprovisioning script...
    

ログ

ログは、メインフォルダ内のlogsフォルダに格納されます。以下のログファイルにアクセスできます。

  • Users_Deprovision_all.txt: すべてのログエントリが含まれています。
  • Users_Deprovision_errors.txt: エラーのみが含まれています。

[employeelist][employeelist]:[https://github.com/box/boxcli/blob/main/examples/User%20Deprovisioning/Users_Deprovision.ps1#L12