IDガバナンス&管理(IGA)を実現するOSS「midPoint」とは:midPointで学ぶIDガバナンス&管理(IGA)の基礎(1)
「IDガバナンス&管理」(IGA)についてOSS「midPoint」を利用したハンズオンで学ぶ連載。初回は、「IGAとは何か」から始め、その必要性について考えます。
皆さんは「IDガバナンス&管理」(Identity Governance and Administration:IGA)という言葉をご存じでしょうか。ユーザーのIDやパスワード、所属する組織や保持するアクセス権限などを管理する従来の「ID管理」(Identity Management:IDM)の概念を包含する、より統制(ガバナンス)を意識した概念です。企業の内部統制対応やゼロトラストネットワークへの対応を受けて近年非常に注目されており、主要なIDM製品がIGAへの対応を次々に表明しています。
本連載『midPointで学ぶ「IDガバナンス&管理」(IGA)の基礎』では、オープンソースソフトウェア(OSS)でありながらIGA機能を備えた「midPoint」を使って、ハンズオン的にIGAについて学びます。第1回となる今回は、「IGAとは何か」から始め、その必要性について考えてみます。
IDガバナンス&管理(IGA)とは
IGAの説明に入る前に、その前身であるIDMについて少し触れておきます。
「IDMの登場は2000年代前半」といわれています。多くのサービスやシステムが巨大化、複雑化の一途をたどり、一方で、複数のアプリケーション、データストアによってサービスやシステムが構成されることが多くなりました。すると、単一の巨大なデータストアでシステム全体のID管理を完結させるようなアーキテクチャは非現実的であり、複数のシステム間で整合性を保った形でID連携する必要性が高まります。
そのような背景から、「Access360」「Business Layers」「Waveset」など、「今日のIDM製品の草分け」といえる簡易的なIDプロビジョニング機能を持つ製品が登場しました。
その後、IT市場のプレイヤーの変遷や技術スタックの変化、企業買収などによって、IBMやCA Technologies、Oracleといった大手ベンダーからIDM製品が相次いでリリースされるようになります。日本においても、ベンダー製品を用いて自社の従業員のID管理を実装するケースが増えました。
2010年代に入ると、企業の社会的責任がこれまで以上に重要視されるようになります。企業の中で多様な雇用形態の人々がシステムを使うようになり、システムのID管理、アクセス制御への対応はますます重要視されました。また、幾つかの事件や事例、法制度改正などよって、「内部統制」「IT統制」という概念が強く意識されるようになりました。
これらの時代背景の中で、従来のID管理の考え方にガバナンス(統制、統治)の要素を加え新たに体系立てて再定義したものがIGAです。
経営幹部およびそのチームに対し、実行可能かつ客観的な知見を提供している企業Gartnerによる定義では、IGAは次の8要素で構成されます(出典:Gartner「IAM Leaders’ Guide to Identity Governance and Administration」Henrique Teixeira, Kevin Kampman, David Collinson, Published 5 April 2021)。
- IDライフサイクル管理(Identity Life Cycle Management)
- エンタイトルメント管理(Entitlement Management)
- ポリシー/ロール管理(Policy and Role Management)
- ワークフロー(Workflow)
- アクセス要求/アクセス認定(Access Requests Management and Access Certification)
- フルフィルメント(Fulfillment(also called “provisioning”)via automated connectors and service tickets)
- 監査(Auditing(including segregation of duties [SOD] auditing))
- 分析/レポーティング(Identity analytics and reporting)
ここからは、IGAの各要素について簡単に解説します。
要素 | 説明 |
---|---|
IDライフサイクル管理 | IDの登録から破棄までのライフサイクルを管理する機能 【例】従業員の入社から退職までの一連のイベントや、人事異動、昇進などに伴う役割の変更をトリガーに、ID更新を自動化する。従業員だけでなく、さまざまな雇用形態(派遣社員、アルバイト、パートナー企業)、社外ユーザー(顧客など)ごとに異なるライフサイクルで管理する |
エンタイトルメント管理 | エンタイトルメント情報(役割や組織に伴う資格)を管理する機能 【例】IGAシステムと連携するシステム(アプリケーション)の利用権限や、そのシステム内で何ができるかの権限(グループやロールなど)を定義する |
ポリシー/ロール管理 | ロールベースアクセスコントロール(RBAC)、属性ベースアクセスコントロール(ABAC)などの権限制御や、自動的なロールの割り当てを行う機能 |
ワークフロー | ID登録/変更や前述の「アクセス要求」に対して制御、承認する機能 |
アクセス要求/アクセス認定 | ユーザーからのロールやグループへの参加要求を可能にする(「ポリシー/ロール管理」による自動制御が難しい、例外的なアクセス権の割り当てを可能にする)機能、および、不要なアクセス権限を適切なタイミングで適切な実施者が見直しすることを支援する棚卸し機能 |
フルフィルメント | アプリケーションや、LDAP(Lightweight Directory Access Protocol)などの認証基盤にID/グループ情報、グループ所属情報などをプロビジョニングする機能 |
監査 | 現在のIDの状態、権限付与の状態を監査し、SoD(Segregation of Duties:職務分掌)違反や不適切なアカウントの存在を検出してアラートを発する機能 |
分析/レポーティング | ロールマイニング(ロールの定義を設計し、最適化する分析)や、組織内で使用するアクセス権の実態分析などのレポートを出力する機能 |
IGAという概念が定義される以前から登場している要素も多数ありますが、改めて定義付けされることによって、企業がITシステムを運用する中で実現しなければならないID管理に関する機能要素が明確になったといえるでしょう。
IDガバナンス&管理の具体的なユースケース
IGAの必要性をよりよく理解できるように、IGAの具体的なユースケースを3つ紹介します。IGAは、IDMと比較して、より業務レイヤーとの親和性が高い概念なので、日常のID管理業務を想定すると、その必要性が分かりやすいと思います。
一般的なID管理業務
一般的なID管理業務では、IDM製品を使って、人事システムなどからインポートしたユーザーを、パスワードや所属する組織、保持するアクセス権限とともに管理します。
各社員の入社や退職、異動や昇進といったイベントに合わせて、その都度所属する組織の変更や、アクセス権限の付け替えといった作業もあります。必要に応じて、各種サービスやアプリケーションなどの他システムにアカウントを連携させることもあり、このアカウント連携(フルフィルメント)はIDM製品で可能なケースもあれば、連携用のスクリプトが必要になるケースもあります。
【1】入社時のアカウント連携業務
具体的なユースケースとして、例えば入社時のアカウント連携業務を考えてみましょう。ここではIDM製品を用いた下図のような業務フローを想定します。
特にステップ【3】のアカウント連携(フルフィルメント)時は、「各システムの細かな業務要件を満たすために、連携用スクリプトが必要となり、それが複雑化してしまう」というのはよくあるケースではないでしょうか。この業務フローでIGA製品を用いると、下図のようになります。
特にステップ【2】とステップ【3】で自動化が図られ、運用コストの削減が期待できます。また、ステップ【3】のフルフィルメントを製品外部の連携スクリプトなどではなく、IGA製品で実現している点もポイントです。このようにすることで、例えば社内監査でアカウント情報の調査が必要になった際に、IGA製品を通じてアカウントの連携先が一目で分かり、情報収集の手間を省けます。
【2】アクセス権限の割り当て業務
次に、特別なアクセス権限の割り当て業務を考えてみましょう。アクセス権限によっては、上述したようにポリシーで自動的に割り当てたいものもあれば、マネジャーなどの承認を基に注意深く割り当てたいものもあるかと思います。ここではIDM製品を用いた下図のような業務フローを想定します。
業務全体を考えると、IDM製品の出番は少なく、アクセス権限の要求や承認は、メールなどIDM製品の外部で実施されています。
この業務フローでIGA製品を用いると、以下のようになります。
業務フロー全体にIGA製品が関与することで、アクター間のやりとりが削減して自動化が図られ、運用コストの削減が期待できます。また、このようにIGA製品の機能を使って業務フローを運用することで、メールベースのやりとりだと起こりやすいヒューマンエラーを軽減することもできます。さらに、アクセス要求やその承認をIGA製品で実現しているので、特定のアクセス権限について、「誰が、いつ承認したか」に関する証跡も残しやすくなり、監査対応も効率化できます。
【3】アクセス権限の棚卸し業務
最後に、社内規定にのっとったアクセス権限の棚卸し業務を考えてみましょう。ここではIDM製品を用いた下図のような業務フローを想定します。
こちらの業務も、業務全体を考えると、IDM製品の出番は少なく、棚卸し業務は主にIDM製品の外部で、セキュリティ担当者とマネジャーによって実施されています。この業務フローでIGA製品を用いると、下図のようになります。
業務フロー全体的にIGA製品が関与することで、多くのステップで自動化が図られ、運用コストの削減が期待できます。また、このようにIGA製品の機能を使って業務フローを運用することで、メールベースのやりとりだと起こりやすいヒューマンエラーを軽減することもできます。さらに、棚卸しをIGA製品で実現しているので、特定のアクセス権限について、「誰が、いつチェックしたか」に関する証跡も残しやすくなり、監査対応も効率化できます。
以上、簡単にですが、IGAの3つの具体的なユースケースを紹介しました。IGAが、IDMより一層上の業務レイヤーをターゲットとしていることを理解できたと思います。その特性によって一般的に、IDM製品は主にIT管理者の利用を想定している一方、IGA製品はIT管理者のみならず、セキュリティ担当者やマネジャー、監査員などさまざまな役割の人の利用を想定しています。
ここで紹介したユースケースは、本連載の第3回以降でより詳しく解説します。
IDガバナンス&管理製品の選択肢
この分野をカバーする製品には、どのようなものがあるでしょうか。下記のように大きく4つに分類して特徴、製品/ベンダー/サービスの例を見てみます。
分類 | 特徴 | 具体例 |
---|---|---|
IDaaSベンダー/サービス系 | 認証や認証連携のサービス提供を中心に、IGA機能への展開も始めているベンダー/サービス。2022年に入り、IGA対応を強く表明するようになってきている | Microsoft、Okta、OneLoginなど |
老舗ベンダー/サービス系 | IDM製品としての歴史が長く、近年IGAにも展開しているベンダー/サービス。いわゆる「メガベンダー」が多い | Oracle、Novel、IBM、EXGEN NETWORKSなど |
IGAベンダー/サービス系 | IGA機能を提供する方針で展開してきたベンダー/サービス。海外における採用事例が多い | SailPoint Technologies、Savientなど |
OSS系 | IDMをベースとしつつIGAを取り入れてきているOSS実装。成熟度はさまざま | midPoint、OpenIDM、Apache Syncopeなど |
上記の分類、特徴はあくまで一例であり、観点によっては別の分類、特徴の表現が適切な場合もあると思います。「どのベンダー/サービスが適切か」は利用者のニーズや背景などを踏まえて判断する必要があるでしょう。
なお、商用製品系とOSS系との対比で見た場合、一般的に、商用製品系は高機能だが柔軟なカスタマイズが不得意、OSS系は機能が限定的だが柔軟なカスタマイズが可能、といった傾向があります。
次に、OSS系についてもう少し詳しく見ていきましょう。
製品名 | 開発元 | 特徴 |
---|---|---|
midPoint | Evolveum | EU圏を中心に広く利用されるOSS。開発者のOSSに対する思いが強く、ソースコードやバイナリーを全てオープンに公開している(「有料の製品版がある」というモデルではない) |
OpenIDM | ForgeRock | OpenAMで知られるForgeRockのOSS。ForgeRockはOSS版とエンタープライズ版を明確に分けて機能提供している |
Apache Syncope | Apache Foundation | Apache Foundationで開発、メンテナンスされているOSS。ガバナンスの機能はまだカバーされていないが、シンプルなID管理機能を備えている |
同じOSS実装でも各製品で考え方にかなり違いがあります。本連載で取り扱うmidPointはEU(欧州連合)を中心に採用事例も多く完成度の高いIGAのOSS実装といえます。ピュアオープンソースであることをEvolveumのWebサイトでも強く宣言しており、OSSの理念に基づいて開発、メンテナンスされている点は注目すべきポイントです。
IDガバナンス&管理を実現するmidPoint
midPointについて、より詳細に見ていきましょう。midPointの特徴の一つは、高い機能性です。OSSでありながらも、先に紹介したIGAの8要素に対応する機能を備えており、もちろん先に紹介したユースケースも全て実現できます。
要素 | midPointの機能 |
---|---|
IDライフサイクル管理 | IDライフサイクルに沿った、IDの登録、削除、更新といった操作が可能。これらを自動化することもできる |
エンタイトルメント管理 | エンタイトルメント情報をロールや組織として表現して管理できる。連携先システムの利用権限を管理し、適宜連携先システムにプロビジョニングできる |
ポリシー/ロール管理 | アクセス権限をロールとして管理し、ポリシーで自動的に割り当てることができる。ロールの階層管理も可能 |
ワークフロー | アクセス要求を承認するワークフローを定義できる。承認結果はシステムに自動反映され、申請履歴と併せて監査ログとして記録できる |
アクセス要求/アクセス認定 | ユーザーがロール一覧から欲しいロールを選択し、割り当てを申請できる。また、棚卸しの実施方法を「キャンペーン」という形で定義し、スケジュールに沿って定期実施できる。実施結果をシステムに自動反映したり、レポートとして出力したりすることもできる |
フルフィルメント | 標準搭載の多彩なコネクターによって、数多くのシステムとID情報を同期連携できる |
監査 | IDに対して実行された操作(証跡)を、監査ログとして記録できる |
分析/レポーティング | IDの管理状態や記録された監査ログをさまざまな形式(PDF、Word、PowerPoint、HTML、CSVなど)で出力できる。リアルタイムのシステム状態をダッシュボードで確認できる |
特に、ユースケースの3つ目で紹介した「棚卸し(アクセス認定)機能」を標準で備えている点が、midPointのIGA製品としての完成度を高めている点です。ユースケースの1つ目で紹介した「フルフィルメント機能」に関しても、LDAPやCSV、RDBに接続する基本的なコネクターを標準装備し、さらに数十のアドオン可能なコネクターをOSSで公開しており、さまざまなシステムと容易に連携させることができる点が特徴的です。
なお、コネクターの一覧はこちらで見ることができます。コネクターの開発ガイドも公開されています。
さらに、豊富なカスタマイズポイントによる柔軟性も特徴の一つです。さまざまな業務要件に幅広く対応できるかどうかは、コネクターやデータモデル(ユーザー、組織、ロール)などを柔軟にカスタマイズできるかどうかにかかっています。「IDM製品を入れたはいいものの、柔軟性が不足していて幾つかの部分をスクラッチで開発しなければならなかった」というのはよくあるケースではないでしょうか。midPointはその点で、さまざまな業務要件に適応するために、コネクターやデータモデルなどを柔軟かつ容易にカスタマイズできるように作り込まれています。
次回はmidPointの環境構築
今回は、「IDガバナンス&管理(IGA)を実現するmidPointとは」と題して、IGAとそのOSS実装、midPointの概要を紹介しました。
次回は、本連載のハンズオンで使う環境を構築します。その後、今回紹介したIGA導入の効果を、構築した環境を使って体感してみましょう。
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- 特権アクセス保護/特権ID管理の本質、歴史、ID管理基盤/IDaaS(ID as a Service)との違い
古くて新しい「特権アクセス保護」について技術的内容を分かりやすく解説する連載。今回は、特権アクセス保護(PAM)の歴史と本質、具体的にどのように機能するのか、ID管理基盤/IDaaS(ID as a Service)との違いなどについて解説する。 - IDaaS分野のリーダーとされるOktaが日本に本格上陸
「IDaaS」と呼ばれるクラウド統合認証基盤の分野における有力企業であるOktaが日本法人を設立した。「クラウド」「デジタルトランスフォーメーション」「ゼロトラスト」をキーワードに、日本でのビジネス展開を本格化する。 - マイクロサービス時代のSSOを実現する「Keycloak」とは
本連載では、近年注目されている認証プロトコル「OpenID Connect」をサポートするオープンソースのシングルサインオン(SSO)ソフトウェア「Keycloak」の活用方法を解説していきます。第1回目は、APIにおける認証/認可の仕組みとKeycloakの概要を紹介します。