Box
業務アセットの作成
1. カスタムアプリを作成する(Boxでの作業)
- 開発者コンソール > マイPlatformアプリ > Platformアプリの作成
- アプリの種類は、カスタムアプリを選択する。
- 認証方法は、サーバー認証(クライアント資格情報許可)を選択する。
- 作成されたアプリを選択し、構成タブに遷移する。
- アプリアクセスレベルをアプリ + Enterpriseアクセスを選択する。
- アプリケーションスコープで以下の項目にチェックが入っていることを確認する。
- ユーザーを管理する
- グループを管理する
- Enterpriseのプロパティを管理する
- 高度な機能の以下の項目にチェックを入れる
- as-userヘッダーを使用してAPIコールを行う
- ユーザーアクセストークンを生成する
- 承認作業を行う。(管理者のメールアドレスに承認依頼のメールが送信されます。)
設定イメージ

2回目以降の設定変更する場合
Boxのカスタムアプリは変更のたびに管理者の承認が必要になります。
最初の承認の場合はメールが送信されますが、再承認の場合はメールが送信されません。そのため、2回目以降は管理コンソールに遷移して承認作業を行う必要があります。
1回目と2回目以降でフローが変わるのでご注意ください。
参考:
2. 業務アセットの作成(YESODでの作業)
- Boxの開発コンソールから「エンタープライズID」「クライアントID」「クライアントシークレット」に入力する
- 接続を選択して同期が完了したら成功
Boxでの取得場所
エンタープライズID

クライアントIDとクライアントシークレット

基本設定
- パスワードの作成は対応していません。
- 理由:BoxのAPIではユーザーはすべてInviteのみでパスワードを扱えないため
パスワードの設定イメージ
- 作成したユーザーのメールアドレスにログインのURLが送信される。

- パスワードの作成をしてログインができるようになる。

割当種別
任意項目
| マッピング項目 | 入力形式 | 説明 | BOXキー名 |
|---|---|---|---|
| user.language | string | ユーザーの言語(ISO 639-1形式) | language |
| user.timezone | string | タイムゾーン | timezone |
| user.space_amount | integer | ストレージ使用量(バイト)。-1で無制限 | space_amount |
| user.job_title | string | 役職(最大100文字) | job_title |
| user.phone | string | 電話番号(最大100文字) | phone |
| user.address | string | 住所(最大255文字) | address |
| user.is_sync_enabled | boolean | Box Sync使用可否 | is_sync_enabled |
| user.is_external_collab_restricted | boolean | ユーザーが社外のユーザーとのコラボレーションを許可されているかどうか | is_external_collab_restricted |
| user.is_exempt_from_device_limits | boolean | 会社のデバイス制限からユーザーを除外するかどうか | is_exempt_from_device_limits |
| user.can_see_managed_users | boolean | ユーザーが自身の連絡先リストで会社の他のユーザーを参照できるかどうか | can_see_managed_users |
| user.is_exempt_from_login_verification | boolean | ユーザーが2要素認証を使用する必要があるかどうか | is_exempt_from_login_verification |
| user.email_aliases[0].email | Stringの配列 | メールエイリアス(企業の登録済みドメインのみ) ※ 洗い替えになっているため、指定していないメールエイリアスは削除されます。 ※ nullを指定した場合は、すべてのメールエイリアスが削除されます。 | email_aliases[] |
| user.initial_folder_enabled | boolean | 新規フォルダーを作成するかどうかのオプション(未設定の場合はfalse) | - |
| user.initial_folder_path | String | 親フォルダーのフルパス | - |
| user.initial_folder_name | String | 新規フォルダーの名称 | - |
検討の結果、対応外とした項目
| 項目 | 内容 |
|---|---|
| status | アカウント状態("active", "inactive", "cannot_delete_edit", "cannot_delete_edit_upload") * ユーザーの有効・無効をactive/inactiveで管理している。 * 同じ設定項目で、ユーザーの権限的な部分も設定できる。 |
| enterprise | nullにすると会社メンバーから外れ無料ユーザーになる。 |
| tracking_codes[] | トラッキングコード(管理コンソールで事前設定が必要) |
| is_password_reset_required | パスワードリセットを義務付けるか(false→trueのみ) |
| notification_email.email | 代替の通知用メールアドレス |
画面イメージ
アカウント作成直後は、通知メールが非活性でパスワードリセットに関する項目も存在しない。

パスワード設定後に通知メールとパスワードリセットについて入力可能になる。
