Office 365連携に対応したIDaaS（クラウドサービスへのシングルサインオン）製品比較

2019年時点で、全世界に1億8000万人のアクティブユーザーがいると発表された「Office 365」。ライバルであるGoogleのG Suiteが「G Suite Business」と「G Suite Enterprise」を合わせても、8000万人程度と言われているので、おおよそ2倍以上のアクティブユーザーがいる。らしいです (2019/5現在)。

特に大手企業に限っては、マイクロソフトと過去からの年間契約を更新、更新してきていることが多い。G Suiteのように「Office 365と比較して、結構悩みに悩んで導入」というよりは、「昔からの契約がいつの間にかOffice 365になっていた」という場合も多いかと。つまり、意識していても、してなくても大手企業では特にユーザーはとても多い。

そんなOffice 365ユーザーが、クラウドサービスへのシングルサインオンをしたくなったときの話です。

##AD, Azure AD、Office 365とSSOについて整理

![o365_1.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/429641/6d38ba8b-ab5f-ee31-3508-5346f38c5942.jpeg)

Active Directory (AD)とOffice 365を連携させてシングルサインオンを行っている企業は多い（ユーザーは「シングルサインオンしている」ことすら意識していないだろう）。ただ、オンプレのADはクラウドサービスへのシングルサインオンは対応していないので、AWSやAtlassianやSlackにシングルサインオンできない。

こうなると、ユーザーが正しくパスワードを管理してくれているだろう、という「ユーザーの良心」を信じるほかない、という極めて危険な状態になる。つまり、ユーザーが一切パスワードを使い回さず、強固なパスワードを設定し、パスワード情報を全て「記録」ではなく「記憶」することを期待しなければいけない。つまり「無理」です。

AD導入済の企業の場合、これを防ぐための方法としては以下の2つ。

- (1)オンプレADをAzure ADに移行
- (2)オンプレADはそのままに、別にシングルサインオン製品を導入

もし、会社がADをAzure ADに移行することに前向きだったり、既にライセンスを持っている、構築用の予算を確保しているのであれば、Azure ADにするのが得策。クラウドサービスへの認証もこれで安心だし、「Azure AD」と「シングルサインオンサービス」でアカウントが別になることがない。

しかし、「ADをまだ移行できない」「予算はない」が、「ユーザーがクラウドサービスへのパスワードをずさんに管理していたため、不正アクセスが→情報漏えいが起こった」ような場合は、クラウド対応のシングルサインオン製品、通称 IDaaS (Identity as a Service) を導入する必要がある。Azure ADのように高度な端末管理が行えない分、IDaaS製品は安く導入も容易だからだ。

ちなみに、ADが入っていない企業の場合は、以下の2択になる。

- ADが入っていなくて困っているので、入れたい場合は、Azure ADを導入し、これでクラウドサービスのシングルサインオンも一緒に行う
- ADが入っていないが困っていない場合は、Azure AD入れる必要は全くないので、クラウドサービスのシングルサインオン製品のみ導入

ただ、IDaaS製品を入れたがために、管理すべきアカウント数がまた1つ増えてしまい、管理者側の工数が増大することは避けたい。よって、Office 365アカウントとシングルサインオン製品で連携を取ることで、二重の管理を避けられる。

ようやっと本題に入りますが、以下では「Office 365アカウントと、連携を取って二重管理を防げるシングルサインオン製品」を紹介していきます。

##製品比較

製品としては、ホームページから詳しい情報が取れる製品に限定。ちなみにいずれの製品もOffice 365対応を表明しており、アカウントの二重管理を防げる。

- Okta
- Onelogin
- Cloudgate Uno
- Trustlogin


|     |Okta    |Onelogin    |Cloudgate Uno   | Trustlogin|
|-----|-----|-----|-----|------|-----|
|メーカー名|Okta |Onelogin |インターナショナルシステムリサーチ | GMOグローバルサイン|
|1ユーザー当たり月額費用 (日本語対応)  |2ドル  |4ドル  |200円  |100円  |
|対応SSO先の数 (SSOテンプレート数)  |5500  |5000  |55  |5235  |

(Qiitaのマークダウンで記述する表が見にくくて、申し訳ない)

まず、OktaとOneloginはIDaaS世界大手で、それ以外の企業は日本企業。

価格は、最安値がTrustloginの100円で、最高値がOneloginの4ドル (430円)。ユーザー数が少なければ大差ないが、ユーザー数が多いと4倍以上の価格差になるので注意が必要。

そして、シングルサインオンが利用できるクラウドサービス先だが、ここが大きな差がある。Okta、Onelogin、Trustloginは5000以上のサービスに対応している反面、Cloudgate Unoは55しかない。一般的に使われているメジャーなサービスもカバーしていなかったりするので要注意。


OktaとOneloginは「どのクラウドサービスにシングルサインオンできるか」がホームページに掲載がないが、他の3製品は公開されているのでチェックするとよい。
<a href=”https://www.cloudgate.jp/lineup/sso-with-otherservices.html”>Cloudgate Unoの対応製品</a>
<a href=”https://trustlogin.com/service/index_list.html”>Trustloginの対応製品</a>

##どの製品が良いか？注意点は？

![o365_2.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/429641/8d5d1062-c8e2-4f20-f639-bf8434f96bf1.jpeg)

シングルサインオン製品をあえて導入したいということは、「複数のクラウドサービスを利用していて、その認証なりパスワード管理なりに課題を抱えている」ため。よって、各シングルサインオン製品で、自社で使っているクラウドサービスがカバーされているかどうかは最初にチェックし、カバーされていない場合は候補から落とすべき。

Cloudgate Unoは、55しかクラウドサービスに対応していないため要注意。例えば、AWSのようなメジャーなものも漏れていたりする。

後は、使えそうな製品をトライアルで使ってみて、UXや必要な機能を確認するのがよい。上記記載の「Office 365連携とクラウドへのシングルサインオンの料金」以外にかかる、オプション機能の料金体系はかなり異なる。例えば、多要素認証や、クライアント証明書、AD連携で、追加料金がかかったり、かからなかったりするので、上記記載の料金だけでなく、ご自身で正しく試算することを強く、強く推奨。

最後に注意したいのが最低利用者数。1ユーザーから利用可能なものもあれば、10ユーザー、25ユーザーなど制限があるものもある。同じ製品でも、プランごとに異なったりするので、上記表には書きませんでしたので、ご自身で要確認。

##各製品を試してみる

以下からどうぞ！

- <a href="https://www.okta.com/">Okta</a>
- <a href="https://www.onelogin.com/jp">Onelogin</a>
- <a href="https://www.cloudgate.jp/">Cloudgate Uno</a>
- <a href="https://trustlogin.com/">Trustlogin</a>