SlideShare a Scribd company logo
1 of 22
© Hitachi, Ltd. 2021. All rights reserved.
最近のKeycloakのご紹介
~クライアントポリシーとFAPI~
OSSセキュリティ技術の会
株式会社 日立製作所
Software CoE
OSSソリューションセンタ
田畑 義之
1
© Hitachi, Ltd. 2021. All rights reserved.
自己紹介
田畑 義之 (たばた よしゆき)
 株式会社 日立製作所 Software CoE OSSソリューションセンタ
 ソフトウェアエンジニア
 GitHub: @y-tabata, Qiita: @yo-tabata
• 認証認可スペシャリストとしてのAPI/SSO関連案件の支援
 銀行用などの高セキュリティAPIシステムのコンサル/サポート
• 認証認可・API管理関連のOSSへのコントリビュート
 Keycloak(アイデンティティ管理のOSS)における、OAuth/OIDC/FAPI関連機能の開発
 3scale(API管理のOSS)における、セキュリティ/アクセス制御関連機能の開発
• OSSの活用事例や検証結果の情報発信
 Qiita/ThinkITでのWeb記事投稿
 Apidays/API Specifications Conference/CloudNative Daysなど、国内外のイベントでの情報発信
© Hitachi, Ltd. 2021. All rights reserved.
Contents
2
1. 最近のKeycloakリリース状況
2. 注目機能1: クライアントポリシーのご紹介
3. 注目機能2: FAPIのご紹介
4. クライアントポリシー&FAPIのデモ
© Hitachi, Ltd. 2021. All rights reserved.
Contents
3
1. 最近のKeycloakリリース状況
2. 注目機能1: クライアントポリシーのご紹介
3. 注目機能2: FAPIのご紹介
4. クライアントポリシー&FAPIのデモ
4
© Hitachi, Ltd. 2021. All rights reserved.
v15 FAPI、CIBAに完全対応
v14 FAPIに正式対応
v13 Device Flow対応
CIBA対応開始
v12 FAPIがpreview
v11 署名・クライアント認証強化
最近のKeycloakリリース状況(前回の勉強会以降): 標準対応強化
https://www.keycloak.org/docs/latest/release_notes/index.html より抜粋
乗松さん大活躍!
5
© Hitachi, Ltd. 2021. All rights reserved.
最近のKeycloakリリース状況(前回の勉強会以降): 他トピック
• オフラインセッションの扱い改善
• オフラインセッション(DBに永続化されるセッション)は、Keycloak起動時にDBから全部ロードされるた
め、大量にオフラインセッションがあるとKeycloakの起動が遅くなる問題があった。
→ v14より、インデックスのチューニングなどで読み込みが早くなった。
v14より、previewとして、オンデマンドでオフラインセッションを読み込む機能がサポートされた。
• Keycloak Gatekeeper (Louketo Proxy)のEOL
• v12で、Keycloak Gatekeeperとその後継のLouketo ProxyがEOLになると突然発表。
使っている人は注意!
• Keycloak.X
• v12から、previewとして、Quarkus版のKeycloak.Xの配布が開始。
それなりに動く模様。
• [参考] Keycloak.Xをクラスタ構成で動かしてみる
https://qiita.com/yo-tabata/items/6d29795fc3afa72d1b08
© Hitachi, Ltd. 2021. All rights reserved.
Contents
6
1. 最近のKeycloakリリース状況
2. 注目機能1: クライアントポリシーのご紹介
3. 注目機能2: FAPIのご紹介
4. クライアントポリシー&FAPIのデモ
7
© Hitachi, Ltd. 2021. All rights reserved.
クライアントポリシーとは (1/6) ~セキュリティプロファイル~
クライアントポリシーとは、Keycloakにおいて、セキュリティプロファイルをクライアントに適用する際の課題を解決するためのコンセプト。
セキュリティプロファイルとは、OAuth 2.0の具体的な使い方の規定(プロファイル)のうち、特にセキュリティを重視したもの。
たとえば、
- FAPI Security Profile …OpenID Foundationによるセキュリティプロファイル。高いセキュリティを要求される金融セクタで
の利用などを想定。
https://openid.net/specs/openid-financial-api-part-2-1_0-final.html
- Open Banking Security Profile …英国のOpen Bankingによるセキュリティプロファイル。
https://standards.openbanking.org.uk/security-profiles/
- Consumer Data Security Profile …オーストラリアのConsumer Data Rightによるセキュリティプロファイル。
https://consumerdatastandardsaustralia.github.io/standards/#security-profile
- Open Banking Brasil Financial-grade API Security Profile …ブラジルの中央銀行によるセキュリティプロファイル。
https://openbanking-brasil.github.io/specs-seguranca/open-banking-brasil-financial-api-1_ID2.html
以下なども、広義ではセキュリティプロファイルとみなすことができる。
- RFC 8252 OAuth 2.0 for Native Apps …ネイティブアプリでOAuth 2.0を安全に使用するための標準仕様。
https://datatracker.ietf.org/doc/html/rfc8252
- OAuth 2.0 for Browser-Based Apps …SPAでOAuth 2.0を安全に使用するための標準仕様。
https://datatracker.ietf.org/doc/html/draft-ietf-oauth-browser-based-apps-08
8
© Hitachi, Ltd. 2021. All rights reserved.
クライアントポリシーとは (2/6) ~プロファイル適用時の課題~
セキュリティプロファイルをクライアントに適用する際の課題とは、
1. 新規のセキュリティプロファイルのサポートや改変コストが高い。
- 不足機能があればKeycloak本体の改造が必要となり、タイムリーに追従できない。
- 本番環境適用の際にVUPが必要となり、ユーザビリティが損なわれる。
2. セキュリティプロファイルの多数のクライアントへの適用が煩雑。
- セキュリティプロファイルに関する設定項目が40以上あるので、それを多数のクライアントに適用するのは大変、かつerror
proneである。
3. 複数のセキュリティプロファイルを適用することができない。
- 基本的に1つのクライアントの1つの設定項目に対して、適用できる設定は1つなので、複数のセキュリティプロファイルを1つのク
ライアントに適用するユースケースを実現できない。
- 無理やり実現するには、同一クライアントを複数のレルム(名前空間)に別クライアントとして定義する必要があるが、管理が煩
雑になる。
この3つの課題を解決するコンセプトが、クライアントポリシーである。
9
© Hitachi, Ltd. 2021. All rights reserved.
クライアントポリシーとは (3/6) ~クライアントポリシーによる課題解決~
セキュリティプロファイルをクライアントに適用する際の課題とは、
1. 新規のセキュリティプロファイルのサポートや改変コストが高い。
[原因] セキュリティプロファイルを構成する設定の処理をKeycloak本体のコードで実装しているから。
→ これらの処理を動的にロード・アンロードするための機構(Framework)を設ける。
その上にComponentsという形でセキュリティプロファイルに関する処理を実装する。
2. セキュリティプロファイルの多数のクライアントへの適用が煩雑。
3. 複数のセキュリティプロファイルを適用することができない。
[原因] クライアントとその設定が一体化しているから。
→ Framework上のComponentsで、これらを分離する。
これが、クライアントポリシーの基本方針である。
10
© Hitachi, Ltd. 2021. All rights reserved.
クライアントポリシーとは (4/6) ~コンポーネント構成~
クライアントポリシーは、大きく以下の2つから成り立つ。
1.Framework …Componentsのロード・アンロード
を管理し、Componentsを実装するためのインタフェー
スであるフレームワークを提供する。
2.Components …セキュリティプロファイルに関する処
理。Componentsにて、セキュリティプロファイルをクライ
アントに適用する。
Componentsは、以下の2つから構成される。
1.Condition/Policy …セキュリティプロファイルの適
用対象クライアントを決めるコンポーネント。クライアント
のメタデータ(静的な特性)とクライアントからのリクエスト
(動的な特性)をもとに、セキュリティプロファイルを適用
するかどうかを決める。
2.Executor/Profile …セキュリティプロファイルの適
用内容を規定し、クライアントに対してセキュリティプロ
ファイルを実現するための処理を行うコンポーネント。
11
© Hitachi, Ltd. 2021. All rights reserved.
クライアントポリシーとは (5/6) ~クライアントポリシーの実行ポイント~
クライアントポリシーは、各種エンドポイントにクラ
イアントの要求が来たときに実行される。
具体的には、各Endpointにて、クライアントか
らのRequestをもとに、Conditionを評価し、
セキュリティプロファイルを適用する場合は、
Executorを実行する。
12
© Hitachi, Ltd. 2021. All rights reserved.
クライアントポリシーとは (6/6) ~クライアントポリシーのクラス構成~
Condition、Executorは、ともに
Frameworkのインタフェースを実装したプロバ
イダである。
これによるメリットは2点。
- Frameworkのコードと、Conditionや
Executorのコードが分離されるため、セキュ
リティプロファイルのVUP時や新しいセキュリ
ティプロファイルのサポート時にKeycloak本
体のコードを修正する必要がない。
- ConditionやExecutorのコードがプロバイダ
として実装されているため、Keycloak稼働
中にロード・アンロードすることができる。
© Hitachi, Ltd. 2021. All rights reserved.
Contents
13
1. 最近のKeycloakリリース状況
2. 注目機能1: クライアントポリシーのご紹介
3. 注目機能2: FAPIのご紹介
4. クライアントポリシー&FAPIのデモ
14
© Hitachi, Ltd. 2021. All rights reserved.
FAPIとは (1/3) ~FAPIの概要~
FAPI (Financial-grade API Security Profile)とは、OpenID Foundationによるセキュリティプロファイルで、高
いセキュリティを要求される金融セクタでの利用などを想定している。
OAuth 2.0
OpenID
Connect
(OIDC)
FAPI
APIセキュリティのデファクトスタンダード。
さまざまな標準仕様のベースとして参照されている。
OAuth 2.0の使い方を限定し、ハードニングしたもの。
SSOのプロトコルとしてもよく使用される。
FAPI (Financial-grade API)は、OAuth 2.0と
OIDCの使い方をさらに限定し、ハードニングしたもの。
金融分野での使用を想定している。
15
© Hitachi, Ltd. 2021. All rights reserved.
FAPIとは (2/3) ~FAPIの歴史~
2021/3 2021/3 まだ まだ
16
© Hitachi, Ltd. 2021. All rights reserved.
FAPIとは (3/3) ~FAPIの注目度~
FAPIの注目度は国内外で年々上昇中。
EUでPSD2が成立 (2015/11)
改正銀行法が施行 (2017/6)
Open Banking Implementation Entityが
FAPI WGとのコラボレーションを発表 (2017/5)
全国銀行協会がFAPIへの準拠を推奨 (2017/7)
グローバルでのオープンAPIの
急速な普及につながった
各銀行にオープンAPI導入の
努力義務が課せられた
イギリスがOpen BankingStandardを公表 (2016/2)
国内
グローバル
2015
2016
2017
そんな中、Keycloakがv15でFAPIに完全対応した!
© Hitachi, Ltd. 2021. All rights reserved.
Contents
17
1. 最近のKeycloakリリース状況
2. 注目機能1: クライアントポリシーのご紹介
3. 注目機能2: FAPIのご紹介
4. クライアントポリシー&FAPIのデモ
18
© Hitachi, Ltd. 2021. All rights reserved.
(デモ)
19
© Hitachi, Ltd. 2021. All rights reserved.
まとめ
- FAPIとクライアントポリシーについて、デモなどを通じてご紹介しました。
- クライアントポリシーは、セキュリティプロファイル適用時の課題を解決するためのコンセプトとして登
場しましたが、カスタマイズの自由度は計り知れません(もしかしたらSPI以上かも)。
興味のある方は是非触ってみてください。
20
© Hitachi, Ltd. 2021. All rights reserved.
Trademarks
• OpenID is a trademark or registered trademark of OpenID Foundation in the United States and other
countries.
• GitHub is a trademark or registered trademark of GitHub, Inc. in the United States and other
countries.
• Other brand names and product names used in this material are trademarks, registered trademarks,
or trade names of their respective holders.
最近のKeycloakのご紹介 ~クライアントポリシーとFAPI~

More Related Content

What's hot

Knative Eventing 入門(Kubernetes Novice Tokyo #11 発表資料)
Knative Eventing 入門(Kubernetes Novice Tokyo #11 発表資料)Knative Eventing 入門(Kubernetes Novice Tokyo #11 発表資料)
Knative Eventing 入門(Kubernetes Novice Tokyo #11 発表資料)NTT DATA Technology & Innovation
 
マイクロサービス時代の認証と認可 - 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
 
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)NTT DATA Technology & Innovation
 
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)NTT DATA Technology & Innovation
 
NTTデータ流Infrastructure as Code~ 大規模プロジェクトを通して考え抜いた基盤自動化の新たな姿~(NTTデータ テクノロジーカンフ...
NTTデータ流Infrastructure as Code~ 大規模プロジェクトを通して考え抜いた基盤自動化の新たな姿~(NTTデータ テクノロジーカンフ...NTTデータ流Infrastructure as Code~ 大規模プロジェクトを通して考え抜いた基盤自動化の新たな姿~(NTTデータ テクノロジーカンフ...
NTTデータ流Infrastructure as Code~ 大規模プロジェクトを通して考え抜いた基盤自動化の新たな姿~(NTTデータ テクノロジーカンフ...NTT DATA Technology & Innovation
 
AzureActiveDirectoryの認証の話(Azure周りの自動化編)
AzureActiveDirectoryの認証の話(Azure周りの自動化編)AzureActiveDirectoryの認証の話(Azure周りの自動化編)
AzureActiveDirectoryの認証の話(Azure周りの自動化編)Masahiko Ebisuda
 
どうやって決める?kubernetesでのシークレット管理方法(Cloud Native Days 2020 発表資料)
どうやって決める?kubernetesでのシークレット管理方法(Cloud Native Days 2020 発表資料)どうやって決める?kubernetesでのシークレット管理方法(Cloud Native Days 2020 発表資料)
どうやって決める?kubernetesでのシークレット管理方法(Cloud Native Days 2020 発表資料)NTT DATA Technology & Innovation
 
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Akihiro Suda
 
AWS Organizations連携サービスの罠(Security JAWS 第26回 発表資料)
AWS Organizations連携サービスの罠(Security JAWS 第26回 発表資料)AWS Organizations連携サービスの罠(Security JAWS 第26回 発表資料)
AWS Organizations連携サービスの罠(Security JAWS 第26回 発表資料)NTT DATA Technology & Innovation
 
kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)
kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)
kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)NTT DATA Technology & Innovation
 
20210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #13
20210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #1320210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #13
20210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #13Amazon Web Services Japan
 
3分でわかるAzureでのService Principal
3分でわかるAzureでのService Principal3分でわかるAzureでのService Principal
3分でわかるAzureでのService PrincipalToru Makabe
 
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)NTT DATA Technology & Innovation
 
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!mosa siru
 
Istioサービスメッシュ入門
Istioサービスメッシュ入門Istioサービスメッシュ入門
Istioサービスメッシュ入門Yoichi Kawasaki
 
Keycloak & midPoint の紹介
Keycloak & midPoint の紹介Keycloak & midPoint の紹介
Keycloak & midPoint の紹介Hiroyuki Wada
 
これからのネイティブアプリにおけるOpenID Connectの活用
これからのネイティブアプリにおけるOpenID Connectの活用これからのネイティブアプリにおけるOpenID Connectの活用
これからのネイティブアプリにおけるOpenID Connectの活用Masaru Kurahayashi
 
インフラCICDの勘所
インフラCICDの勘所インフラCICDの勘所
インフラCICDの勘所Toru Makabe
 

What's hot (20)

Knative Eventing 入門(Kubernetes Novice Tokyo #11 発表資料)
Knative Eventing 入門(Kubernetes Novice Tokyo #11 発表資料)Knative Eventing 入門(Kubernetes Novice Tokyo #11 発表資料)
Knative Eventing 入門(Kubernetes Novice Tokyo #11 発表資料)
 
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDayマイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay
 
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
 
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)
 
Keycloakのステップアップ認証について
Keycloakのステップアップ認証についてKeycloakのステップアップ認証について
Keycloakのステップアップ認証について
 
NTTデータ流Infrastructure as Code~ 大規模プロジェクトを通して考え抜いた基盤自動化の新たな姿~(NTTデータ テクノロジーカンフ...
NTTデータ流Infrastructure as Code~ 大規模プロジェクトを通して考え抜いた基盤自動化の新たな姿~(NTTデータ テクノロジーカンフ...NTTデータ流Infrastructure as Code~ 大規模プロジェクトを通して考え抜いた基盤自動化の新たな姿~(NTTデータ テクノロジーカンフ...
NTTデータ流Infrastructure as Code~ 大規模プロジェクトを通して考え抜いた基盤自動化の新たな姿~(NTTデータ テクノロジーカンフ...
 
AzureActiveDirectoryの認証の話(Azure周りの自動化編)
AzureActiveDirectoryの認証の話(Azure周りの自動化編)AzureActiveDirectoryの認証の話(Azure周りの自動化編)
AzureActiveDirectoryの認証の話(Azure周りの自動化編)
 
どうやって決める?kubernetesでのシークレット管理方法(Cloud Native Days 2020 発表資料)
どうやって決める?kubernetesでのシークレット管理方法(Cloud Native Days 2020 発表資料)どうやって決める?kubernetesでのシークレット管理方法(Cloud Native Days 2020 発表資料)
どうやって決める?kubernetesでのシークレット管理方法(Cloud Native Days 2020 発表資料)
 
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
 
AWS Organizations連携サービスの罠(Security JAWS 第26回 発表資料)
AWS Organizations連携サービスの罠(Security JAWS 第26回 発表資料)AWS Organizations連携サービスの罠(Security JAWS 第26回 発表資料)
AWS Organizations連携サービスの罠(Security JAWS 第26回 発表資料)
 
kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)
kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)
kubernetes初心者がKnative Lambda Runtime触ってみた(Kubernetes Novice Tokyo #13 発表資料)
 
20210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #13
20210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #1320210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #13
20210127 今日から始めるイベントドリブンアーキテクチャ AWS Expert Online #13
 
3分でわかるAzureでのService Principal
3分でわかるAzureでのService Principal3分でわかるAzureでのService Principal
3分でわかるAzureでのService Principal
 
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
 
Keycloakの最近のトピック
Keycloakの最近のトピックKeycloakの最近のトピック
Keycloakの最近のトピック
 
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
 
Istioサービスメッシュ入門
Istioサービスメッシュ入門Istioサービスメッシュ入門
Istioサービスメッシュ入門
 
Keycloak & midPoint の紹介
Keycloak & midPoint の紹介Keycloak & midPoint の紹介
Keycloak & midPoint の紹介
 
これからのネイティブアプリにおけるOpenID Connectの活用
これからのネイティブアプリにおけるOpenID Connectの活用これからのネイティブアプリにおけるOpenID Connectの活用
これからのネイティブアプリにおけるOpenID Connectの活用
 
インフラCICDの勘所
インフラCICDの勘所インフラCICDの勘所
インフラCICDの勘所
 

Similar to 最近のKeycloakのご紹介 ~クライアントポリシーとFAPI~

パスキーでリードする: NGINXとKeycloakによる効率的な認証・認可
パスキーでリードする: NGINXとKeycloakによる効率的な認証・認可パスキーでリードする: NGINXとKeycloakによる効率的な認証・認可
パスキーでリードする: NGINXとKeycloakによる効率的な認証・認可Hitachi, Ltd. OSS Solution Center.
 
社内認証基盤用のVault Pluginを作るメリット
社内認証基盤用のVault Pluginを作るメリット社内認証基盤用のVault Pluginを作るメリット
社内認証基盤用のVault Pluginを作るメリットKatsuya Yamaguchi
 
Microsoft MVP から見たクラウド サービスの現状と今後について
Microsoft MVP から見たクラウド サービスの現状と今後についてMicrosoft MVP から見たクラウド サービスの現状と今後について
Microsoft MVP から見たクラウド サービスの現状と今後についてIIJ
 
【de:code 2020】 Azure Expert MSP の FIXER が処方、DX に効く 「クラウド運用」「AI」「人材育成」 の即効薬
【de:code 2020】 Azure Expert MSP の FIXER が処方、DX に効く 「クラウド運用」「AI」「人材育成」 の即効薬【de:code 2020】 Azure Expert MSP の FIXER が処方、DX に効く 「クラウド運用」「AI」「人材育成」 の即効薬
【de:code 2020】 Azure Expert MSP の FIXER が処方、DX に効く 「クラウド運用」「AI」「人材育成」 の即効薬日本マイクロソフト株式会社
 
Cloud Days Tokyo 2015 "オンプレミス環境のクラウド化と運用を楽にする OpenStack ソリューション ~ハイブリッド・クラウドを...
Cloud Days Tokyo 2015 "オンプレミス環境のクラウド化と運用を楽にする OpenStack ソリューション ~ハイブリッド・クラウドを...Cloud Days Tokyo 2015 "オンプレミス環境のクラウド化と運用を楽にする OpenStack ソリューション ~ハイブリッド・クラウドを...
Cloud Days Tokyo 2015 "オンプレミス環境のクラウド化と運用を楽にする OpenStack ソリューション ~ハイブリッド・クラウドを...Shinichiro Arai
 
オンプレミスからクラウドへ:Oracle Databaseの移行ベストプラクティスを解説 (Oracle Cloudウェビナーシリーズ: 2021年2月18日)
オンプレミスからクラウドへ:Oracle Databaseの移行ベストプラクティスを解説 (Oracle Cloudウェビナーシリーズ: 2021年2月18日)オンプレミスからクラウドへ:Oracle Databaseの移行ベストプラクティスを解説 (Oracle Cloudウェビナーシリーズ: 2021年2月18日)
オンプレミスからクラウドへ:Oracle Databaseの移行ベストプラクティスを解説 (Oracle Cloudウェビナーシリーズ: 2021年2月18日)オラクルエンジニア通信
 
Otrs&OTOBO_document 20210402
Otrs&OTOBO_document 20210402Otrs&OTOBO_document 20210402
Otrs&OTOBO_document 20210402IO Architect Inc.
 
MySQL 5.7 & 最新開発状況 @ オープンソースカンファレンス20
MySQL 5.7 & 最新開発状況 @ オープンソースカンファレンス20MySQL 5.7 & 最新開発状況 @ オープンソースカンファレンス20
MySQL 5.7 & 最新開発状況 @ オープンソースカンファレンス20Ryusuke Kajiyama
 
20220409 AWS BLEA 開発にあたって検討したこと
20220409 AWS BLEA 開発にあたって検討したこと20220409 AWS BLEA 開発にあたって検討したこと
20220409 AWS BLEA 開発にあたって検討したことAmazon Web Services Japan
 
見せてもらおうか、新しい Microsoft Edge の性能とやらを
見せてもらおうか、新しい Microsoft Edge の性能とやらを見せてもらおうか、新しい Microsoft Edge の性能とやらを
見せてもらおうか、新しい Microsoft Edge の性能とやらを彰 村地
 
OCHaCafe2#5 変幻自在♪ 広がるKubernetesのエコシステム
OCHaCafe2#5 変幻自在♪ 広がるKubernetesのエコシステムOCHaCafe2#5 変幻自在♪ 広がるKubernetesのエコシステム
OCHaCafe2#5 変幻自在♪ 広がるKubernetesのエコシステムオラクルエンジニア通信
 
AIP改め、MIP_20230128_it.pdf
AIP改め、MIP_20230128_it.pdfAIP改め、MIP_20230128_it.pdf
AIP改め、MIP_20230128_it.pdftomokoitoda1
 
AIP改め、MIP_20230128_it.pdf
AIP改め、MIP_20230128_it.pdfAIP改め、MIP_20230128_it.pdf
AIP改め、MIP_20230128_it.pdftomokoitoda1
 
お客様からのセキュリティチェックを乗り越えるための SaaS のアプローチ.pptx
お客様からのセキュリティチェックを乗り越えるための SaaS のアプローチ.pptxお客様からのセキュリティチェックを乗り越えるための SaaS のアプローチ.pptx
お客様からのセキュリティチェックを乗り越えるための SaaS のアプローチ.pptxmkoda
 

Similar to 最近のKeycloakのご紹介 ~クライアントポリシーとFAPI~ (20)

パスキーでリードする: NGINXとKeycloakによる効率的な認証・認可
パスキーでリードする: NGINXとKeycloakによる効率的な認証・認可パスキーでリードする: NGINXとKeycloakによる効率的な認証・認可
パスキーでリードする: NGINXとKeycloakによる効率的な認証・認可
 
社内認証基盤用のVault Pluginを作るメリット
社内認証基盤用のVault Pluginを作るメリット社内認証基盤用のVault Pluginを作るメリット
社内認証基盤用のVault Pluginを作るメリット
 
Microsoft MVP から見たクラウド サービスの現状と今後について
Microsoft MVP から見たクラウド サービスの現状と今後についてMicrosoft MVP から見たクラウド サービスの現状と今後について
Microsoft MVP から見たクラウド サービスの現状と今後について
 
【de:code 2020】 Azure Expert MSP の FIXER が処方、DX に効く 「クラウド運用」「AI」「人材育成」 の即効薬
【de:code 2020】 Azure Expert MSP の FIXER が処方、DX に効く 「クラウド運用」「AI」「人材育成」 の即効薬【de:code 2020】 Azure Expert MSP の FIXER が処方、DX に効く 「クラウド運用」「AI」「人材育成」 の即効薬
【de:code 2020】 Azure Expert MSP の FIXER が処方、DX に効く 「クラウド運用」「AI」「人材育成」 の即効薬
 
Cloud Days Tokyo 2015 "オンプレミス環境のクラウド化と運用を楽にする OpenStack ソリューション ~ハイブリッド・クラウドを...
Cloud Days Tokyo 2015 "オンプレミス環境のクラウド化と運用を楽にする OpenStack ソリューション ~ハイブリッド・クラウドを...Cloud Days Tokyo 2015 "オンプレミス環境のクラウド化と運用を楽にする OpenStack ソリューション ~ハイブリッド・クラウドを...
Cloud Days Tokyo 2015 "オンプレミス環境のクラウド化と運用を楽にする OpenStack ソリューション ~ハイブリッド・クラウドを...
 
【2018年3月時点】Oracle BI 12c 新機能
【2018年3月時点】Oracle BI 12c 新機能【2018年3月時点】Oracle BI 12c 新機能
【2018年3月時点】Oracle BI 12c 新機能
 
「明日の認証会議 3」講演用スライド 20141002(配布用)
「明日の認証会議 3」講演用スライド 20141002(配布用)「明日の認証会議 3」講演用スライド 20141002(配布用)
「明日の認証会議 3」講演用スライド 20141002(配布用)
 
Innovation and Startups Today
Innovation and Startups TodayInnovation and Startups Today
Innovation and Startups Today
 
オンプレミスからクラウドへ:Oracle Databaseの移行ベストプラクティスを解説 (Oracle Cloudウェビナーシリーズ: 2021年2月18日)
オンプレミスからクラウドへ:Oracle Databaseの移行ベストプラクティスを解説 (Oracle Cloudウェビナーシリーズ: 2021年2月18日)オンプレミスからクラウドへ:Oracle Databaseの移行ベストプラクティスを解説 (Oracle Cloudウェビナーシリーズ: 2021年2月18日)
オンプレミスからクラウドへ:Oracle Databaseの移行ベストプラクティスを解説 (Oracle Cloudウェビナーシリーズ: 2021年2月18日)
 
Otrs&OTOBO_document 20210402
Otrs&OTOBO_document 20210402Otrs&OTOBO_document 20210402
Otrs&OTOBO_document 20210402
 
Nsx t api-automation_202103
Nsx t api-automation_202103Nsx t api-automation_202103
Nsx t api-automation_202103
 
MySQL 5.7 & 最新開発状況 @ オープンソースカンファレンス20
MySQL 5.7 & 最新開発状況 @ オープンソースカンファレンス20MySQL 5.7 & 最新開発状況 @ オープンソースカンファレンス20
MySQL 5.7 & 最新開発状況 @ オープンソースカンファレンス20
 
20220409 AWS BLEA 開発にあたって検討したこと
20220409 AWS BLEA 開発にあたって検討したこと20220409 AWS BLEA 開発にあたって検討したこと
20220409 AWS BLEA 開発にあたって検討したこと
 
見せてもらおうか、新しい Microsoft Edge の性能とやらを
見せてもらおうか、新しい Microsoft Edge の性能とやらを見せてもらおうか、新しい Microsoft Edge の性能とやらを
見せてもらおうか、新しい Microsoft Edge の性能とやらを
 
Workspace ONE PoC Guide Chapter 3 Office365 Integration v1.1
Workspace ONE PoC Guide Chapter 3 Office365 Integration v1.1Workspace ONE PoC Guide Chapter 3 Office365 Integration v1.1
Workspace ONE PoC Guide Chapter 3 Office365 Integration v1.1
 
Oss事例紹介資料20141111 明日の認証会議 掲載用
Oss事例紹介資料20141111 明日の認証会議 掲載用Oss事例紹介資料20141111 明日の認証会議 掲載用
Oss事例紹介資料20141111 明日の認証会議 掲載用
 
OCHaCafe2#5 変幻自在♪ 広がるKubernetesのエコシステム
OCHaCafe2#5 変幻自在♪ 広がるKubernetesのエコシステムOCHaCafe2#5 変幻自在♪ 広がるKubernetesのエコシステム
OCHaCafe2#5 変幻自在♪ 広がるKubernetesのエコシステム
 
AIP改め、MIP_20230128_it.pdf
AIP改め、MIP_20230128_it.pdfAIP改め、MIP_20230128_it.pdf
AIP改め、MIP_20230128_it.pdf
 
AIP改め、MIP_20230128_it.pdf
AIP改め、MIP_20230128_it.pdfAIP改め、MIP_20230128_it.pdf
AIP改め、MIP_20230128_it.pdf
 
お客様からのセキュリティチェックを乗り越えるための SaaS のアプローチ.pptx
お客様からのセキュリティチェックを乗り越えるための SaaS のアプローチ.pptxお客様からのセキュリティチェックを乗り越えるための SaaS のアプローチ.pptx
お客様からのセキュリティチェックを乗り越えるための SaaS のアプローチ.pptx
 

More from Hitachi, Ltd. OSS Solution Center.

Guide of authentication and authorization for cloud native applications with ...
Guide of authentication and authorization for cloud native applications with ...Guide of authentication and authorization for cloud native applications with ...
Guide of authentication and authorization for cloud native applications with ...Hitachi, Ltd. OSS Solution Center.
 
KeycloakのCNCF incubating project入りまでのアップストリーム活動の歩み
KeycloakのCNCF incubating project入りまでのアップストリーム活動の歩みKeycloakのCNCF incubating project入りまでのアップストリーム活動の歩み
KeycloakのCNCF incubating project入りまでのアップストリーム活動の歩みHitachi, Ltd. OSS Solution Center.
 
KubeCon NA 2023 Recap: Challenge to Implementing “Scalable” Authorization wit...
KubeCon NA 2023 Recap: Challenge to Implementing “Scalable” Authorization wit...KubeCon NA 2023 Recap: Challenge to Implementing “Scalable” Authorization wit...
KubeCon NA 2023 Recap: Challenge to Implementing “Scalable” Authorization wit...Hitachi, Ltd. OSS Solution Center.
 
Keycloakの全体像: 基本概念、ユースケース、そして最新の開発動向
Keycloakの全体像: 基本概念、ユースケース、そして最新の開発動向Keycloakの全体像: 基本概念、ユースケース、そして最新の開発動向
Keycloakの全体像: 基本概念、ユースケース、そして最新の開発動向Hitachi, Ltd. OSS Solution Center.
 
Challenge to Implementing "Scalable" Authorization with Keycloak
Challenge to Implementing "Scalable" Authorization with KeycloakChallenge to Implementing "Scalable" Authorization with Keycloak
Challenge to Implementing "Scalable" Authorization with KeycloakHitachi, Ltd. OSS Solution Center.
 
Why Assertion-based Access Token is preferred to Handle-based one?
Why Assertion-based Access Token is preferred to Handle-based one?Why Assertion-based Access Token is preferred to Handle-based one?
Why Assertion-based Access Token is preferred to Handle-based one?Hitachi, Ltd. OSS Solution Center.
 
What API Specifications and Tools Help Engineers to Construct a High-Security...
What API Specifications and Tools Help Engineers to Construct a High-Security...What API Specifications and Tools Help Engineers to Construct a High-Security...
What API Specifications and Tools Help Engineers to Construct a High-Security...Hitachi, Ltd. OSS Solution Center.
 
Implementing security and availability requirements for banking API system us...
Implementing security and availability requirements for banking API system us...Implementing security and availability requirements for banking API system us...
Implementing security and availability requirements for banking API system us...Hitachi, Ltd. OSS Solution Center.
 
Lightweight Zero-trust Network Implementation and Transition with Keycloak an...
Lightweight Zero-trust Network Implementation and Transition with Keycloak an...Lightweight Zero-trust Network Implementation and Transition with Keycloak an...
Lightweight Zero-trust Network Implementation and Transition with Keycloak an...Hitachi, Ltd. OSS Solution Center.
 
Overall pictures of Identity provider mix-up attack patterns and trade-offs b...
Overall pictures of Identity provider mix-up attack patterns and trade-offs b...Overall pictures of Identity provider mix-up attack patterns and trade-offs b...
Overall pictures of Identity provider mix-up attack patterns and trade-offs b...Hitachi, Ltd. OSS Solution Center.
 

More from Hitachi, Ltd. OSS Solution Center. (20)

Guide of authentication and authorization for cloud native applications with ...
Guide of authentication and authorization for cloud native applications with ...Guide of authentication and authorization for cloud native applications with ...
Guide of authentication and authorization for cloud native applications with ...
 
KeycloakのCNCF incubating project入りまでのアップストリーム活動の歩み
KeycloakのCNCF incubating project入りまでのアップストリーム活動の歩みKeycloakのCNCF incubating project入りまでのアップストリーム活動の歩み
KeycloakのCNCF incubating project入りまでのアップストリーム活動の歩み
 
KubeCon NA 2023 Recap: Challenge to Implementing “Scalable” Authorization wit...
KubeCon NA 2023 Recap: Challenge to Implementing “Scalable” Authorization wit...KubeCon NA 2023 Recap: Challenge to Implementing “Scalable” Authorization wit...
KubeCon NA 2023 Recap: Challenge to Implementing “Scalable” Authorization wit...
 
Keycloakの全体像: 基本概念、ユースケース、そして最新の開発動向
Keycloakの全体像: 基本概念、ユースケース、そして最新の開発動向Keycloakの全体像: 基本概念、ユースケース、そして最新の開発動向
Keycloakの全体像: 基本概念、ユースケース、そして最新の開発動向
 
Challenge to Implementing "Scalable" Authorization with Keycloak
Challenge to Implementing "Scalable" Authorization with KeycloakChallenge to Implementing "Scalable" Authorization with Keycloak
Challenge to Implementing "Scalable" Authorization with Keycloak
 
KubeConRecap_nakamura.pdf
KubeConRecap_nakamura.pdfKubeConRecap_nakamura.pdf
KubeConRecap_nakamura.pdf
 
NGINXでの認可について考える
NGINXでの認可について考えるNGINXでの認可について考える
NGINXでの認可について考える
 
Security Considerations for API Gateway Aggregation
Security Considerations for API Gateway AggregationSecurity Considerations for API Gateway Aggregation
Security Considerations for API Gateway Aggregation
 
IDガバナンス&管理の基礎
IDガバナンス&管理の基礎IDガバナンス&管理の基礎
IDガバナンス&管理の基礎
 
Why Assertion-based Access Token is preferred to Handle-based one?
Why Assertion-based Access Token is preferred to Handle-based one?Why Assertion-based Access Token is preferred to Handle-based one?
Why Assertion-based Access Token is preferred to Handle-based one?
 
What API Specifications and Tools Help Engineers to Construct a High-Security...
What API Specifications and Tools Help Engineers to Construct a High-Security...What API Specifications and Tools Help Engineers to Construct a High-Security...
What API Specifications and Tools Help Engineers to Construct a High-Security...
 
Implementing security and availability requirements for banking API system us...
Implementing security and availability requirements for banking API system us...Implementing security and availability requirements for banking API system us...
Implementing security and availability requirements for banking API system us...
 
Lightweight Zero-trust Network Implementation and Transition with Keycloak an...
Lightweight Zero-trust Network Implementation and Transition with Keycloak an...Lightweight Zero-trust Network Implementation and Transition with Keycloak an...
Lightweight Zero-trust Network Implementation and Transition with Keycloak an...
 
Overall pictures of Identity provider mix-up attack patterns and trade-offs b...
Overall pictures of Identity provider mix-up attack patterns and trade-offs b...Overall pictures of Identity provider mix-up attack patterns and trade-offs b...
Overall pictures of Identity provider mix-up attack patterns and trade-offs b...
 
Apache con@home 2021_sha
Apache con@home 2021_shaApache con@home 2021_sha
Apache con@home 2021_sha
 
Node-RED Installer, Standalone Installer using Electron
Node-RED Installer, Standalone Installer using ElectronNode-RED Installer, Standalone Installer using Electron
Node-RED Installer, Standalone Installer using Electron
 
Hacktoberfest 概要、Node-REDプロジェクト貢献手順
Hacktoberfest 概要、Node-REDプロジェクト貢献手順Hacktoberfest 概要、Node-REDプロジェクト貢献手順
Hacktoberfest 概要、Node-REDプロジェクト貢献手順
 
Node-RED v2.0新機能紹介
Node-RED v2.0新機能紹介Node-RED v2.0新機能紹介
Node-RED v2.0新機能紹介
 
Node-REDからREST APIに接続
Node-REDからREST APIに接続Node-REDからREST APIに接続
Node-REDからREST APIに接続
 
Node-RED v1.3新機能紹介
Node-RED v1.3新機能紹介Node-RED v1.3新機能紹介
Node-RED v1.3新機能紹介
 

Recently uploaded

デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)UEHARA, Tetsutaro
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成Hiroshi Tomioka
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfFumieNakayama
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)Hiroki Ichikura
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfFumieNakayama
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineerYuki Kikuchi
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?akihisamiyanaga1
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...博三 太田
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案sugiuralab
 

Recently uploaded (9)

デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
 

最近のKeycloakのご紹介 ~クライアントポリシーとFAPI~

  • 1. © Hitachi, Ltd. 2021. All rights reserved. 最近のKeycloakのご紹介 ~クライアントポリシーとFAPI~ OSSセキュリティ技術の会 株式会社 日立製作所 Software CoE OSSソリューションセンタ 田畑 義之
  • 2. 1 © Hitachi, Ltd. 2021. All rights reserved. 自己紹介 田畑 義之 (たばた よしゆき)  株式会社 日立製作所 Software CoE OSSソリューションセンタ  ソフトウェアエンジニア  GitHub: @y-tabata, Qiita: @yo-tabata • 認証認可スペシャリストとしてのAPI/SSO関連案件の支援  銀行用などの高セキュリティAPIシステムのコンサル/サポート • 認証認可・API管理関連のOSSへのコントリビュート  Keycloak(アイデンティティ管理のOSS)における、OAuth/OIDC/FAPI関連機能の開発  3scale(API管理のOSS)における、セキュリティ/アクセス制御関連機能の開発 • OSSの活用事例や検証結果の情報発信  Qiita/ThinkITでのWeb記事投稿  Apidays/API Specifications Conference/CloudNative Daysなど、国内外のイベントでの情報発信
  • 3. © Hitachi, Ltd. 2021. All rights reserved. Contents 2 1. 最近のKeycloakリリース状況 2. 注目機能1: クライアントポリシーのご紹介 3. 注目機能2: FAPIのご紹介 4. クライアントポリシー&FAPIのデモ
  • 4. © Hitachi, Ltd. 2021. All rights reserved. Contents 3 1. 最近のKeycloakリリース状況 2. 注目機能1: クライアントポリシーのご紹介 3. 注目機能2: FAPIのご紹介 4. クライアントポリシー&FAPIのデモ
  • 5. 4 © Hitachi, Ltd. 2021. All rights reserved. v15 FAPI、CIBAに完全対応 v14 FAPIに正式対応 v13 Device Flow対応 CIBA対応開始 v12 FAPIがpreview v11 署名・クライアント認証強化 最近のKeycloakリリース状況(前回の勉強会以降): 標準対応強化 https://www.keycloak.org/docs/latest/release_notes/index.html より抜粋 乗松さん大活躍!
  • 6. 5 © Hitachi, Ltd. 2021. All rights reserved. 最近のKeycloakリリース状況(前回の勉強会以降): 他トピック • オフラインセッションの扱い改善 • オフラインセッション(DBに永続化されるセッション)は、Keycloak起動時にDBから全部ロードされるた め、大量にオフラインセッションがあるとKeycloakの起動が遅くなる問題があった。 → v14より、インデックスのチューニングなどで読み込みが早くなった。 v14より、previewとして、オンデマンドでオフラインセッションを読み込む機能がサポートされた。 • Keycloak Gatekeeper (Louketo Proxy)のEOL • v12で、Keycloak Gatekeeperとその後継のLouketo ProxyがEOLになると突然発表。 使っている人は注意! • Keycloak.X • v12から、previewとして、Quarkus版のKeycloak.Xの配布が開始。 それなりに動く模様。 • [参考] Keycloak.Xをクラスタ構成で動かしてみる https://qiita.com/yo-tabata/items/6d29795fc3afa72d1b08
  • 7. © Hitachi, Ltd. 2021. All rights reserved. Contents 6 1. 最近のKeycloakリリース状況 2. 注目機能1: クライアントポリシーのご紹介 3. 注目機能2: FAPIのご紹介 4. クライアントポリシー&FAPIのデモ
  • 8. 7 © Hitachi, Ltd. 2021. All rights reserved. クライアントポリシーとは (1/6) ~セキュリティプロファイル~ クライアントポリシーとは、Keycloakにおいて、セキュリティプロファイルをクライアントに適用する際の課題を解決するためのコンセプト。 セキュリティプロファイルとは、OAuth 2.0の具体的な使い方の規定(プロファイル)のうち、特にセキュリティを重視したもの。 たとえば、 - FAPI Security Profile …OpenID Foundationによるセキュリティプロファイル。高いセキュリティを要求される金融セクタで の利用などを想定。 https://openid.net/specs/openid-financial-api-part-2-1_0-final.html - Open Banking Security Profile …英国のOpen Bankingによるセキュリティプロファイル。 https://standards.openbanking.org.uk/security-profiles/ - Consumer Data Security Profile …オーストラリアのConsumer Data Rightによるセキュリティプロファイル。 https://consumerdatastandardsaustralia.github.io/standards/#security-profile - Open Banking Brasil Financial-grade API Security Profile …ブラジルの中央銀行によるセキュリティプロファイル。 https://openbanking-brasil.github.io/specs-seguranca/open-banking-brasil-financial-api-1_ID2.html 以下なども、広義ではセキュリティプロファイルとみなすことができる。 - RFC 8252 OAuth 2.0 for Native Apps …ネイティブアプリでOAuth 2.0を安全に使用するための標準仕様。 https://datatracker.ietf.org/doc/html/rfc8252 - OAuth 2.0 for Browser-Based Apps …SPAでOAuth 2.0を安全に使用するための標準仕様。 https://datatracker.ietf.org/doc/html/draft-ietf-oauth-browser-based-apps-08
  • 9. 8 © Hitachi, Ltd. 2021. All rights reserved. クライアントポリシーとは (2/6) ~プロファイル適用時の課題~ セキュリティプロファイルをクライアントに適用する際の課題とは、 1. 新規のセキュリティプロファイルのサポートや改変コストが高い。 - 不足機能があればKeycloak本体の改造が必要となり、タイムリーに追従できない。 - 本番環境適用の際にVUPが必要となり、ユーザビリティが損なわれる。 2. セキュリティプロファイルの多数のクライアントへの適用が煩雑。 - セキュリティプロファイルに関する設定項目が40以上あるので、それを多数のクライアントに適用するのは大変、かつerror proneである。 3. 複数のセキュリティプロファイルを適用することができない。 - 基本的に1つのクライアントの1つの設定項目に対して、適用できる設定は1つなので、複数のセキュリティプロファイルを1つのク ライアントに適用するユースケースを実現できない。 - 無理やり実現するには、同一クライアントを複数のレルム(名前空間)に別クライアントとして定義する必要があるが、管理が煩 雑になる。 この3つの課題を解決するコンセプトが、クライアントポリシーである。
  • 10. 9 © Hitachi, Ltd. 2021. All rights reserved. クライアントポリシーとは (3/6) ~クライアントポリシーによる課題解決~ セキュリティプロファイルをクライアントに適用する際の課題とは、 1. 新規のセキュリティプロファイルのサポートや改変コストが高い。 [原因] セキュリティプロファイルを構成する設定の処理をKeycloak本体のコードで実装しているから。 → これらの処理を動的にロード・アンロードするための機構(Framework)を設ける。 その上にComponentsという形でセキュリティプロファイルに関する処理を実装する。 2. セキュリティプロファイルの多数のクライアントへの適用が煩雑。 3. 複数のセキュリティプロファイルを適用することができない。 [原因] クライアントとその設定が一体化しているから。 → Framework上のComponentsで、これらを分離する。 これが、クライアントポリシーの基本方針である。
  • 11. 10 © Hitachi, Ltd. 2021. All rights reserved. クライアントポリシーとは (4/6) ~コンポーネント構成~ クライアントポリシーは、大きく以下の2つから成り立つ。 1.Framework …Componentsのロード・アンロード を管理し、Componentsを実装するためのインタフェー スであるフレームワークを提供する。 2.Components …セキュリティプロファイルに関する処 理。Componentsにて、セキュリティプロファイルをクライ アントに適用する。 Componentsは、以下の2つから構成される。 1.Condition/Policy …セキュリティプロファイルの適 用対象クライアントを決めるコンポーネント。クライアント のメタデータ(静的な特性)とクライアントからのリクエスト (動的な特性)をもとに、セキュリティプロファイルを適用 するかどうかを決める。 2.Executor/Profile …セキュリティプロファイルの適 用内容を規定し、クライアントに対してセキュリティプロ ファイルを実現するための処理を行うコンポーネント。
  • 12. 11 © Hitachi, Ltd. 2021. All rights reserved. クライアントポリシーとは (5/6) ~クライアントポリシーの実行ポイント~ クライアントポリシーは、各種エンドポイントにクラ イアントの要求が来たときに実行される。 具体的には、各Endpointにて、クライアントか らのRequestをもとに、Conditionを評価し、 セキュリティプロファイルを適用する場合は、 Executorを実行する。
  • 13. 12 © Hitachi, Ltd. 2021. All rights reserved. クライアントポリシーとは (6/6) ~クライアントポリシーのクラス構成~ Condition、Executorは、ともに Frameworkのインタフェースを実装したプロバ イダである。 これによるメリットは2点。 - Frameworkのコードと、Conditionや Executorのコードが分離されるため、セキュ リティプロファイルのVUP時や新しいセキュリ ティプロファイルのサポート時にKeycloak本 体のコードを修正する必要がない。 - ConditionやExecutorのコードがプロバイダ として実装されているため、Keycloak稼働 中にロード・アンロードすることができる。
  • 14. © Hitachi, Ltd. 2021. All rights reserved. Contents 13 1. 最近のKeycloakリリース状況 2. 注目機能1: クライアントポリシーのご紹介 3. 注目機能2: FAPIのご紹介 4. クライアントポリシー&FAPIのデモ
  • 15. 14 © Hitachi, Ltd. 2021. All rights reserved. FAPIとは (1/3) ~FAPIの概要~ FAPI (Financial-grade API Security Profile)とは、OpenID Foundationによるセキュリティプロファイルで、高 いセキュリティを要求される金融セクタでの利用などを想定している。 OAuth 2.0 OpenID Connect (OIDC) FAPI APIセキュリティのデファクトスタンダード。 さまざまな標準仕様のベースとして参照されている。 OAuth 2.0の使い方を限定し、ハードニングしたもの。 SSOのプロトコルとしてもよく使用される。 FAPI (Financial-grade API)は、OAuth 2.0と OIDCの使い方をさらに限定し、ハードニングしたもの。 金融分野での使用を想定している。
  • 16. 15 © Hitachi, Ltd. 2021. All rights reserved. FAPIとは (2/3) ~FAPIの歴史~ 2021/3 2021/3 まだ まだ
  • 17. 16 © Hitachi, Ltd. 2021. All rights reserved. FAPIとは (3/3) ~FAPIの注目度~ FAPIの注目度は国内外で年々上昇中。 EUでPSD2が成立 (2015/11) 改正銀行法が施行 (2017/6) Open Banking Implementation Entityが FAPI WGとのコラボレーションを発表 (2017/5) 全国銀行協会がFAPIへの準拠を推奨 (2017/7) グローバルでのオープンAPIの 急速な普及につながった 各銀行にオープンAPI導入の 努力義務が課せられた イギリスがOpen BankingStandardを公表 (2016/2) 国内 グローバル 2015 2016 2017 そんな中、Keycloakがv15でFAPIに完全対応した!
  • 18. © Hitachi, Ltd. 2021. All rights reserved. Contents 17 1. 最近のKeycloakリリース状況 2. 注目機能1: クライアントポリシーのご紹介 3. 注目機能2: FAPIのご紹介 4. クライアントポリシー&FAPIのデモ
  • 19. 18 © Hitachi, Ltd. 2021. All rights reserved. (デモ)
  • 20. 19 © Hitachi, Ltd. 2021. All rights reserved. まとめ - FAPIとクライアントポリシーについて、デモなどを通じてご紹介しました。 - クライアントポリシーは、セキュリティプロファイル適用時の課題を解決するためのコンセプトとして登 場しましたが、カスタマイズの自由度は計り知れません(もしかしたらSPI以上かも)。 興味のある方は是非触ってみてください。
  • 21. 20 © Hitachi, Ltd. 2021. All rights reserved. Trademarks • OpenID is a trademark or registered trademark of OpenID Foundation in the United States and other countries. • GitHub is a trademark or registered trademark of GitHub, Inc. in the United States and other countries. • Other brand names and product names used in this material are trademarks, registered trademarks, or trade names of their respective holders.