Box APIとSSO
Box APIとSSO
多くのBox Enterpriseでは、シングルサインオン (SSO) を使用して、Boxにログインしている管理対象ユーザーを認証します。Box Platformに作成されたアプリケーションとSSOプロバイダの対話方法は、作成されるアプリケーションの種類によって異なります。
クライアント側認証を使用するカスタムアプリ
OAuth 2.0を使用するよう構成されたカスタムアプリでユーザーが認証されると、Boxは、企業がSSOを使用するよう構成されているかどうかを検出します。SSOを使用するよう構成されている場合、ユーザーはブラウザにリダイレクトされ、企業の構成済みのSSOログイン画面が表示されます。
SSOの有効化とSSO必須モード
企業は、SSO必須モードとSSOの有効化の2つの方法のいずれかで、SSOを構成できます。
SSOが有効化されていても必須ではない場合、管理対象ユーザーは次のいずれかを選択できます。
- Boxのユーザー名とパスワードを使用してログインする
- SSOプロバイダを使用してログインする
SSOが有効化され、必須になっている場合、すべての管理対象ユーザーは、企業の構成済みSSOプロバイダでログインするよう強制されます。この場合、ログインを試みるユーザーは、SAMLを介して渡されるメールアドレスと一致するBoxアカウントを持っているだけでなく、SSO側で構成されている必要があります。
サーバー側認証を使用するカスタムアプリ
JWTまたはクライアント資格情報許可を使用するカスタムアプリおよびアプリトークン認証を使用するアクセス制限付きアプリでは、Boxでの認証にSSOは使用されません。
サーバー側認証を使用するカスタムアプリは、Boxとの通信にサーバー間のAPIコールのみを使用します。このシナリオでのエンドユーザーの認証方法は、Boxではなくアプリケーションが決定します。
つまり、アプリケーションによるエンドユーザーの認証はそのアプリケーションによって決まりますが、アプリケーションによるBoxの承認とはまったく異なります。
これらのユースケースでは、アプリケーションは通常の管理対象ユーザーとしてではなく、サービスアカウントまたはApp Userとして認証します。このようなユーザータイプには、デフォルトでは管理対象ユーザーのデータへのアクセス権限がありません。これらのアプリケーションから他の管理対象ユーザーのデータにアクセスできるようにするには、明示的な管理者の承認が必要です。
カスタムスキル
カスタムスキルは、独自の方法で認証されます。この方法では、スキルイベントごとに固有のアクセストークンセットがアプリケーションに提供されます。
この場合、アプリケーションはユーザーと直接やり取りしないため、SSOは関与しません。