このページではOpenAMをIdPとし、BoxをSPとしてSAML連携を設定する方法を紹介します。
事前準備
IdPの構築
OpenAMは事前にIdPとしての構築が済んでいるものとします。OpenAMのメタデータを出力して保存しておきます。
ユーザー情報の確認
BoxとOpenAMの両方に、対応するユーザーが登録されていることを確認します。Boxへのログインにはメールアドレスを使用するため、Boxに登録されているメールアドレスがOpenAMにも登録されている必要があります。
Boxのユーザー情報は管理コンソールの「ユーザーとグループ」から確認することができます。

OpenAMのユーザーデータストア内で、メールアドレスが登録されている属性名を調べておきます。
Box側の設定
OpenAMのメタデータを登録する
BoxのSSO設定の問い合わせフォームからSSO設定の申請を行います。
「メールアドレス」に管理者アカウントのメールアドレスを入力します。
「事象・ご質問の概要をご記入ください」に、SSOの設定を行いたい旨を書きます。
「Who is your Identity Provider?」は「Other with Metadata」を選択します。
「事象の詳細をご記入ください」に、SSOの設定を行いたい旨を書きます。
「優先度」は「普通」を選択します。
「Box Subdomain」にBoxのサブドメインを入力します。
「What is the attribute for the user’s email?」に、アサーション内でユーザーのメールアドレスを送る属性名を入力します。任意の属性名を設定できますが、後にOpenAM側でも同じ値を設定する必要がありますので、ここで設定した値をメモしておきます。(例: email)
「添付ファイル」の欄から、OpenAMのメタデータをアップロードします。
「送信」を選択して申請します。
設定が反映されるまで時間がかかることがあります。設定が反映されると、管理者のメールアドレス宛てに通知のメールが送られてきます。
SSOを有効にする
Box管理コンソールの「Enterprise設定」→「ユーザー設定」→「全てのユーザーのシングルサインオン(SSO)を有効化」から、BoxのログインにOpenAMを使用する設定を行います。
- 「SSO有効モード」にすると、認証時に「通常のメールアドレス・パスワードでの認証を行うか、OpenAMによる認証を行うかを選択する画面」が表示されるようになります。
- 「SSO必須モード」では、認証画面からすぐにOpenAMにリダイレクトされます。通常のメールアドレス・パスワードによる認証は不可能になります。
ログインできなくなることを防ぐために、「SSO有効モード」での検証を行ってから、「SSO必須モード」へ変更することを推奨します。
OpenAM側の設定
Boxのメタデータを登録する
Boxのメタデータをダウンロードします。
OpenAMの管理コンソールから「(レルム名)」→「SAMLv2 プロバイダを作成」→「リモートサービスプロバイダを登録」を選択します。
- 「メタデータファイルはどこに存在しますか?」は「ファイル」を選択し、「アップロード」を選択してBoxのメタデータをアップロードします。
- 「トラストサークル」はBoxをSPとして登録するトラストサークルを選択します。新しいトラストサークルを作ることも可能です。
- 「属性マッピング」はBoxに送信する属性を設定します。左側にBoxに申請した属性名、右側に対応する値が格納されているユーザーデータストア内の属性を入力して、「追加」を選択します。(例: 表明内の名前「email」、ローカル属性名「mail」)
「設定」をクリックしてBoxをSPとして登録します。
以上で設定は完了です。
実際にログインしてみる
Boxのログイン画面にメールアドレスを入力すると、以下のような画面が表示されます。(SSO有効モードの場合のみ。SSO必須モードでは表示されません。)
「SSOでサインイン」を選択するとOpenAMのログイン画面にリダイレクトされます。
ユーザー名とパスワードを入力しOpenAMでのログインに成功すると、Boxのホームにリダイレクトされます。
OpenAMの認証でBoxにログインすることができました。