SlideShare a Scribd company logo
1 of 26
Download to read offline
Keycloak & midPoint の紹介
OSSセキュリティ技術の会 第⼋回勉強会
1Copyright(C) Nomura Research Institute, Ltd. All rights reserved.
n和⽥ 広之 @wadahiro
n主にOSS系担当 (OpenStandiaチーム所属)
n最近のOSSコミュニティ活動
l Keycloakドキュメント⽇本語化
l KeycloakのToken Exchange強化(SAML 2.0トークン対応)
l KeycloakのFAPI Conformance suite対応
l mrparkers/terraform-provider-keycloak、Terraformerの機能強化
l midPoint⽇本語化
l Box⽤のmidPointコネクタ開発
l Amazon Cognito User Pool⽤のmidPointコネクタ開発
⾃⼰紹介
2Copyright(C) Nomura Research Institute, Ltd. All rights reserved.
Keycloak & midPoint 活⽤事例
midPoint とは01
02
3Copyright(C) Nomura Research Institute, Ltd. All rights reserved.
1. midPoint とは
4Copyright(C) Nomura Research Institute, Ltd. All rights reserved.
nOSSのIGAプラットフォーム
nIGA=従来のIDMに加えて、ガバナンス機能を強化
nApache License 2.0 / European Union Public License (EUPL) のデュアルライセンス
nスロバキアにある Evolveum 社のメンバーが中⼼となって2011年より開発
n元々はForgeRock社と協⼒してOpenIDM 1系として開発されていたが、ForgeRock社が突
然の⽅針転換により2系をスクラッチ開発したため、midPointという別プロジェクトを開始
midPoint とは
CEO/共同設⽴者の Igor アーキテクト/共同設⽴者の Radovan コア開発者の Katarina
5Copyright(C) Nomura Research Institute, Ltd. All rights reserved.
n両者を組み合わせることで、IAMの広範囲をOSSでカバーすることが可能に
n特にEIAM (従業員のIAM) 分野では、IDM・IGA の要素が必要なことが多い
Keycloak単体では⾜りないところをmidPointで補完が可能
Keycloak
App
App Directory Server
Directory Server
App
HRmidPoint
SaaS
AM
(アクセス管理)
IDM (ID管理) / IGA
6Copyright(C) Nomura Research Institute, Ltd. All rights reserved.
n データモデル、ワークフロー、管理画⾯、各種コネクタなど、ID管理に必要な機能が標準で組み込まれており、すべて
インストール直後から利⽤可能 (Out-of-the-boxなプロダクト)
n midPointの思想から⼤きく外れた要件がなければ、
カスタマイズ開発なしで多くのユースケースをカバーすることが可能
(導⼊コストの抑制、⾼い保守性を確保)
n 各種コネクタにおいては、CSV、LDAP、Active Directory、
RDB、Office 365 などのメジャーなIDプロビジョニング先
に対応
n Gartner社の 「アイデンティティ(ID)/アクセス管理に
おけるOSS利⽤の選択肢︓2017年版」にて、
IGA機能に関して⾼評価
完成度の⾼いID管理プロダクト
出所︓https://www.slideshare.net/Evolveum/evolveum-midpoint-deployment-example
7Copyright(C) Nomura Research Institute, Ltd. All rights reserved.
nEU-FOSSA (Free and Open Source Software Auditing) による⽀援を受けている
nEU-FOSSA とは、EU Commission (欧州委員会) にて⽴ち上げられたFree/OSSを⽀援するプ
ロジェクト
nEU機関内で多数のFree/OSSに依存している中、2014年のOpenSSLのHeartbleed脆弱性
問題を契機に設⽴された
nEU内で重要と位置付けられているFree/OSSの改善を⽀援しており、midPointもその⼀つ
l バグバウンティグコンテストを開催
l Hackathonの開催
EUによる強⼒なバックアップ
8Copyright(C) Nomura Research Institute, Ltd. All rights reserved.
n Education
l University of Western Ontario
l University of Illinois
l Colorado State University
l その他多数
n Government
l EU Commission
l Turkey
l Slovenia
l Estonia
n Insurance
l Union
l WWK
n Banking
l First United Bank & Trust
l B&N Bank
midPoint は様々な分野・ワールドワイドで広く使われている
出所︓https://evolveum.com/partners/find-a-partner/
9Copyright(C) Nomura Research Institute, Ltd. All rights reserved.
n基本的なモデルとして下記の4つのオブジェクトタイプを⽤意
l UserType
• いわゆるユーザーを管理するためのモデル
l RoleType
• ビジネスロールやシステムロールなど、役割を定義するグループモデル
l OrgType
• 組織に特化したグループモデルで、プロジェクトや会社・本部・部署・課といったものを管理するためのモデル
• RoleTypeと異なり、階層構造で管理が可能
l ServiceType
• モバイルデバイス、プリンタ、サーバー・仮想マシン、IoT機器といった物を管理するためのモデル
• ロールの⼀種として働く
標準で4つのデータモデルを提供
10Copyright(C) Nomura Research Institute, Ltd. All rights reserved.
階層型組織・プロジェクト組織の両⽅に対応可能
データモデル
n複数の組織グループを定義可能 (会社とプロジェクトなど)
nユーザーは複数の組織に所属可能であり、またその関係性に属性をもたせられる
出所︓https://wiki.evolveum.com/display/midPoint/Organizational+Structure
11Copyright(C) Nomura Research Institute, Ltd. All rights reserved.
nmidPoint ではロール・組織・サービスをアサインすることで様々な制御を⾏う
l 連携先へのプロビジョニング可否 (ロールベース・プロビジョニング)
l midPoint の API に対する認可制御
l midPoint の GUI 表⽰制御
l ポリシーによる制御
• 属性更新やアサインなどをトリガーにしてあるアクションを実⾏するというルールを定義できる
• アクションの種類
• 処理を中断してエラー
• ワークフローの開始
• ID棚卸の開始
• カスタムスクリプト処理の実⾏
• etc.
nロール・組織・サービスを⾃動的にアサインする仕組みも提供
アサインを中⼼とした制御
12Copyright(C) Nomura Research Institute, Ltd. All rights reserved.
n基本的にはルールベースでアサインすべきだが、⾃動化できない例外ケースに対してはワークフロー
によるアサイン制御が必要
nmidPoint では申請者が⾃分でロール要求を⾏うための UI を標準で提供
セルフサービスによるアクセス要求・承認ワークフロー
13Copyright(C) Nomura Research Institute, Ltd. All rights reserved.
nユーザーのアクセス権限が組織のポリシーに従っているかどうか、定期的またはアドホックに管理者
にユーザーのアクセス権限のチェックを要求すること
nmidPoint では Access Certification(または Campaign)と呼ばれる
n承認ワークフローと似ているが、棚卸に特化した機能として提供されている
ID棚卸機能
申請
承認
反映
ワークフロー
ピックアップ
取消
反映
ID棚卸し
14Copyright(C) Nomura Research Institute, Ltd. All rights reserved.
動作イメージ
ID棚卸機能
n棚卸対象のアカウントが⾃動的にピックアップされ、レビュアーである管理者に確認依頼がアサイ
ンされる
n管理者はロールの付与を継続(Accept)、取消(Revoke)などを判断
n棚卸期間完了後、結果が⾃動反映される
15Copyright(C) Nomura Research Institute, Ltd. All rights reserved.
2. Keycloak & midPoint 活⽤事例
16Copyright(C) Nomura Research Institute, Ltd. All rights reserved.
プロジェクト概要
Keycloak & midPoint 活⽤事例
n開発管理統合サービス 「aslead」 のNRI向け環境の IAM に Keycloak & midPoint を適⽤
naslead とは?
l チャットツール、タスクの管理、ナレッジの共有など、業務に必要な機能をオールインワンで提供するNRIのパッ
ケージサービス
l ⽶国のMattermost社のチャットツールであるMattemostのほか、オーストラリアのAtlassian社が提供するタスク
管理のJiraと、ドキュメントやナレッジを共有するConfluenceの3つをベースにしている
17Copyright(C) Nomura Research Institute, Ltd. All rights reserved.
プロジェクト概要
Keycloak & midPoint 活⽤事例
n aslead 環境はテナントごとに構築
n 認証は各プロダクト毎にローカル認証 (SSOなし)
n ID管理はExcelによる申請書ベース
l ID登録、アクセス権付与 etc.
n 利⽤ユーザーは社員・派遣社員・ビジネスパートナー
n NRIオフィス内のネットワークからのみアクセス可
AWS Cloud
Jira, Confluence etc.
NRI corporate
Tenant
18Copyright(C) Nomura Research Institute, Ltd. All rights reserved.
プロジェクト概要
Keycloak & midPoint 活⽤事例
n aslead 環境はテナントごとに構築
n 認証は各プロダクト毎にローカル認証 (SSOなし)
n ID管理はExcelによる申請書ベース
l ID登録、アクセス権付与 etc.
n 利⽤ユーザーは社員・派遣社員・ビジネスパートナー
n NRIオフィス内のネットワークからのみアクセス可
AWS Cloud
Jira, Confluence etc.
NRI corporate
Tenant
n テナント横断サービスを共通サービス化 (Mattermost,
認証⽤LDAPなど)
n SSOによるセキュリティ・利便性向上
n ID管理を⾃動化・ガバナンス強化
n 利⽤ユーザーは社員・派遣社員・ビジネスパートナーだ
けでなく、社外のビジネスパートナー・顧客も対象に
n インターネットからのアクセスも可能に
19Copyright(C) Nomura Research Institute, Ltd. All rights reserved.
システム構成
Shared Services
AWS Cloud
Azure
NRI Data center
ECS Cluster
keycloak
keycloak-
gatekeeper
midPoint
Active Directory / ADFS
Azure AD
Jira, Confluence etc.
NRI corporate
Internet
Tenant
IDM
LDAP
Source Importing
Employee
Employee
Business
Partner
Customer
Business
Partner
HR
Mattermost, etc.
SaaS
Box
・・・
ID Provisioning
CSV
20Copyright(C) Nomura Research Institute, Ltd. All rights reserved.
システム構成
Shared Services
AWS Cloud
Azure
NRI Data center
ECS Cluster
keycloak
keycloak-
gatekeeper
midPoint
Active Directory / ADFS
Azure AD
Jira, Confluence etc.
NRI corporate
Internet
Tenant
IDM
LDAP
Source Importing
Employee
Employee
Business
Partner
Customer
Business
Partner
HR
Mattermost, etc.
SaaS
Box
・・・
ID Provisioning
CSV
構築範囲
21Copyright(C) Nomura Research Institute, Ltd. All rights reserved.
SSO連携先システム・サービス
システム構成
n midPoint (OpenID Connect)
n Mattermost (SAML)
n JIRA (SAML)
n Confluence (SAML)
n GitLab (SAML)
n NextCloud (SAML)
n Box (SAML)
n Grafana (OpenID Connect)
n AWSマネジメントコンソール (SAML)
n Amazon AppStream2 (SAML)
n aws-cli (SAML + OpenID Connect)
n 社内システム (OpenID Connect)
n ・・・ (拡⼤中)
ロールカタログから使いたいサービス
に対してアクセス要求を出す
アクセス権がないとSSO時にエラー
22Copyright(C) Nomura Research Institute, Ltd. All rights reserved.
Keycloak & midPoint インテグレーションのポイント
Keycloak & midPoint 活⽤事例
n オーバーラップしている機能をどちらに寄せるか考える必要あり
l たとえば以下の機能など
• 画⾯からの新規ユーザー登録作業
• セルフパスワードリセット
• プロフィール編集
• 初回ログイン時のパスワード強制
l Keycloakに寄せる場合、SPIを拡張してmidPoint との連携が必要になるケースも
n 認証DB
l LDAPにすると作り物が少なくて済む
• Keycloak は標準でLDAPをユーザーデータストアとして利⽤可能 (UserFederation)
• midPoint も標準でLDAPにユーザー情報をプロビジョニング可能
• aslead としてはMattermost、JIRA、ConfluenceなどのアプリケーションがLDAPに対応しているのでLDAPの⽅が都合が良いという⾯も
l LDAP以外を利⽤する場合は、UserFederationのカスタム開発やmidPointコネクターの開発が必要に
n SSO時のアクセスコントロールは作り込みが必要
l Keycloak的にはAuthorization Serviceがあるが、アプリケーション側で認可制御が必要となる
l Keycloak SPI拡張による実装⽅法は⾊々考えられるが、aslead ではカスタム Protocol Mapper/カスタム Protocol で実装
l ちょうど keycloak-dev にて議論中: https://groups.google.com/forum/#!topic/keycloak-dev/44CPivh6jFY
23Copyright(C) Nomura Research Institute, Ltd. All rights reserved.
まとめ
24Copyright(C) Nomura Research Institute, Ltd. All rights reserved.
nmidPointは、ワールドワイドで採⽤されているOSS IGAプラットフォーム
nGartner社による⾼評価、EU機関での採⽤を受けてここ数年で利⽤拡⼤中
n他の OSS ID管理プロダクトにはないユニークな機能を搭載
n特にEIAM(従業員のIAM)分野で、Keycloak単体では不⾜する部分を埋めることが可能
まとめ
Keycloak & midPoint の紹介

More Related Content

What's hot

モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)NTT DATA Technology & Innovation
 
Kubernetes Service Account As Multi-Cloud Identity / Cloud Native Security Co...
Kubernetes Service Account As Multi-Cloud Identity / Cloud Native Security Co...Kubernetes Service Account As Multi-Cloud Identity / Cloud Native Security Co...
Kubernetes Service Account As Multi-Cloud Identity / Cloud Native Security Co...Preferred Networks
 
ゼロトラスト・アーキテクチャを無料で(やれるだけ)実現する
ゼロトラスト・アーキテクチャを無料で(やれるだけ)実現するゼロトラスト・アーキテクチャを無料で(やれるだけ)実現する
ゼロトラスト・アーキテクチャを無料で(やれるだけ)実現するKeioOyama
 
Azure AD とアプリケーションを SAML 連携する際に陥る事例と対処方法について
Azure AD とアプリケーションを SAML 連携する際に陥る事例と対処方法についてAzure AD とアプリケーションを SAML 連携する際に陥る事例と対処方法について
Azure AD とアプリケーションを SAML 連携する際に陥る事例と対処方法についてShinya Yamaguchi
 
MQTTとAMQPと.NET
MQTTとAMQPと.NETMQTTとAMQPと.NET
MQTTとAMQPと.NETterurou
 
シリコンバレーの「何が」凄いのか
シリコンバレーの「何が」凄いのかシリコンバレーの「何が」凄いのか
シリコンバレーの「何が」凄いのかAtsushi Nakada
 
3分でわかるAzureでのService Principal
3分でわかるAzureでのService Principal3分でわかるAzureでのService Principal
3分でわかるAzureでのService PrincipalToru Makabe
 
SPAセキュリティ入門~PHP Conference Japan 2021
SPAセキュリティ入門~PHP Conference Japan 2021SPAセキュリティ入門~PHP Conference Japan 2021
SPAセキュリティ入門~PHP Conference Japan 2021Hiroshi Tokumaru
 
OSS活動の活発さと評価の関係について
OSS活動の活発さと評価の関係についてOSS活動の活発さと評価の関係について
OSS活動の活発さと評価の関係についてTakuto Wada
 
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDayマイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay都元ダイスケ Miyamoto
 
本当は恐ろしい分散システムの話
本当は恐ろしい分散システムの話本当は恐ろしい分散システムの話
本当は恐ろしい分散システムの話Kumazaki Hiroki
 
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)NTT DATA Technology & Innovation
 
SCUGJ第22回勉強会:オンプレのL2 NetworkをAzureに延伸? Azure Extended Network
SCUGJ第22回勉強会:オンプレのL2 NetworkをAzureに延伸? Azure Extended NetworkSCUGJ第22回勉強会:オンプレのL2 NetworkをAzureに延伸? Azure Extended Network
SCUGJ第22回勉強会:オンプレのL2 NetworkをAzureに延伸? Azure Extended Networkwind06106
 
OpenID ConnectとAndroidアプリのログインサイクル
OpenID ConnectとAndroidアプリのログインサイクルOpenID ConnectとAndroidアプリのログインサイクル
OpenID ConnectとAndroidアプリのログインサイクルMasaru Kurahayashi
 
単なるキャッシュじゃないよ!?infinispanの紹介
単なるキャッシュじゃないよ!?infinispanの紹介単なるキャッシュじゃないよ!?infinispanの紹介
単なるキャッシュじゃないよ!?infinispanの紹介AdvancedTechNight
 
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)NTT DATA Technology & Innovation
 

What's hot (20)

モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
 
IDガバナンス&管理の基礎
IDガバナンス&管理の基礎IDガバナンス&管理の基礎
IDガバナンス&管理の基礎
 
Kubernetes Service Account As Multi-Cloud Identity / Cloud Native Security Co...
Kubernetes Service Account As Multi-Cloud Identity / Cloud Native Security Co...Kubernetes Service Account As Multi-Cloud Identity / Cloud Native Security Co...
Kubernetes Service Account As Multi-Cloud Identity / Cloud Native Security Co...
 
NGINXをBFF (Backend for Frontend)として利用した話
NGINXをBFF (Backend for Frontend)として利用した話NGINXをBFF (Backend for Frontend)として利用した話
NGINXをBFF (Backend for Frontend)として利用した話
 
ゼロトラスト・アーキテクチャを無料で(やれるだけ)実現する
ゼロトラスト・アーキテクチャを無料で(やれるだけ)実現するゼロトラスト・アーキテクチャを無料で(やれるだけ)実現する
ゼロトラスト・アーキテクチャを無料で(やれるだけ)実現する
 
Azure AD とアプリケーションを SAML 連携する際に陥る事例と対処方法について
Azure AD とアプリケーションを SAML 連携する際に陥る事例と対処方法についてAzure AD とアプリケーションを SAML 連携する際に陥る事例と対処方法について
Azure AD とアプリケーションを SAML 連携する際に陥る事例と対処方法について
 
MQTTとAMQPと.NET
MQTTとAMQPと.NETMQTTとAMQPと.NET
MQTTとAMQPと.NET
 
シリコンバレーの「何が」凄いのか
シリコンバレーの「何が」凄いのかシリコンバレーの「何が」凄いのか
シリコンバレーの「何が」凄いのか
 
3分でわかるAzureでのService Principal
3分でわかるAzureでのService Principal3分でわかるAzureでのService Principal
3分でわかるAzureでのService Principal
 
SPAセキュリティ入門~PHP Conference Japan 2021
SPAセキュリティ入門~PHP Conference Japan 2021SPAセキュリティ入門~PHP Conference Japan 2021
SPAセキュリティ入門~PHP Conference Japan 2021
 
Keycloak入門
Keycloak入門Keycloak入門
Keycloak入門
 
OSS活動の活発さと評価の関係について
OSS活動の活発さと評価の関係についてOSS活動の活発さと評価の関係について
OSS活動の活発さと評価の関係について
 
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDayマイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay
 
本当は恐ろしい分散システムの話
本当は恐ろしい分散システムの話本当は恐ろしい分散システムの話
本当は恐ろしい分散システムの話
 
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
PostgreSQLのロール管理とその注意点(Open Source Conference 2022 Online/Osaka 発表資料)
 
SCUGJ第22回勉強会:オンプレのL2 NetworkをAzureに延伸? Azure Extended Network
SCUGJ第22回勉強会:オンプレのL2 NetworkをAzureに延伸? Azure Extended NetworkSCUGJ第22回勉強会:オンプレのL2 NetworkをAzureに延伸? Azure Extended Network
SCUGJ第22回勉強会:オンプレのL2 NetworkをAzureに延伸? Azure Extended Network
 
Keycloakの最近のトピック
Keycloakの最近のトピックKeycloakの最近のトピック
Keycloakの最近のトピック
 
OpenID ConnectとAndroidアプリのログインサイクル
OpenID ConnectとAndroidアプリのログインサイクルOpenID ConnectとAndroidアプリのログインサイクル
OpenID ConnectとAndroidアプリのログインサイクル
 
単なるキャッシュじゃないよ!?infinispanの紹介
単なるキャッシュじゃないよ!?infinispanの紹介単なるキャッシュじゃないよ!?infinispanの紹介
単なるキャッシュじゃないよ!?infinispanの紹介
 
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
 

Similar to Keycloak & midPoint の紹介

Cloud stack概要とaccel認定試験のご紹介
Cloud stack概要とaccel認定試験のご紹介Cloud stack概要とaccel認定試験のご紹介
Cloud stack概要とaccel認定試験のご紹介Tadashi Mishima
 
Open stack概要とよくある議論
Open stack概要とよくある議論Open stack概要とよくある議論
Open stack概要とよくある議論shintaro mizuno
 
Open stack概要 lpi-opcelサミット(当日用)
Open stack概要 lpi-opcelサミット(当日用)Open stack概要 lpi-opcelサミット(当日用)
Open stack概要 lpi-opcelサミット(当日用)shintaro mizuno
 
The way to a smart factory armed with data utilization
The way to a smart factory armed with data utilizationThe way to a smart factory armed with data utilization
The way to a smart factory armed with data utilizationDataWorks Summit
 
OpenStack最新動向と構築のポイント - EMC様セミナー 「あなたのビジネスを高速化! OpenStackが実現する戦略的なクラウドインフラ」
OpenStack最新動向と構築のポイント - EMC様セミナー 「あなたのビジネスを高速化! OpenStackが実現する戦略的なクラウドインフラ」OpenStack最新動向と構築のポイント - EMC様セミナー 「あなたのビジネスを高速化! OpenStackが実現する戦略的なクラウドインフラ」
OpenStack最新動向と構築のポイント - EMC様セミナー 「あなたのビジネスを高速化! OpenStackが実現する戦略的なクラウドインフラ」Nobuyuki Tamaoki
 
Interop2014 - OpenStackの概要と最新技術動向(Icehouse)
Interop2014 - OpenStackの概要と最新技術動向(Icehouse)Interop2014 - OpenStackの概要と最新技術動向(Icehouse)
Interop2014 - OpenStackの概要と最新技術動向(Icehouse)irix_jp
 
Wot2015 微博平台护城河-构建高效的防御体系-王关胜
Wot2015 微博平台护城河-构建高效的防御体系-王关胜Wot2015 微博平台护城河-构建高效的防御体系-王关胜
Wot2015 微博平台护城河-构建高效的防御体系-王关胜Weibo Corporation
 
Otrs&OTOBO_document 20210402
Otrs&OTOBO_document 20210402Otrs&OTOBO_document 20210402
Otrs&OTOBO_document 20210402IO Architect Inc.
 
st2でシステム管理
st2でシステム管理st2でシステム管理
st2でシステム管理You&I
 
OSC2013 Tokyo Spring OpenStack Overview
OSC2013 Tokyo Spring OpenStack OverviewOSC2013 Tokyo Spring OpenStack Overview
OSC2013 Tokyo Spring OpenStack Overviewirix_jp
 
2015.6.5 EMC主催OpenStackセミナー - 日本仮想化技術様講演スライド
2015.6.5 EMC主催OpenStackセミナー - 日本仮想化技術様講演スライド2015.6.5 EMC主催OpenStackセミナー - 日本仮想化技術様講演スライド
2015.6.5 EMC主催OpenStackセミナー - 日本仮想化技術様講演スライドEMC Japan
 
OpenStack最新動向と構築のポイント - EMC様セミナー 「あなたのビジネスを高速化! OpenStackが実現する戦略的なクラウドインフラ」
OpenStack最新動向と構築のポイント - EMC様セミナー 「あなたのビジネスを高速化! OpenStackが実現する戦略的なクラウドインフラ」OpenStack最新動向と構築のポイント - EMC様セミナー 「あなたのビジネスを高速化! OpenStackが実現する戦略的なクラウドインフラ」
OpenStack最新動向と構築のポイント - EMC様セミナー 「あなたのビジネスを高速化! OpenStackが実現する戦略的なクラウドインフラ」VirtualTech Japan Inc.
 
CLOUDIAN at Support Engineer Night
CLOUDIAN at Support Engineer NightCLOUDIAN at Support Engineer Night
CLOUDIAN at Support Engineer NightCLOUDIAN KK
 
コロナ禍の働き方のニューノーマル~NRIの数千人のテレワークを支えたサービスとは~
コロナ禍の働き方のニューノーマル~NRIの数千人のテレワークを支えたサービスとは~コロナ禍の働き方のニューノーマル~NRIの数千人のテレワークを支えたサービスとは~
コロナ禍の働き方のニューノーマル~NRIの数千人のテレワークを支えたサービスとは~aslead
 
ぐるなびが活用するElastic Cloud
ぐるなびが活用するElastic Cloudぐるなびが活用するElastic Cloud
ぐるなびが活用するElastic CloudElasticsearch
 
Introduction to NetOpsCoding
Introduction to NetOpsCodingIntroduction to NetOpsCoding
Introduction to NetOpsCodingTaiji Tsuchiya
 
OSSコミッタの生活とその必要性
OSSコミッタの生活とその必要性OSSコミッタの生活とその必要性
OSSコミッタの生活とその必要性Hirofumi Ichihara
 
IoT プラットフォーム「SORACOM」 20151202版
IoT プラットフォーム「SORACOM」 20151202版 IoT プラットフォーム「SORACOM」 20151202版
IoT プラットフォーム「SORACOM」 20151202版 SORACOM,INC
 
2014年を振り返る 今年の技術トレンドとDockerについて
2014年を振り返る 今年の技術トレンドとDockerについて2014年を振り返る 今年の技術トレンドとDockerについて
2014年を振り返る 今年の技術トレンドとDockerについてMasahito Zembutsu
 

Similar to Keycloak & midPoint の紹介 (20)

Cloud stack概要とaccel認定試験のご紹介
Cloud stack概要とaccel認定試験のご紹介Cloud stack概要とaccel認定試験のご紹介
Cloud stack概要とaccel認定試験のご紹介
 
ベンダーロックインフリーのビジネスクラウドの世界
ベンダーロックインフリーのビジネスクラウドの世界ベンダーロックインフリーのビジネスクラウドの世界
ベンダーロックインフリーのビジネスクラウドの世界
 
Open stack概要とよくある議論
Open stack概要とよくある議論Open stack概要とよくある議論
Open stack概要とよくある議論
 
Open stack概要 lpi-opcelサミット(当日用)
Open stack概要 lpi-opcelサミット(当日用)Open stack概要 lpi-opcelサミット(当日用)
Open stack概要 lpi-opcelサミット(当日用)
 
The way to a smart factory armed with data utilization
The way to a smart factory armed with data utilizationThe way to a smart factory armed with data utilization
The way to a smart factory armed with data utilization
 
OpenStack最新動向と構築のポイント - EMC様セミナー 「あなたのビジネスを高速化! OpenStackが実現する戦略的なクラウドインフラ」
OpenStack最新動向と構築のポイント - EMC様セミナー 「あなたのビジネスを高速化! OpenStackが実現する戦略的なクラウドインフラ」OpenStack最新動向と構築のポイント - EMC様セミナー 「あなたのビジネスを高速化! OpenStackが実現する戦略的なクラウドインフラ」
OpenStack最新動向と構築のポイント - EMC様セミナー 「あなたのビジネスを高速化! OpenStackが実現する戦略的なクラウドインフラ」
 
Interop2014 - OpenStackの概要と最新技術動向(Icehouse)
Interop2014 - OpenStackの概要と最新技術動向(Icehouse)Interop2014 - OpenStackの概要と最新技術動向(Icehouse)
Interop2014 - OpenStackの概要と最新技術動向(Icehouse)
 
Wot2015 微博平台护城河-构建高效的防御体系-王关胜
Wot2015 微博平台护城河-构建高效的防御体系-王关胜Wot2015 微博平台护城河-构建高效的防御体系-王关胜
Wot2015 微博平台护城河-构建高效的防御体系-王关胜
 
Otrs&OTOBO_document 20210402
Otrs&OTOBO_document 20210402Otrs&OTOBO_document 20210402
Otrs&OTOBO_document 20210402
 
st2でシステム管理
st2でシステム管理st2でシステム管理
st2でシステム管理
 
OSC2013 Tokyo Spring OpenStack Overview
OSC2013 Tokyo Spring OpenStack OverviewOSC2013 Tokyo Spring OpenStack Overview
OSC2013 Tokyo Spring OpenStack Overview
 
2015.6.5 EMC主催OpenStackセミナー - 日本仮想化技術様講演スライド
2015.6.5 EMC主催OpenStackセミナー - 日本仮想化技術様講演スライド2015.6.5 EMC主催OpenStackセミナー - 日本仮想化技術様講演スライド
2015.6.5 EMC主催OpenStackセミナー - 日本仮想化技術様講演スライド
 
OpenStack最新動向と構築のポイント - EMC様セミナー 「あなたのビジネスを高速化! OpenStackが実現する戦略的なクラウドインフラ」
OpenStack最新動向と構築のポイント - EMC様セミナー 「あなたのビジネスを高速化! OpenStackが実現する戦略的なクラウドインフラ」OpenStack最新動向と構築のポイント - EMC様セミナー 「あなたのビジネスを高速化! OpenStackが実現する戦略的なクラウドインフラ」
OpenStack最新動向と構築のポイント - EMC様セミナー 「あなたのビジネスを高速化! OpenStackが実現する戦略的なクラウドインフラ」
 
CLOUDIAN at Support Engineer Night
CLOUDIAN at Support Engineer NightCLOUDIAN at Support Engineer Night
CLOUDIAN at Support Engineer Night
 
コロナ禍の働き方のニューノーマル~NRIの数千人のテレワークを支えたサービスとは~
コロナ禍の働き方のニューノーマル~NRIの数千人のテレワークを支えたサービスとは~コロナ禍の働き方のニューノーマル~NRIの数千人のテレワークを支えたサービスとは~
コロナ禍の働き方のニューノーマル~NRIの数千人のテレワークを支えたサービスとは~
 
ぐるなびが活用するElastic Cloud
ぐるなびが活用するElastic Cloudぐるなびが活用するElastic Cloud
ぐるなびが活用するElastic Cloud
 
Introduction to NetOpsCoding
Introduction to NetOpsCodingIntroduction to NetOpsCoding
Introduction to NetOpsCoding
 
OSSコミッタの生活とその必要性
OSSコミッタの生活とその必要性OSSコミッタの生活とその必要性
OSSコミッタの生活とその必要性
 
IoT プラットフォーム「SORACOM」 20151202版
IoT プラットフォーム「SORACOM」 20151202版 IoT プラットフォーム「SORACOM」 20151202版
IoT プラットフォーム「SORACOM」 20151202版
 
2014年を振り返る 今年の技術トレンドとDockerについて
2014年を振り返る 今年の技術トレンドとDockerについて2014年を振り返る 今年の技術トレンドとDockerについて
2014年を振り返る 今年の技術トレンドとDockerについて
 

Keycloak & midPoint の紹介

  • 1. Keycloak & midPoint の紹介 OSSセキュリティ技術の会 第⼋回勉強会
  • 2. 1Copyright(C) Nomura Research Institute, Ltd. All rights reserved. n和⽥ 広之 @wadahiro n主にOSS系担当 (OpenStandiaチーム所属) n最近のOSSコミュニティ活動 l Keycloakドキュメント⽇本語化 l KeycloakのToken Exchange強化(SAML 2.0トークン対応) l KeycloakのFAPI Conformance suite対応 l mrparkers/terraform-provider-keycloak、Terraformerの機能強化 l midPoint⽇本語化 l Box⽤のmidPointコネクタ開発 l Amazon Cognito User Pool⽤のmidPointコネクタ開発 ⾃⼰紹介
  • 3. 2Copyright(C) Nomura Research Institute, Ltd. All rights reserved. Keycloak & midPoint 活⽤事例 midPoint とは01 02
  • 4. 3Copyright(C) Nomura Research Institute, Ltd. All rights reserved. 1. midPoint とは
  • 5. 4Copyright(C) Nomura Research Institute, Ltd. All rights reserved. nOSSのIGAプラットフォーム nIGA=従来のIDMに加えて、ガバナンス機能を強化 nApache License 2.0 / European Union Public License (EUPL) のデュアルライセンス nスロバキアにある Evolveum 社のメンバーが中⼼となって2011年より開発 n元々はForgeRock社と協⼒してOpenIDM 1系として開発されていたが、ForgeRock社が突 然の⽅針転換により2系をスクラッチ開発したため、midPointという別プロジェクトを開始 midPoint とは CEO/共同設⽴者の Igor アーキテクト/共同設⽴者の Radovan コア開発者の Katarina
  • 6. 5Copyright(C) Nomura Research Institute, Ltd. All rights reserved. n両者を組み合わせることで、IAMの広範囲をOSSでカバーすることが可能に n特にEIAM (従業員のIAM) 分野では、IDM・IGA の要素が必要なことが多い Keycloak単体では⾜りないところをmidPointで補完が可能 Keycloak App App Directory Server Directory Server App HRmidPoint SaaS AM (アクセス管理) IDM (ID管理) / IGA
  • 7. 6Copyright(C) Nomura Research Institute, Ltd. All rights reserved. n データモデル、ワークフロー、管理画⾯、各種コネクタなど、ID管理に必要な機能が標準で組み込まれており、すべて インストール直後から利⽤可能 (Out-of-the-boxなプロダクト) n midPointの思想から⼤きく外れた要件がなければ、 カスタマイズ開発なしで多くのユースケースをカバーすることが可能 (導⼊コストの抑制、⾼い保守性を確保) n 各種コネクタにおいては、CSV、LDAP、Active Directory、 RDB、Office 365 などのメジャーなIDプロビジョニング先 に対応 n Gartner社の 「アイデンティティ(ID)/アクセス管理に おけるOSS利⽤の選択肢︓2017年版」にて、 IGA機能に関して⾼評価 完成度の⾼いID管理プロダクト 出所︓https://www.slideshare.net/Evolveum/evolveum-midpoint-deployment-example
  • 8. 7Copyright(C) Nomura Research Institute, Ltd. All rights reserved. nEU-FOSSA (Free and Open Source Software Auditing) による⽀援を受けている nEU-FOSSA とは、EU Commission (欧州委員会) にて⽴ち上げられたFree/OSSを⽀援するプ ロジェクト nEU機関内で多数のFree/OSSに依存している中、2014年のOpenSSLのHeartbleed脆弱性 問題を契機に設⽴された nEU内で重要と位置付けられているFree/OSSの改善を⽀援しており、midPointもその⼀つ l バグバウンティグコンテストを開催 l Hackathonの開催 EUによる強⼒なバックアップ
  • 9. 8Copyright(C) Nomura Research Institute, Ltd. All rights reserved. n Education l University of Western Ontario l University of Illinois l Colorado State University l その他多数 n Government l EU Commission l Turkey l Slovenia l Estonia n Insurance l Union l WWK n Banking l First United Bank & Trust l B&N Bank midPoint は様々な分野・ワールドワイドで広く使われている 出所︓https://evolveum.com/partners/find-a-partner/
  • 10. 9Copyright(C) Nomura Research Institute, Ltd. All rights reserved. n基本的なモデルとして下記の4つのオブジェクトタイプを⽤意 l UserType • いわゆるユーザーを管理するためのモデル l RoleType • ビジネスロールやシステムロールなど、役割を定義するグループモデル l OrgType • 組織に特化したグループモデルで、プロジェクトや会社・本部・部署・課といったものを管理するためのモデル • RoleTypeと異なり、階層構造で管理が可能 l ServiceType • モバイルデバイス、プリンタ、サーバー・仮想マシン、IoT機器といった物を管理するためのモデル • ロールの⼀種として働く 標準で4つのデータモデルを提供
  • 11. 10Copyright(C) Nomura Research Institute, Ltd. All rights reserved. 階層型組織・プロジェクト組織の両⽅に対応可能 データモデル n複数の組織グループを定義可能 (会社とプロジェクトなど) nユーザーは複数の組織に所属可能であり、またその関係性に属性をもたせられる 出所︓https://wiki.evolveum.com/display/midPoint/Organizational+Structure
  • 12. 11Copyright(C) Nomura Research Institute, Ltd. All rights reserved. nmidPoint ではロール・組織・サービスをアサインすることで様々な制御を⾏う l 連携先へのプロビジョニング可否 (ロールベース・プロビジョニング) l midPoint の API に対する認可制御 l midPoint の GUI 表⽰制御 l ポリシーによる制御 • 属性更新やアサインなどをトリガーにしてあるアクションを実⾏するというルールを定義できる • アクションの種類 • 処理を中断してエラー • ワークフローの開始 • ID棚卸の開始 • カスタムスクリプト処理の実⾏ • etc. nロール・組織・サービスを⾃動的にアサインする仕組みも提供 アサインを中⼼とした制御
  • 13. 12Copyright(C) Nomura Research Institute, Ltd. All rights reserved. n基本的にはルールベースでアサインすべきだが、⾃動化できない例外ケースに対してはワークフロー によるアサイン制御が必要 nmidPoint では申請者が⾃分でロール要求を⾏うための UI を標準で提供 セルフサービスによるアクセス要求・承認ワークフロー
  • 14. 13Copyright(C) Nomura Research Institute, Ltd. All rights reserved. nユーザーのアクセス権限が組織のポリシーに従っているかどうか、定期的またはアドホックに管理者 にユーザーのアクセス権限のチェックを要求すること nmidPoint では Access Certification(または Campaign)と呼ばれる n承認ワークフローと似ているが、棚卸に特化した機能として提供されている ID棚卸機能 申請 承認 反映 ワークフロー ピックアップ 取消 反映 ID棚卸し
  • 15. 14Copyright(C) Nomura Research Institute, Ltd. All rights reserved. 動作イメージ ID棚卸機能 n棚卸対象のアカウントが⾃動的にピックアップされ、レビュアーである管理者に確認依頼がアサイ ンされる n管理者はロールの付与を継続(Accept)、取消(Revoke)などを判断 n棚卸期間完了後、結果が⾃動反映される
  • 16. 15Copyright(C) Nomura Research Institute, Ltd. All rights reserved. 2. Keycloak & midPoint 活⽤事例
  • 17. 16Copyright(C) Nomura Research Institute, Ltd. All rights reserved. プロジェクト概要 Keycloak & midPoint 活⽤事例 n開発管理統合サービス 「aslead」 のNRI向け環境の IAM に Keycloak & midPoint を適⽤ naslead とは? l チャットツール、タスクの管理、ナレッジの共有など、業務に必要な機能をオールインワンで提供するNRIのパッ ケージサービス l ⽶国のMattermost社のチャットツールであるMattemostのほか、オーストラリアのAtlassian社が提供するタスク 管理のJiraと、ドキュメントやナレッジを共有するConfluenceの3つをベースにしている
  • 18. 17Copyright(C) Nomura Research Institute, Ltd. All rights reserved. プロジェクト概要 Keycloak & midPoint 活⽤事例 n aslead 環境はテナントごとに構築 n 認証は各プロダクト毎にローカル認証 (SSOなし) n ID管理はExcelによる申請書ベース l ID登録、アクセス権付与 etc. n 利⽤ユーザーは社員・派遣社員・ビジネスパートナー n NRIオフィス内のネットワークからのみアクセス可 AWS Cloud Jira, Confluence etc. NRI corporate Tenant
  • 19. 18Copyright(C) Nomura Research Institute, Ltd. All rights reserved. プロジェクト概要 Keycloak & midPoint 活⽤事例 n aslead 環境はテナントごとに構築 n 認証は各プロダクト毎にローカル認証 (SSOなし) n ID管理はExcelによる申請書ベース l ID登録、アクセス権付与 etc. n 利⽤ユーザーは社員・派遣社員・ビジネスパートナー n NRIオフィス内のネットワークからのみアクセス可 AWS Cloud Jira, Confluence etc. NRI corporate Tenant n テナント横断サービスを共通サービス化 (Mattermost, 認証⽤LDAPなど) n SSOによるセキュリティ・利便性向上 n ID管理を⾃動化・ガバナンス強化 n 利⽤ユーザーは社員・派遣社員・ビジネスパートナーだ けでなく、社外のビジネスパートナー・顧客も対象に n インターネットからのアクセスも可能に
  • 20. 19Copyright(C) Nomura Research Institute, Ltd. All rights reserved. システム構成 Shared Services AWS Cloud Azure NRI Data center ECS Cluster keycloak keycloak- gatekeeper midPoint Active Directory / ADFS Azure AD Jira, Confluence etc. NRI corporate Internet Tenant IDM LDAP Source Importing Employee Employee Business Partner Customer Business Partner HR Mattermost, etc. SaaS Box ・・・ ID Provisioning CSV
  • 21. 20Copyright(C) Nomura Research Institute, Ltd. All rights reserved. システム構成 Shared Services AWS Cloud Azure NRI Data center ECS Cluster keycloak keycloak- gatekeeper midPoint Active Directory / ADFS Azure AD Jira, Confluence etc. NRI corporate Internet Tenant IDM LDAP Source Importing Employee Employee Business Partner Customer Business Partner HR Mattermost, etc. SaaS Box ・・・ ID Provisioning CSV 構築範囲
  • 22. 21Copyright(C) Nomura Research Institute, Ltd. All rights reserved. SSO連携先システム・サービス システム構成 n midPoint (OpenID Connect) n Mattermost (SAML) n JIRA (SAML) n Confluence (SAML) n GitLab (SAML) n NextCloud (SAML) n Box (SAML) n Grafana (OpenID Connect) n AWSマネジメントコンソール (SAML) n Amazon AppStream2 (SAML) n aws-cli (SAML + OpenID Connect) n 社内システム (OpenID Connect) n ・・・ (拡⼤中) ロールカタログから使いたいサービス に対してアクセス要求を出す アクセス権がないとSSO時にエラー
  • 23. 22Copyright(C) Nomura Research Institute, Ltd. All rights reserved. Keycloak & midPoint インテグレーションのポイント Keycloak & midPoint 活⽤事例 n オーバーラップしている機能をどちらに寄せるか考える必要あり l たとえば以下の機能など • 画⾯からの新規ユーザー登録作業 • セルフパスワードリセット • プロフィール編集 • 初回ログイン時のパスワード強制 l Keycloakに寄せる場合、SPIを拡張してmidPoint との連携が必要になるケースも n 認証DB l LDAPにすると作り物が少なくて済む • Keycloak は標準でLDAPをユーザーデータストアとして利⽤可能 (UserFederation) • midPoint も標準でLDAPにユーザー情報をプロビジョニング可能 • aslead としてはMattermost、JIRA、ConfluenceなどのアプリケーションがLDAPに対応しているのでLDAPの⽅が都合が良いという⾯も l LDAP以外を利⽤する場合は、UserFederationのカスタム開発やmidPointコネクターの開発が必要に n SSO時のアクセスコントロールは作り込みが必要 l Keycloak的にはAuthorization Serviceがあるが、アプリケーション側で認可制御が必要となる l Keycloak SPI拡張による実装⽅法は⾊々考えられるが、aslead ではカスタム Protocol Mapper/カスタム Protocol で実装 l ちょうど keycloak-dev にて議論中: https://groups.google.com/forum/#!topic/keycloak-dev/44CPivh6jFY
  • 24. 23Copyright(C) Nomura Research Institute, Ltd. All rights reserved. まとめ
  • 25. 24Copyright(C) Nomura Research Institute, Ltd. All rights reserved. nmidPointは、ワールドワイドで採⽤されているOSS IGAプラットフォーム nGartner社による⾼評価、EU機関での採⽤を受けてここ数年で利⽤拡⼤中 n他の OSS ID管理プロダクトにはないユニークな機能を搭載 n特にEIAM(従業員のIAM)分野で、Keycloak単体では不⾜する部分を埋めることが可能 まとめ