クラウド利用が進み、マルチクラウド環境が主流になると、複数のサービスで同一IDでログインできるようにする需要が出てきます。この複数のサービスで1つのIDを共通して利用できることをシングルサインオン(SSO)と言います。
オンプレミス環境でSSOを実現しようとした場合、ICE WALL(HP社)やActive Directory(MicroSoft)などを利用して構築・運用することが一般的でしたが、これらの製品はそもそもオンプレミス環境で利用することを前提に作られたシステムのため、今の時代にマッチしていません。
そこでクラウド/マルチクラウド時代に対応するID管理の仕組みとしてIDaaSと言われる製品の利用が主流になりつつあります。
ここではIDaaS製品のメリットと市場調査、現在注目されている商品についてまとめてみました。
1.IDaaSとは
Identity as a Serviceの略称です。SaaSやIaaSなどと同じくサービスとして利用できるID管理製品という意味で、アプリケーションで必要となる認証/認可まわりの機能を提供してくれます。
企業がアプリケーションを開発する場合、利用者に何らかの価値を提供するために開発します。一方で、アプリケーションに価値のある機能ばかりあるかと言うとそんなことはなくて、必ず必要な基本的な機能コンポーネントがいくつか存在します。代表的な例をあげると、
- サインイン/ログインなどのID管理機能
- コメントや、写真をアップロードする投稿機能
- オンライン課金や決済機能
などがあります。この中でも特にID管理機能は昨今非常に複雑になっています。ひと昔前はログインさえできればOKでしたが、今ではID管理機能と一言で言ってもかなり高機能になっており、ざっと挙げるだけでも
- IDとパスワードの管理
- パスワードリセット機能
- ログイン時、パスワード変更時などのメールでのお知らせ機能
- 個人情報の管理
- 多要素認証(MFA)
- 生体認証
- 第三者ログインの検知
などがあります。
さらに、昨今ではサーバー攻撃によるセキュリティ上のリスクも高く、これらの構築ノウハウがない場合、簡単に攻撃で突破されて、情報流出や不正利用に直結してしまい、大企業と言えども社会問題に発展してしまいます。
2.最近の情報漏洩事件
2.1.セブンペイ問題
2019年にセブン&アイ・ホールディングスのモバイル決済サービス「7pay」への不正アクセスにより、ユーザーに金銭的被害が発生してしまいました。
この不正アクセスの影響により、「7pay」サービスはサービスインからわずか数日の内にサービス停止に追い込まれてしまいました。
この件で、大きくメディアにとりあげられ一般的にも広まったのが多要素認証(MFA:Multi-Factor Authentication)です。
MFAとは、ログインの際にパスワードでの認証だけではなく複数の方式を利用する考え方です。例えば、電話番号にSMSなどを送り、登録した電話番号に認証コードを送信したり、指紋などの生体認証を追加するなどです。
しかし、そもそもの不正アクセスの原因として、リセット時にメールアドレスを変更できるようになっていたりなど様々なID関連の仕様の不備もあったようで、改めてセキュリティ面をきちんと考慮できていないシステムのリスクとリスク管理の重要性が示されました。
2.2.ドコモ口座不正利用被害
2020年9月に株式会社NTTドコモが提供する「ドコモ口座」に対し、第三者が口座内の預金を不正に利用していた事件です。
想定被害の範囲はかなりの広範囲に及び、サービスを提供しているドコモだけでなく連携している様々な地方銀行や、類似のサービスを提供している証券会社なども様々な対応に追われました。
このように日本を代表するような企業でも情報流出を完全に食い止めることはできておらず、システムの規模が大きい分社会問題にまで発展してしまい、金額的や機会の損失に繋がってしまいます。
3.IDaaS市場に関する調査
IDaaSに関しては、Gartner社が2019年に発表しているAccess Control Managementのレポートがあります。こちらではIDaaS製品に関する各社のポジションを図1のようにまとめています。

4.認証に関する主な規格
IDaaSの製品はそれぞれが完全に思い思いに作られているわけではありません。認証するがわとされる側で、認識を合わせないと動作しないからです。現在主流の規格としてSAML、OpenID、OpenIDConnect(OIDC)、OAuthなどが有名です。
5.IDaaS製品と内製の比較
IDaaSと内製で認証機能を実装するメリットとデメリットをまとめてみました。
5.1.機能面
IDaaSの場合 | 内製の場合 | |
クオリティ | ・認証/認可に必要な、基本的な機能が最初から手軽に利用できる | ・認証/認可に必要な全ての機能を全て最初から自社で開発する必要がある |
コ ス ト |
・初期コスト不要、月額or年額の利用課金 ・ID数などに比例して利用料金が上がるため、ID数が多くなりすぎると内製よりも高額になる |
・初期コストが必要(数百〜数千万規模) ・機能や連携システムが増加するほど運用が複雑になり、コストが増加する |
デリバリー | ・製品との連携箇所だけを実装をすれば良いので、1日〜1週間程度で基本的に完了する | ・構築に数ヶ月以上の時間がかかる ・認証関連の知識を豊富にもつ専門家が必要 |
5.2.非機能面
IDaaSの場合 | 内製の場合 | |
性 能 |
・IDaaS側に性能監視などの運用を任せることができる | ・自社で性能の監視、改善などの対応を実施する必要がある |
拡 張 性 |
・数千のクラウドサービスとの連携環境が最初から構築されている ・IDaaS側でカバーしていない機能がある場合、自社で対応が必要 |
・全ての機能の追加を自社で実施する必要がある |
セ キ ュ リ テ ィ |
・IDaaS側でPCI-DSSやISOなどの第三者セキュリティ企画に対応 ・脆弱性対応などはIDaaS側で対応 ・IDなどのデータをIDaaS側に保存する必要がある ・IDaaS側で情報漏えいなどがあった場合影響がある |
・セキュリティ対応に関して、全て自社で対応する必要がある ・全てのデータを自社で保有できる ・自社で情報漏えいなどの対策が必要 |
運用 ・保守性 |
・データのバックアップやサーバ・ハード保守などは全てIDaaS側で対応 ・IDaaS利用料金以外の運用コストがほとんどかからない ・すでに全世界で運用実績があるため、致命的な実装バグが少ないと考えられる ・バグがあった場合はIDaaS側の対応を待つ必要がある |
・全ての運用/保守作業を自社で実施する必要がある |
移行性 | ・ActiveDirectoryなどからのデータ移行の手段をデフォルトで提供している | ・データの移行などは自社で全て実施する必要がある |
可用性 | ・稼働率や復旧速度はIDaaSに依存する ・IDaaSが停止すると、連携している全てのサービスに影響がある ・99.9%程度 ・利用プランによってはIDaaS側でSLA(99.9%程度)を保証している ・稼働率実績はさらに高い99.9%程度 |
・可用性を担保するための様々な対応を全て自社で実施する必要がある(冗長設計、自動復旧、監視など) |
6.製品紹介
6.1.OKTA
公式サイト。2020年現在、IDaaS最大手と言われており、Gartnerのmagic quadrantでもマーケットリーダのポジションにいます。
まだ、日本ではあまり広まっていない状況ですが、2020年9月に日本法人を設立することを発表しました。
社内システムなどの従業員向けのサービスに利用されることを前提に作られており、豊富なクラウドサービスとの連携が特徴です。日本語のマニュアル等はまだ少ない状況でしたが、今後日本でのサービスも徐々に拡大していくと思われます。
6.2.Auth0
公式サイト。Oktaと比較してよりコンシュマー向けのアプリケーションで利用されることを意識した製品設計になっています。
クラウドサービスとの連携数はOktaほどはありませんが、豊富な種類のSNS認証機能(Google、FaceBook、Amazon)などを備えていることが特徴です。日本のSNSにも対応していて、Lineやdアカウントとの連携もサポートしています。
また、様々なフレームワークで利用できるプラグインが準備されており、実装も非常に簡単にできます。こちらの記事など参考にしてみてください。
6.3.OneLogin
公式サイト。早い段階から日本法人があったこともあり、日本での導入も進みつつあります。製品の位置付けとしてはOktaと非常に似ています
現状ではID数単位での料金プランしかないため、コンシュマー向けのアプリケーションに利用すると高額になる可能性が高く従業員向けのサービスと言えます。
Auth0、OneLoginはAWSのAPIGatewayなどとの連携もあり、AWSを導入している企業にとって非常り利用しやすいかもしれません。
6.4.Amazon Cognito
AWSで提供されている認証機能です。Okta、Auth0、Oneloginなどの製品と比較して、10分の1程度の料金で利用できるのですが、IDaaSというには機能が非常に限定的です。
例えばログイン画面なども他のサービスであればテンプレート画面を編集すれば良いだけのところ、1から作る必要があったりします。
6.5.AWS SSO
AWSのサービスの1つですが、Active Directoryと連携しての利用を前提としています。また、企業の子アカウントになっている場合は利用できないため利用にハードルがあります。
コンシュマー向けならCognitoを利用し、Active Directoryを利用しながら、AWS上のサービスともSSOしたいという場合はAWS SSOを利用するイメージだと思います。
6.6.Azure Active Directry
名前がActive Directryとあるので、従来のActive Directoryを思い浮かべますが、IDaaSの製品です。Azureを利用している人はこちらを採用するのも良いかもしれません。