ForgeVision Engineer Blog

フォージビジョン エンジニア ブログ

AzureAD_Box連携

こんにちは、プラットフォームビジネス事業部の青木です。

複数のクラウドサービスを併用する企業が増えてきている中で、よく課題として挙げられるものの一つにユーザIDの管理があります。
作成したドキュメントやファイルをクラウド上のサービスで管理したいという場合、管理者側はサービスにログインするためのユーザIDの作成と管理、パスワードのポリシー、ユーザ毎の権限など、特にセキュリティ面で考慮すべき点が多く、利用者が増えれば増えるほど管理コストがかかってしまいます。
利用者側としては複数のクラウドサービスを併用していることでそれぞれのサービスにログインする度に別のIDやパスワードを入力しなくてはならず、作業効率の低下に繋がります。

このような課題を解決する方法としてシングルサインオン(SSO)という仕組みがあります。
シングルサインオンとは1つのIDとパスワードで認証を行い、複数のWebサービスやクラウドサービスにアクセスする仕組みです。
今回はクラウドコンテンツマネジメントサービスであるBoxとAzure Active DirectoryのSSOについてお話したいと思います。

AzureとBoxを連携させる利点について

Azure ADはBoxとの統合によってSSOを実現可能とし、Azureのアカウント一つでBoxにログインすることが可能です。
その他にもAzureとBoxを連携させると以下のようなメリットがあります。
・BoxにアクセスするユーザをAzure上で一元管理できる。
・BoxアカウントがなくてもBoxを利用できる。
・Azure上でユーザに権限を割り当てることができる。

Azure AD上でBoxのSSOを実現する

それでは実際にAzure ADでBoxへのSSOを行っていきましょう。
 ※事前準備として、Azureにログインするためのアカウント(Microsoftアカウント)の取得およびSSOに対応したプラン(Azure AD Premium P2)の適用が必要です。
まずはAzureのポータルからSSOの構成を行っていきます。
Azureのポータルにログインをし、左側のメニュー「Azure Active Directory」を選択します。
f:id:imadafv:20190109175549p:plain

Azure Active Directoryの概要画面に遷移しますので、「エンタープライズアプリケーション」を選択します。
f:id:imadafv:20190109175630p:plain

画面上の「新しいアプリケーション」をクリックし、「box」を選択します。
f:id:imadafv:20190109175650p:plain

エンタープライズアプリケーションにBoxが追加されますのでBoxをクリックし、概要画面に遷移します。
画面左の管理メニューから「シングルサインオン」をクリックし、SSOの方式でSAMLを選択します。
f:id:imadafv:20190109175705p:plain

SAMLとは

SAML(Security Assertion Markup Language)は異なるインターネットドメイン間でユーザー認証を行うためのプロトコルです。
SSOを利用する場合、それぞれのサービスに共通した"型"が必要です。
SAMLはその"型"そのものであり、ユーザを認証するシステムと各サービスの認証システムとの懸け橋をしてくれます。

SAMLによるSSOのセットアップ

SAMLベースのSSOをセットアップするのに必要な情報を設定していきます。
①基本的なSAML構成のペンマークをクリックします。
f:id:imadafv:20190109175722p:plain

有効なサインオンURLと識別子を入力します。
例)https://サブドメイン.box.com
f:id:imadafv:20190109175813p:plain

次にSAML証明書を発行します。
フェデレーションメタデータXMLをダウンロードし、以下のURLからBoxのサポートへ提出します。
"https://community.box.com/t5/custom/page/page-id/submit_sso_questionaire"
※1~3日後にはメールで通知が来ます。
f:id:imadafv:20190109175825p:plain

ユーザーの登録

SSOを利用するユーザーを登録します。
Boxのメニューから「ユーザーとグループ」>「ユーザーの追加」に進みます。
割り当ての追加の画面へ遷移したら「ユーザーとグループ」を選択します。
同じディレクトリ上のユーザーを追加する、もしくは外部ディレクトリのユーザーを招待することができます。
外部ユーザーを招待する場合は招待するユーザーのメールアドレスを入力し、「招待」をクリックします。
招待先にメールが飛ぶので、承認をするとAzure ADにユーザーとして追加されます。

f:id:imadafv:20190109180029p:plain

シングルサインオンのテスト

ユーザーが登録できたらシングルサインオンのテストを行います。
BoxのSSO構成画面の「Boxによるシングルサインオンのテスト」からテストを実行します。
f:id:imadafv:20190109180059p:plain

f:id:imadafv:20190109180108p:plain 「現在のユーザーとしてサインイン」を選択するとBoxの画面に遷移します。
f:id:imadafv:20190109180116p:plain

アクセスパネルアプリケーションからのサインイン

「myapps.microsoft.com」にアクセスするとAzureのアクセスパネルのページにリダイレクトされます。
Boxのパネルが追加されていますので、パネルをクリックするとパスワードを入力しなくても自動的にログインされ、Boxのホーム画面に遷移します。
f:id:imadafv:20190109180130p:plain

さいごに

今回はAzure ADからBoxへのSSOを実現するための流れをご紹介しました。
一度連携してしまえばひとつのアカウントで複数のアプリケーションへのログインが自動で行えるため、複数のアカウントを管理する必要はありません。
セキュリティ面も安心ですし、作業効率も上がります。
構成自体は非常にシンプルで、Azureのアカウントさえあれば実現可能ですのでぜひお試しください。