1. IDaaSとは
1.1 概要
IDaaS(Identity as a Service)は、SaaSやIaaSと同じように、ID管理をサービスとして提供します。
具体的には、ユーザ認証機能を持ち、また、SaaSサービスとのSAMLによる連携機能を持ち、シングルサインオンを実現します。
1.2 なぜIDaaSが必要か
これまで、多くの企業ではActive Directoryなどを使ってID管理をしてきました。
場合によってはSSOも実現してきたことでしょう。
Q.なぜ、IDaaSが必要なのでしょうか。
A.理由は単純で、Microsoft365などのクラウドサービスの利用が
拡大する中、オンプレの認証システムでは、クラウドを含めた認証ができない。
Q.ADFSを利用して、クラウドの認証基盤と連携すればいいのではないか?
★ADFSの仕組みを図で書く。
連携する場合、クラウド側はIDaaSは不要?(→たぶん不要で、ADFSがIDPになって、ADが認証サーバ、クラウドサービスがSPとしてSAMLが動作する)
ADFSのシーケンスの流れだが、ユーザ情報はAD側が持つ。ユーザアカウントだけは、SP側にも作成される(★本当?)
1.3 クラウドの認証基盤であるIDaaSを使うメリット
❶SSOそのもののメリット
・システム管理者にとって、システムごとユーザ管理やアクセス制御などを行う必要がなく、一元的にセキュリティ対策が行える
・利用者にとって、一つのIDとパスワードだけ覚えればいいので、運用が楽
❷構築、運用が楽
物理的なサーバを建て、物理的なファシリティーを安定的に確保し、冗長化して信頼性、セキュリティを保って運用するのはけっこう大変です。
❸セキュリティリスクの低減
オンプレで構築するActive Directoryには、重大な脆弱性が日々報告されています。リアルタイムにパッチを当てたりするのは大変。また、そもそも、Active Directoryは攻撃に弱いので、オンプレミスのActive Directoryは廃止するべき、という考え方もある。
その考えで廃止してAzureAD(EntraID)に移行した事例は以下
・SOMPO HDがオンプレミスのADを停止、ランサムウエア攻撃への耐性を高める
https://xtech.nikkei.com/atcl/nxt/column/18/00001/07735/
❹利用者認証の強化
パスワードによる認証しか対応していないサービスであっても、多要素認証などの認証を追加で強化できる。
1.4 IDaaSを使うデメリット
導入というか、既存の運用からIDaaSへの移行は簡単ではなく、しっかりとした移行計画が必要。
以下は、オンプレのADをAzureADに移行する場合。ただ、HENNGEのIDaaSを使う場合、ADを撤廃することはなく、共存になるだろう。
https://west-sec.com/entry/azure#15-%E3%82%AA%E3%83%B3%E3%83%97%E3%83%AC%E3%81%AEAD%E3%81%8B%E3%82%89AzureAD%E3%81%B8%E3%81%AE%E7%A7%BB%E8%A1%8C
1.5 他社サービスとの比較
❶EntraID(旧AzureAD)との比較
Q.EntraIDなら無料で利用できるのではないの?
A.以下がEntraIDの料金プランで、無料で利用できるものもあります。ですが、企業向けになると有料プランを選択することになります。
https://www.microsoft.com/ja-jp/security/business/microsoft-entra-pricing
プラン | Free | P1 | P2 | Entra Suite |
---|---|---|---|---|
料金 | 無料 | 899円/ユーザ・月 | 1349円/ユーザ・月 | 1799円/ユーザ・月 |
機能 | ★要確認 | 条件付きアクセスなど | ||
その他 | Microsoft 365 E3、Microsoft 365 Business Premium に含まれる | Microsoft 365 E5 に含まれる |
・HENNGEの場合、Basicプラン(300円/ユーザ・月)、Pro(500円/ユーザ・月)であり、価格が安い。
また、操作性は非常に高いと思われる。
・条件付きアクセスに関しては、EntraIDの方が優れていると思われる。具体的には、IPアドレスや証明書以外に、デバイスの種類(★具体的には?)、ブラウザの種類も条件に加えることができる。HENNGEの場合、M365のように外部と資産管理ソフトの連携して、条件付きアクセスを強化することもできない。
https://zenn.dev/takuyaot/books/45d4f4494a63ce/viewer/b4511a
・HENNGEの場合、Intuneと連携した端末の制御ができない。あくまでも認証機能のみ。
2 HENNGE ONE
2.1概要
HENNGE社のIDaaSサービスは、HENNGE ONEの「Identity Edition」です。
https://hennge.com/jp/service/one/identity/
上記サイトより以下の画像を引用
機能としては、たとえば以下の機能を持ちます。
・シングルサインオン
・アクセス制御
・Active Directory連携
・ID管理機能API
・アクセスログ
2.2 HENNGE Oneが連携する外部サービス
以下に記載されています。かなりたくさんあります。
https://support.hdeone.com/hc/ja/articles/23952460315673-HENNGE-One%E3%81%8C%E9%80%A3%E6%90%BA%E3%81%99%E3%82%8B%E5%A4%96%E9%83%A8%E3%82%B5%E3%83%BC%E3%83%93%E3%82%B9
2.3 ユーザの管理について
・IDaaS側でユーザとパスワードを持つ
・SP側でもユーザ情報は持つが、パスワード情報は持たない(★あってる?)。
・IDaaS側でユーザのグループは管理できない。SP側でグループや属性を管理する必要がある。
・動作として、ユーザがログインするには、SPのURLにアクセスすると、IDPにリダイレクトされる。そこでIDとPASSを入れる
・7. なぜユーザ以外のUPN(会議室や備品)をonmicroにする必要があるのか? ★よくわからない。
- 人間ではないユーザはM365上に存在する場合、HENNGEとのID同期の際にM365側でユーザ情報が消えてしまう。
(HENNGE推奨のID同期では、ID情報をHENNGEの側に合わせるため)
2.4 システム構成
(1)HENNGEを使った基本構成
・ローカルのアプリケーションは、ローカルのADサーバ等で認証をする。
・クラウドのアプリケーションに関しては、HENNGEのIDaaSを使ってSSOで認証をする。
・HENNGEでは、ユーザ情報として、たとえば、user1@hng.west.comのようなUserPrincipalName (UPN)で管理する。(★あってる?なぜドメイン名を付与する?)。SPが複数あり、たとえばSP1、SP2とあって、どちらも同じユーザ名を使いたい場合、どちらもuser1@hng.west.comでログイン可能?(★あってる?)
(2)ローカルADサーバとの連携
多くの企業はローカルのADサーバが統合認証基盤ですが、HENNGEを使った場合、そのADサーバとの連携をどうするのでしょうか。
・基本的には、ローカルの認証とクラウドの認証は、別物と考えた方がいいでしょう。なので、連携せずに、別々に運用する。つまりユーザアカウントの管理も別々(2重管理)
・だから、HENNGEを使って、ローカルのADを撤廃することはできない。
・ユーザ情報の一元化を目的として、連携は可能。その場合、HENNGEがIdP+認証サーバとして機能する。連携のためにHENNGE Directory Sync Toolというエージェントのインストールが必要↓。実際にどういう動きをするのかは要確認★
support.hdeone.com
(3)EntraID(AzureAD)との連携
・M365のサービスを使う場合、EntraIDは必須になる。なので、HENNGEとEntraIDで認証連携をする。
・M365からすると、認証サーバ(というかIdP)はEntraIDになり、EntraIDからHENNGEに認証連携をする。
・シーケンスとしては、以下の2つがあると思う。
1)ユーザを登録したとき
2)ユーザがSPであるM365にアクセスがあったとき
3.実際の設定
3.1 ログイン
・以下、ログイン画面です。管理者は、ユーザー名とパスワードを入れてログインします。
・メニュー画面は以下です。
・一般ユーザがHENNGEにログインすることは可能。その場合、できることは自分のパスワード変更くらい?★要確認
3.2 ユーザー管理
ユーザーの管理として、ユーザを追加、変更、削除をします。
(1)ユーザの管理について
・たとえば、サービスAのユーザIDとサービスBのユーザIDも、どちらもuser3を使いたい場合、どちらも同じくuser3を設定する。★このときの入れ方は?
・仮に、サービスAのIDがUPN、サービスBのIDが社員番号であった場合、HENNGEの機能(カスタム属性)で社員番号という項目を新たに設定する必要がある。
ユーザ名 | user3 |
---|---|
UPN | user3@hng.west-sec.com |
社員番号 | 1234567 |
(2)ユーザの追加
・ユーザー > ユーザー一覧、上の「+追加」を押す。
手順は、ここに記載があります。
・ユーザ情報を設定する。
以下、最後のところで、どのSPで利用するかのチェックを入れる。
3.3 認証強化
(1)証明書のログイン
管理画面から証明書を発行し、PCに入れる
PWなしで証明書だけでログインもできる。
証明書の編集で、ログインタブを「個人」→「パスワードレス」に変更
・アクセスポリシーグループで、証明書が必要とかを選択できて、それをユーザに1人ずつ適用する。
(2)ワンタイムパスワード設定
管理画面の右上から、設定
4.SAML連携
4.1 全体像
SPに対して、HENNGEがIdPおよび認証サーバとなって、SSOを実現します。
設定の流れは以下です。
・HENNGEにSPの設定を入れる
・SP側にIdPの設定を入れる
・HENNGE側にsalesforceのユーザ情報の登録
(・認証情報が同期される★あってる?)
・利用者がSPへアクセスすると、HENNGEに対して認証後、サービスを利用できる
4.2 SPの設定
SPの設定は、システム > サービスプロバイダ設定 、右上の「+サービスプロバイダの追加」を押す。
「サービスを手動で追加」を押して、以下の画面を設定する。
5.Microsoft製品との連携
5.1 全体像
・Microsoftとの連携は他のクラウドサービスとは違う。HENNGEのとSPの間にEntraIDが入り、EntraIDとはWS-Fed(★何?)で連携する。