Box APIとSSO
Box APIとSSO
多くのBox Enterpriseでは、シングルサインオン(SSO)を使用してBoxにログインしている管理対象ユーザーを認証します。Box Platformに作成されたアプリケーションとSSOプロバイダの対話方法は、作成されるアプリケーションの種類によって異なります。
クライアント側認証を使用するカスタムアプリ
クライアント側[OAuth 2.0][oauth 2.0]を使用するよう構成されたカスタムアプリでユーザーが認証されると、Boxは、ユーザーの会社がSSOを使用するよう構成されているかどうかを検出します。構成されている場合、ユーザーのブラウザは、自社の構成済みのSSOログイン画面にリダイレクトされます。
SSOの有効化とSSO必須モード
Boxを使用する会社では、SSOの使用を構成する方法として、SSO必須モードとSSOの有効化の2つがあります。
SSOのみを有効化として設定した会社では、ユーザーは、通常のBoxユーザー名とパスワードを使用するか、SSOプロバイダにリダイレクトされるかを選択できます。
SSOが必須に設定されている会社では、Boxにより、ユーザーは会社の構成済みSSOプロバイダでログインするよう強制されます。この場合、ログインしようとするユーザーはBoxアカウントとSSOプロバイダのアカウントの両方を既に所有している必要があります。どちらか一方がなければログインは失敗します。これは、Boxがユーザーのリダイレクト先となるSSOプロバイダを判断できないか、SSOプロバイダがユーザーのログインを認識できないからです。
サーバー側認証を使用するカスタムアプリ
JWTまたはアプリトークン認証を使用するカスタムアプリの場合、SSOはBoxでの認証に使用されません。
サーバー側認証を使用するカスタムアプリは、Boxとの通信にサーバー間のAPI呼び出しのみを使用します。このシナリオでのエンドユーザーの認証方法は、Boxではなくアプリケーションによって決まります。
つまり、アプリケーションによるエンドユーザーの認証はそのアプリケーションによって決まりますが、アプリケーションによるBoxの承認とはまったく異なります。
これらのユースケースでは、アプリケーションは通常の管理対象ユーザーとしてではなく、サービスアカウントまたはApp Userとして認証します。このようなユーザータイプには、デフォルトでは管理対象ユーザーのデータへのアクセス権限がありません。これらのアプリケーションから他の管理対象ユーザーのデータにアクセスできるようにするには、明示的な管理者の承認が必要です。
カスタムスキル
カスタムスキルは、独自の方法で認証されます。この方法では、スキルイベントごとに固有のアクセストークンセットがアプリケーションに提供されます。
この場合、アプリケーションはユーザーと直接やり取りしないため、SSOは関与しません。