メインコンテンツまでスキップ

Box

Boxを業務アセットとして接続するために必要な準備と、接続後に管理できる対象を説明します。Box側でのカスタムアプリの作成が事前に必要です。

概要​

Boxは、クラウドコンテンツ管理とファイル共有のためのオンラインストレージサービスです。

参照先リンク
公式サイトAIを活用したセキュアなコンテンツ管理、ワークフロー、コラボレーション
サービス概要AIと非構造化データ:新しい時代の始まり Box
APIドキュメントUser - APIリファレンス - Box Developerドキュメント

YESODがBoxと連携して提供する機能は次の3つです。

  • Boxのアカウントの作成
  • Boxのロール・グループの割当の付与・剥奪
  • Boxのアカウント作成時の初期フォルダーの作成

既存のフォルダーの更新・削除には対応していません。

管理できること​

機能対応
アカウント作成○
グループ付与○
ロール付与○

接続方式は標準コネクタです。

接続に使う情報​

入力項目必須入力する内容
「エンタープライズID」必須Boxの開発者コンソールで確認できるエンタープライズID
「クライアントID」必須カスタムアプリのクライアントID
「クライアントシークレット」必須カスタムアプリのクライアントシークレット

3つとも、Boxの開発者コンソールで取得します。クライアントシークレットは第三者に共有せず、安全な場所で管理してください。

接続の準備​

接続する前に、Boxでカスタムアプリを作成します。Box側での作業です。

  1. Boxの開発者コンソールで「マイPlatformアプリ」を開きます。

  2. 「Platformアプリの作成」をクリックします。

  3. アプリの種類で「カスタムアプリ」を選択します。

  4. 認証方法で「サーバー認証(クライアント資格情報許可)」を選択します。

  5. 作成されたアプリを選択します。

  6. 「構成」タブを開きます。

  7. アプリアクセスレベルで「アプリ + Enterpriseアクセス」を選択します。

  8. アプリケーションスコープで、次の3つにチェックが入っていることを確認します。

    • 「ユーザーを管理する」
    • 「グループを管理する」
    • 「Enterpriseのプロパティを管理する」
  9. 「高度な機能」で、次の2つにチェックを入れます。

    • 「as-userヘッダーを使用してAPIコールを行う」
    • 「ユーザーアクセストークンを生成する」
  10. 承認作業をします。 管理者のメールアドレスへ、承認を求めるメールが送信されます。

注意

Boxのカスタムアプリは、設定を変更するたびに管理者の承認が必要です。初回の承認では承認を求めるメールが送信されますが、再承認ではメールが送信されません。2回目以降は、Boxの管理コンソールで承認してください。初回と2回目以降で手順が変わります。

参考にするBox Developerドキュメントは次のとおりです。

接続する​

「業務アセット」画面から「SaaS接続」画面を開くまでの手順は、業務アセットを追加するを参照してください。

  1. 「SaaS接続」画面で「Box」を選択します。 「Box 接続」画面が表示されます。

  2. 「エンタープライズID」「クライアントID」「クライアントシークレット」を入力します。

  3. 「接続」ボタンをクリックします。 同期が完了すると、業務アセットが作成されます。

アカウントの作成​

パスワードの作成には対応していません。BoxのAPIはユーザーを招待するだけで、パスワードを扱えないためです。

アカウントを作成すると、Boxから対象のメールアドレスへURLが送信されます。ユーザーはそのURLでパスワードを作成すると、Boxを使えるようになります。

割当種別​

割当種別タイプ割当項目説明
ロール優先度の高いグループに所属させるcoadmin(共同管理者)/user(管理対象ユーザー)Boxの管理コンソールのアクセス権を管理します
グループ複数のグループに所属させるBoxのAPIから取得しますグループを使うと、複数のユーザーへ一括でフォルダーのアクセス権限を付与できます

coadminは管理者権限を持つユーザー、userは管理者権限を持たないユーザーです。

Boxのグループについては、グループの作成と管理を参照してください。

同期する項目​

業務アセットの「アカウント設定」にある「同期する項目」で、YESODの項目をBoxの項目へ対応づけます。

必須項目​

項目マッピング項目YESOD項目型説明
loginuser.loginuser.emailStringBoxへのアクセスに使うメールアドレス。変更できません(Boxの管理画面でも変更できません)
nameuser.nameuser.familyNameLocalPreferred + " " + user.givenNameLocalPreferredStringユーザー名

任意項目​

マッピング項目入力形式説明BOXキー名
user.languagestringユーザーの言語(ISO 639-1形式)language
user.timezonestringタイムゾーンtimezone
user.space_amountintegerストレージ使用量(バイト)。-1で無制限space_amount
user.job_titlestring役職(最大100文字)job_title
user.phonestring電話番号(最大100文字)phone
user.addressstring住所(最大255文字)address
user.is_sync_enabledbooleanBox Sync使用可否is_sync_enabled
user.is_external_collab_restrictedbooleanユーザーが社外のユーザーとのコラボレーションを許可されているかどうかis_external_collab_restricted
user.is_exempt_from_device_limitsboolean会社のデバイス制限からユーザーを除外するかどうかis_exempt_from_device_limits
user.can_see_managed_usersbooleanユーザーが自身の連絡先リストで会社の他のユーザーを参照できるかどうかcan_see_managed_users
user.is_exempt_from_login_verificationbooleanユーザーが2要素認証を使用する必要があるかどうかis_exempt_from_login_verification
user.email_aliases[0].emailStringの配列メールエイリアス(企業の登録済みドメインのみ)。洗い替えのため、指定していないメールエイリアスは削除されます。nullを指定すると、すべてのメールエイリアスが削除されますemail_aliases[]
user.initial_folder_enabledboolean新規フォルダーを作成するかどうかの設定(未設定の場合はfalse)—
user.initial_folder_pathString親フォルダーのフルパス—
user.initial_folder_nameString新規フォルダーの名称—

検討の結果、対応外とした項目​

項目内容
statusアカウント状態(active / inactive / cannot_delete_edit / cannot_delete_edit_upload)。ユーザーの有効・無効をactiveとinactiveで管理しており、同じ項目でユーザーの権限にあたる部分も設定できます
enterprisenullにすると会社メンバーから外れ、無料ユーザーになります
tracking_codes[]トラッキングコード(Boxの管理コンソールでの事前設定が必要)
is_password_reset_requiredパスワードリセットを義務付けるかどうか(falseからtrueへの変更のみ)
notification_email.email代替の通知用メールアドレス
注記

Boxでは、アカウントを作成した直後は通知メールの項目が非活性で、パスワードリセットに関する項目も表示されません。ユーザーがパスワードを設定すると、どちらも入力できるようになります。

ドキュメントに記載されているが、対応外とした項目​

マッピング項目入力形式説明BOXキー名
user.notifyboolean会社メンバーでなくなった後もメール受信可能かnotify

notifyはBoxのAPIドキュメントに記載がありますが、次の理由から対応していません。

  • Boxが提供しているSDKに項目がない
  • curlでAPIを直接実行しても値が変わらない
  • Boxの管理画面に対応する項目がない

関連ページ​