SlideShare a Scribd company logo
© Hitachi, Ltd. 2021. All rights reserved.
株式会社 日立製作所
OSSソリューションセンタ
2021/03/12
謝 洋
Apache CamelおよびKeycloak
を用いたAPI管理基盤の実現
CloudNative Days Spring 2021 ONLINE
1
© Hitachi, Ltd. 2021. All rights reserved.
・Keycloak/3scale/Apache Camelのコミュニティ版および商用製品の技術サポ
ートに従事している
・過去にはApache Spark、ElasticsearchなどのOSSのサポートにも従事していた。
自己紹介
謝 洋
株式会社 日立製作所
OSSソリューションセンタ
ソフトウェアエンジニア
GitHub:@Yang-Xie-OSS
© Hitachi, Ltd. 2021. All rights reserved.
1. はじめに
2. CamelでAPI管理基盤の実現
3. KeycloakでAPI管理基盤にAPIアクセス制御の追加
目次
2
4. API管理基盤におけるその他機能の実現
5. まとめ
3
© Hitachi, Ltd. 2021. All rights reserved.
1. はじめに
4
© Hitachi, Ltd. 2021. All rights reserved.
 異種システムを連携する製品として知られているApache Camel(以降、Camel)はAPIゲートウェイを実現
できる。
 認可サーバであるKeycloakをCamelに付与することで、APIのアクセス制御を実現できる。
 Camelの多様な機能を用いて、 多くのその他の機能(例: 統計情報提供、API仕様公開)を実現できる。
はじめに
API管理基盤
認可サーバ
Keycloak
APIゲートウェイ
Camel
アプリケーション
JDBC
REST(HTTP)
FTP
REST(HTTP)
REST(HTTP)
APIサーバ
REST(HTTP)
アクセストークン
マッシュアップ
プロトコル変換
リバースプロキシ
流量制御
トークン
イントロスペクション
APIサーバ
APIサーバ
APIサーバ
APIサーバ
その他の機能
統計情報提供 API仕様公開
OAuth MTLS
アクセストークン
トークン発行/管理
5
© Hitachi, Ltd. 2021. All rights reserved.
2. CamelでAPI管理基盤の実現
6
© Hitachi, Ltd. 2021. All rights reserved.
 Apache Camel(以降、Camel)は、異種システムを連携することができるOSSである。
 プロトコル変換、データフォーマット変換とマッシュアップが得意である。
 RESTをはじめJDBC(=Java Database Connectivity)、MQ(=Message Queue)など多数のプロトコルを
サポートする。
Camelとは
…
…
FTP JDBC
Camel
MQ HTTP Kafka
REST
※ Camelでは、200以上の接続コンポーネントが提供されている。
7
© Hitachi, Ltd. 2021. All rights reserved.
 開発言語として、xmlベースのSpring DSL、Blueprint DSLとJavaベースのJava DSLを提供している。
 xmlベースの開発言語では、GUIの開発画面がサポートされており、ローコード開発ができる。
 Javaに慣れた開発者でもコーディング経験がない開発者でもストレスなく着手できる。
Camelの特徴
xmlで開発の画面(GUI) Javaで開発の画面
※Source画面でxmlソースを確認できる。
8
© Hitachi, Ltd. 2021. All rights reserved.
 Camelでは、リバースプロキシ、流量制御、プロトコル変換とマッシュアップなどAPIゲートウェイに必要な機
能を持っているAPI管理基盤を実現できる。
CamelでAPI管理基盤の実現
APIサーバ
APIサーバ
プロトコル変換
API管理基盤
APIゲートウェイ
Camel
アプリケーション
JDBC
REST(HTTP)
FTP
REST(HTTP)
流量制御
REST(HTTP)
APIサーバ
APIサーバ
マッシュアップ
APIサーバ
REST(HTTP)
リバースプロキシ
9
© Hitachi, Ltd. 2021. All rights reserved.
 Camelでは、リバースプロキシを実現できる。
リバースプロキシ
API管理基盤
APIゲートウェイ
Camel
アプリケーション
APIサーバ
REST(HTTP) REST(HTTP)
10
© Hitachi, Ltd. 2021. All rights reserved.
 Camelでは、以下の2方式の流量制御を実現できる。
1. 同時に受け付けられるリクエスト数を制限する方式。
2. 単位時間に受け付けられるリクエスト総数を制限する方式。
流量制御
API管理基盤
APIゲートウェイ
Camel
アプリケーション
APIサーバ
①APIをコールする
③超えていなければ
APIをコールする
②指定した流量を超えていないか
を確認する
11
© Hitachi, Ltd. 2021. All rights reserved.
 Camelでは、RESTからJDBC、FTPなどへのプロトコル変換を実現できる。
プロトコル変換
API管理基盤
APIゲートウェイ
Camel
アプリケーション
JDBC
FTP
APIサーバ
APIサーバ
REST(HTTP)
12
© Hitachi, Ltd. 2021. All rights reserved.
 Camelでは、マッシュアップを実現できる。
マッシュアップ
※ マッシュアップとは、複数のAPIをまとめて1つのAPIとして公開する技術である。
API管理基盤
APIゲートウェイ
Camel
アプリケーション
APIサーバ
APIサーバ
①APIをコールする
②複数のAPIをコールし、
その結果をマージしてレスポンスとして返す
13
© Hitachi, Ltd. 2021. All rights reserved.
 Camelでは、APIアクセス制御ができない。APIがそのままネット上に公開されると、機密性の高いデータ、
個人情報が流出し、利用される可能性がある。
APIアクセス制御の問題
アプリケーション
アプリケーション
API管理基盤
APIゲートウェイ
Camel
APIサーバ
APIサーバ
APIサーバ
APIアクセス制御をしない場合、誰でもAPIにアクセス
でき、機密性の高いデータ、個人情報が流出する可
能性がある
APIユーザ
その他の人
14
© Hitachi, Ltd. 2021. All rights reserved.
3. KeycloakでAPI管理基盤にAPIアクセス制御の追加
15
© Hitachi, Ltd. 2021. All rights reserved.
 Red Hat社を中心にOSSにて開発されているID管理・アクセス管理のソフトウェアである。
 OAuth 2.0の認可サーバとして使用することができる。
Keycloakとは
16
© Hitachi, Ltd. 2021. All rights reserved.
 Keycloakを認可サーバとしてCamelに組み込むことにより、API管理基盤にAPIアクセス制御を追加できる。
KeycloakでAPIアクセス制御の追加
API管理基盤
APIゲートウェイ
Camel
認可サーバ
Keycloak
APIサーバ
アプリケーション
アクセストークン
アクセストークン
トークン発行/トークン管理
OAuth MTLS
トークン
イントロスペクション
17
© Hitachi, Ltd. 2021. All rights reserved.
 CamelとKeycloakを組み合わせたAPI管理基盤では、OAuth 2.0 に対応したトークンの発行やトークンの
管理を実現できる。
OAuth 2.0に対応したトークン発行/トークン管理
API管理基盤
認可サーバ
Keycloak
APIゲートウェイ
Camel APIサーバ
①トークンリクエストを送る
②アクセストークンを発行する
アプリケーション
③アクセストークンを付与
してAPIをコールする ④アクセストークンが有効で
あればAPIをコールする
アクセストークン
アクセストークン
18
© Hitachi, Ltd. 2021. All rights reserved.
 CamelとKeycloakを組み合わせたAPI管理基盤では、トークンイントロスペクションを実現できる。
トークンイントロスペクション
API管理基盤
認可サーバ
Keycloak
APIゲートウェイ
Camel
APIサーバ
①Keycloakから発行したアク
セストークンを付与してAPIを
コールする
アクセストークン
②アクセストークンの有効性を確認する
(=トークンイントロスペクション)
③アクセストークンが有効であれば
APIをコールする
アプリケーション
19
© Hitachi, Ltd. 2021. All rights reserved.
 CamelとKeycloakを組み合わせたAPI管理基盤では、OAuth MTLS(RFC 8705で定義されている)など
の高度なアクセス制御を実現できる。
OAuth MTLS
API管理基盤
認可サーバ
Keycloak
APIゲートウェイ
Camel
アプリケーション
APIサーバ
③アクセストークンを付与して
APIをコールする
(クライアント証明書を提示) ⑤一致すれば
APIをコールする
④アクセストークン内のクライアント
証明書のハッシュ値を確認する
①トークンをリクエストする(クライアント
証明書を提示)
②クライアント証明書のハッシュ
が記載されるアクセストークン
を発行する
アクセストークン
アクセストークン
※ RFC 8705: https://tools.ietf.org/html/rfc8705
20
© Hitachi, Ltd. 2021. All rights reserved.
4. API管理基盤におけるその他機能の実現
21
© Hitachi, Ltd. 2021. All rights reserved.
 CamelとKeycloakを組み合わせたAPI管理基盤では、APIゲートウェイと認可サーバの基本機能だけでなく、
その他の機能も実現できる。
API管理基盤におけるその他機能の実現
API管理基盤
認可サーバ
Keycloak
APIゲートウェイ
Camel
APIサーバ
アプリケーション
その他の機能 統計情報提供 API仕様公開
22
© Hitachi, Ltd. 2021. All rights reserved.
 CamelとKeycloakを組み合わせたAPI管理基盤では、以下の2方式の統計情報の提供を実現できる。
 ヒープメモリ使用量といったJVM(=Java Virtual Machine)関連の方式
 各APIのレスポンスコードごとのレスポンス数といったAPI関連の方式
統計情報提供
API関連の統計情報提供
JVM関連の統計情報
23
© Hitachi, Ltd. 2021. All rights reserved.
 CamelとKeycloakを組み合わせたAPI管理基盤では、JVM関連の統計情報提供を実現できる。
 JVM関連の統計情報がJMX(Java Management eXtensions)プロトコルで公開される。JMXをサポート
する可視化ツールを用いて統計情報の可視化を実現できる。
JVM関連の統計情報提供
※ JMXとは、Javaアプリケーション
から統計情報を取得する技術の
一種。
※ 例として、Javaに組み込まれた
JMX可視化ツールであるJConsole
を使用。
24
© Hitachi, Ltd. 2021. All rights reserved.
 CamelとKeycloakを組み合わせたAPI管理基盤では、API関連の統計情報提供を実現できる。
 API関連の統計情報がJMXプロトコルで公開される。 Prometheusなどの監視ツールを経由して統計情
報を収集し、Grafanaなどのダッシュボードツールで可視化することを実現できる。
 Grafanaの機能を利用して、エラーレスポンスの回数が制限値を超えるとメールで管理者に通知するアラー
トを実現できる。
API関連方式の統計情報提供(1/2)
API関連の統計情報の可視化
API関連の統計情報のアラート
25
© Hitachi, Ltd. 2021. All rights reserved.
 CamelとKeycloakを組み合わせたAPI管理基盤では、API関連の統計情報提供を実現できる。
 API関連の統計情報がJMXプロトコルで公開される。 Prometheusなどの監視ツールを経由して統計情
報を収集し、Grafanaなどのダッシュボードツールで可視化することを実現できる。
 Grafanaの機能を利用して、エラーレスポンスの回数が制限値を超えるとメールで管理者に通知するアラー
トを実現できる。
API関連方式の統計情報提供(2/2)
アラートが発動時に関係者に送信するメール
26
© Hitachi, Ltd. 2021. All rights reserved.
 CamelとKeycloakを組み合わせたAPI管理基盤では、OpenAPI Specification(旧Swagger)に適合す
るAPI仕様の公開を実現できる。
API仕様公開
※ API仕様とは、APIの使い方(メソッド、パス、各種パラメータ、レスポンスなど)を示すJSONやYAMLのことである。
※ OpenAPI Specification: https://www.openapis.org/
27
© Hitachi, Ltd. 2021. All rights reserved.
5. まとめ
28
© Hitachi, Ltd. 2021. All rights reserved.
 Camelは、APIゲートウェイを実現できる。
 KeycloakをCamelに付与することで、APIのアクセス制御を実現できる。
 CamelとKeycloakを組み合わせたAPI管理基盤では、 APIゲートウェイと認可サーバ以外にも、多くのその
他の機能を実現できる。
 Camelはカスタマイズ性が高いので、Javaで本資料に言及した機能以外の機能も実現できる。
まとめ
29
© Hitachi, Ltd. 2021. All rights reserved.
 Red Hat is a registered trademark of Red Hat, Inc. in the United States and other countries.
 Apache and Camel are registered trademarks or trademarks of The Apache Software
Foundation in the United States and other countries.
 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.
Trademarks
© Hitachi, Ltd. 2021. All rights reserved. 30
END
Apache CamelおよびKeycloak
を用いたAPI管理基盤の実現
2021/03/12
株式会社 日立製作所
OSSソリューションセンタ
謝 洋
CloudNative Days Spring 2021 Online: Apache CamelおよびKeycloakを用いたAPI管理基盤の実現

More Related Content

What's hot

大規模データ活用向けストレージレイヤソフトのこれまでとこれから(NTTデータ テクノロジーカンファレンス 2019 講演資料、2019/09/05)
大規模データ活用向けストレージレイヤソフトのこれまでとこれから(NTTデータ テクノロジーカンファレンス 2019 講演資料、2019/09/05)大規模データ活用向けストレージレイヤソフトのこれまでとこれから(NTTデータ テクノロジーカンファレンス 2019 講演資料、2019/09/05)
大規模データ活用向けストレージレイヤソフトのこれまでとこれから(NTTデータ テクノロジーカンファレンス 2019 講演資料、2019/09/05)
NTT DATA Technology & Innovation
 
Vacuum徹底解説
Vacuum徹底解説Vacuum徹底解説
Vacuum徹底解説
Masahiko Sawada
 
Apache Spark on Kubernetes入門(Open Source Conference 2021 Online Hiroshima 発表資料)
Apache Spark on Kubernetes入門(Open Source Conference 2021 Online Hiroshima 発表資料)Apache Spark on Kubernetes入門(Open Source Conference 2021 Online Hiroshima 発表資料)
Apache Spark on Kubernetes入門(Open Source Conference 2021 Online Hiroshima 発表資料)
NTT DATA Technology & Innovation
 
Apache Atlasの現状とデータガバナンス事例 #hadoopreading
Apache Atlasの現状とデータガバナンス事例 #hadoopreadingApache Atlasの現状とデータガバナンス事例 #hadoopreading
Apache Atlasの現状とデータガバナンス事例 #hadoopreading
Yahoo!デベロッパーネットワーク
 
データインターフェースとしてのHadoop ~HDFSとクラウドストレージと私~ (NTTデータ テクノロジーカンファレンス 2019 講演資料、2019...
データインターフェースとしてのHadoop ~HDFSとクラウドストレージと私~ (NTTデータ テクノロジーカンファレンス 2019 講演資料、2019...データインターフェースとしてのHadoop ~HDFSとクラウドストレージと私~ (NTTデータ テクノロジーカンファレンス 2019 講演資料、2019...
データインターフェースとしてのHadoop ~HDFSとクラウドストレージと私~ (NTTデータ テクノロジーカンファレンス 2019 講演資料、2019...
NTT DATA Technology & Innovation
 
Hadoopのシステム設計・運用のポイント
Hadoopのシステム設計・運用のポイントHadoopのシステム設計・運用のポイント
Hadoopのシステム設計・運用のポイント
Cloudera Japan
 
Helidon 概要
Helidon 概要Helidon 概要
KafkaとAWS Kinesisの比較
KafkaとAWS Kinesisの比較KafkaとAWS Kinesisの比較
KafkaとAWS Kinesisの比較
Yoshiyasu SAEKI
 
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
Amazon Web Services Japan
 
データ活用を加速するAWS分析サービスのご紹介
データ活用を加速するAWS分析サービスのご紹介データ活用を加速するAWS分析サービスのご紹介
データ活用を加速するAWS分析サービスのご紹介
Amazon Web Services Japan
 
Spark SQL - The internal -
Spark SQL - The internal -Spark SQL - The internal -
Spark SQL - The internal -
NTT DATA OSS Professional Services
 
Hadoop -NameNode HAの仕組み-
Hadoop -NameNode HAの仕組み-Hadoop -NameNode HAの仕組み-
Hadoop -NameNode HAの仕組み-
Yuki Gonda
 
NetflixにおけるPresto/Spark活用事例
NetflixにおけるPresto/Spark活用事例NetflixにおけるPresto/Spark活用事例
NetflixにおけるPresto/Spark活用事例
Amazon Web Services Japan
 
ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方
Yoshiyasu SAEKI
 
Impala + Kudu を用いたデータウェアハウス構築の勘所 (仮)
Impala + Kudu を用いたデータウェアハウス構築の勘所 (仮)Impala + Kudu を用いたデータウェアハウス構築の勘所 (仮)
Impala + Kudu を用いたデータウェアハウス構築の勘所 (仮)
Cloudera Japan
 
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
 
Apache Bigtopによるオープンなビッグデータ処理基盤の構築(オープンデベロッパーズカンファレンス 2021 Online 発表資料)
Apache Bigtopによるオープンなビッグデータ処理基盤の構築(オープンデベロッパーズカンファレンス 2021 Online 発表資料)Apache Bigtopによるオープンなビッグデータ処理基盤の構築(オープンデベロッパーズカンファレンス 2021 Online 発表資料)
Apache Bigtopによるオープンなビッグデータ処理基盤の構築(オープンデベロッパーズカンファレンス 2021 Online 発表資料)
NTT DATA Technology & Innovation
 
噛み砕いてKafka Streams #kafkajp
噛み砕いてKafka Streams #kafkajp噛み砕いてKafka Streams #kafkajp
噛み砕いてKafka Streams #kafkajp
Yahoo!デベロッパーネットワーク
 
Apache Kafka 0.11 の Exactly Once Semantics
Apache Kafka 0.11 の Exactly Once SemanticsApache Kafka 0.11 の Exactly Once Semantics
Apache Kafka 0.11 の Exactly Once Semantics
Yoshiyasu SAEKI
 
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
NTT DATA Technology & Innovation
 

What's hot (20)

大規模データ活用向けストレージレイヤソフトのこれまでとこれから(NTTデータ テクノロジーカンファレンス 2019 講演資料、2019/09/05)
大規模データ活用向けストレージレイヤソフトのこれまでとこれから(NTTデータ テクノロジーカンファレンス 2019 講演資料、2019/09/05)大規模データ活用向けストレージレイヤソフトのこれまでとこれから(NTTデータ テクノロジーカンファレンス 2019 講演資料、2019/09/05)
大規模データ活用向けストレージレイヤソフトのこれまでとこれから(NTTデータ テクノロジーカンファレンス 2019 講演資料、2019/09/05)
 
Vacuum徹底解説
Vacuum徹底解説Vacuum徹底解説
Vacuum徹底解説
 
Apache Spark on Kubernetes入門(Open Source Conference 2021 Online Hiroshima 発表資料)
Apache Spark on Kubernetes入門(Open Source Conference 2021 Online Hiroshima 発表資料)Apache Spark on Kubernetes入門(Open Source Conference 2021 Online Hiroshima 発表資料)
Apache Spark on Kubernetes入門(Open Source Conference 2021 Online Hiroshima 発表資料)
 
Apache Atlasの現状とデータガバナンス事例 #hadoopreading
Apache Atlasの現状とデータガバナンス事例 #hadoopreadingApache Atlasの現状とデータガバナンス事例 #hadoopreading
Apache Atlasの現状とデータガバナンス事例 #hadoopreading
 
データインターフェースとしてのHadoop ~HDFSとクラウドストレージと私~ (NTTデータ テクノロジーカンファレンス 2019 講演資料、2019...
データインターフェースとしてのHadoop ~HDFSとクラウドストレージと私~ (NTTデータ テクノロジーカンファレンス 2019 講演資料、2019...データインターフェースとしてのHadoop ~HDFSとクラウドストレージと私~ (NTTデータ テクノロジーカンファレンス 2019 講演資料、2019...
データインターフェースとしてのHadoop ~HDFSとクラウドストレージと私~ (NTTデータ テクノロジーカンファレンス 2019 講演資料、2019...
 
Hadoopのシステム設計・運用のポイント
Hadoopのシステム設計・運用のポイントHadoopのシステム設計・運用のポイント
Hadoopのシステム設計・運用のポイント
 
Helidon 概要
Helidon 概要Helidon 概要
Helidon 概要
 
KafkaとAWS Kinesisの比較
KafkaとAWS Kinesisの比較KafkaとAWS Kinesisの比較
KafkaとAWS Kinesisの比較
 
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
 
データ活用を加速するAWS分析サービスのご紹介
データ活用を加速するAWS分析サービスのご紹介データ活用を加速するAWS分析サービスのご紹介
データ活用を加速するAWS分析サービスのご紹介
 
Spark SQL - The internal -
Spark SQL - The internal -Spark SQL - The internal -
Spark SQL - The internal -
 
Hadoop -NameNode HAの仕組み-
Hadoop -NameNode HAの仕組み-Hadoop -NameNode HAの仕組み-
Hadoop -NameNode HAの仕組み-
 
NetflixにおけるPresto/Spark活用事例
NetflixにおけるPresto/Spark活用事例NetflixにおけるPresto/Spark活用事例
NetflixにおけるPresto/Spark活用事例
 
ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方
 
Impala + Kudu を用いたデータウェアハウス構築の勘所 (仮)
Impala + Kudu を用いたデータウェアハウス構築の勘所 (仮)Impala + Kudu を用いたデータウェアハウス構築の勘所 (仮)
Impala + Kudu を用いたデータウェアハウス構築の勘所 (仮)
 
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 発表資料)
 
Apache Bigtopによるオープンなビッグデータ処理基盤の構築(オープンデベロッパーズカンファレンス 2021 Online 発表資料)
Apache Bigtopによるオープンなビッグデータ処理基盤の構築(オープンデベロッパーズカンファレンス 2021 Online 発表資料)Apache Bigtopによるオープンなビッグデータ処理基盤の構築(オープンデベロッパーズカンファレンス 2021 Online 発表資料)
Apache Bigtopによるオープンなビッグデータ処理基盤の構築(オープンデベロッパーズカンファレンス 2021 Online 発表資料)
 
噛み砕いてKafka Streams #kafkajp
噛み砕いてKafka Streams #kafkajp噛み砕いてKafka Streams #kafkajp
噛み砕いてKafka Streams #kafkajp
 
Apache Kafka 0.11 の Exactly Once Semantics
Apache Kafka 0.11 の Exactly Once SemanticsApache Kafka 0.11 の Exactly Once Semantics
Apache Kafka 0.11 の Exactly Once Semantics
 
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
 

Similar to CloudNative Days Spring 2021 Online: Apache CamelおよびKeycloakを用いたAPI管理基盤の実現

Oracle Cloud Infrastructure:2021年6月度サービス・アップデート
Oracle Cloud Infrastructure:2021年6月度サービス・アップデートOracle Cloud Infrastructure:2021年6月度サービス・アップデート
Oracle Cloud Infrastructure:2021年6月度サービス・アップデート
オラクルエンジニア通信
 
Open shiftmeetup 3scalelt_3
Open shiftmeetup 3scalelt_3Open shiftmeetup 3scalelt_3
Open shiftmeetup 3scalelt_3
Yuichi Nakamura
 
【Ltech#11】Kubernetesを利用した機械学習モデルの本番適用例
【Ltech#11】Kubernetesを利用した機械学習モデルの本番適用例【Ltech#11】Kubernetesを利用した機械学習モデルの本番適用例
【Ltech#11】Kubernetesを利用した機械学習モデルの本番適用例
LIFULL Co., Ltd.
 
MySQL 5.7 & 最新開発状況 @ オープンソースカンファレンス20
MySQL 5.7 & 最新開発状況 @ オープンソースカンファレンス20MySQL 5.7 & 最新開発状況 @ オープンソースカンファレンス20
MySQL 5.7 & 最新開発状況 @ オープンソースカンファレンス20Ryusuke Kajiyama
 
Workshop1-01
Workshop1-01Workshop1-01
Workshop1-01
mashimonator
 
[OracleCodeTokyo2019] Kubernetesで実現する運用自動化の新しいアプローチとは
[OracleCodeTokyo2019] Kubernetesで実現する運用自動化の新しいアプローチとは[OracleCodeTokyo2019] Kubernetesで実現する運用自動化の新しいアプローチとは
[OracleCodeTokyo2019] Kubernetesで実現する運用自動化の新しいアプローチとは
Koto Shigeru
 
Oracle Cloud PaaS & IaaS:2018年8月度サービス情報アップデート
Oracle Cloud PaaS & IaaS:2018年8月度サービス情報アップデートOracle Cloud PaaS & IaaS:2018年8月度サービス情報アップデート
Oracle Cloud PaaS & IaaS:2018年8月度サービス情報アップデート
オラクルエンジニア通信
 
第九回中国地方DB勉強会 in 米子 MySQL 5.7+
第九回中国地方DB勉強会 in 米子 MySQL 5.7+第九回中国地方DB勉強会 in 米子 MySQL 5.7+
第九回中国地方DB勉強会 in 米子 MySQL 5.7+
Ryusuke Kajiyama
 
Keycloakの最近のトピック
Keycloakの最近のトピックKeycloakの最近のトピック
Keycloakの最近のトピック
Hitachi, Ltd. OSS Solution Center.
 
2018/7/27 SAP on AWS お客様事例セミナー@大阪(BeeX資料2/2)
2018/7/27  SAP on AWS お客様事例セミナー@大阪(BeeX資料2/2)2018/7/27  SAP on AWS お客様事例セミナー@大阪(BeeX資料2/2)
2018/7/27 SAP on AWS お客様事例セミナー@大阪(BeeX資料2/2)
BeeX.inc
 
Qlik Senseを使ったSAP ECCとSAP S4 HANAのデータ分析
Qlik Senseを使ったSAP ECCとSAP S4 HANAのデータ分析Qlik Senseを使ったSAP ECCとSAP S4 HANAのデータ分析
Qlik Senseを使ったSAP ECCとSAP S4 HANAのデータ分析
QlikPresalesJapan
 
Workshop1-03
Workshop1-03Workshop1-03
Workshop1-03
mashimonator
 
Oracle Cloud PaaS & IaaS:2018年5月度サービス情報アップデート
Oracle Cloud PaaS & IaaS:2018年5月度サービス情報アップデートOracle Cloud PaaS & IaaS:2018年5月度サービス情報アップデート
Oracle Cloud PaaS & IaaS:2018年5月度サービス情報アップデート
オラクルエンジニア通信
 
[DevSumi2019]Cloud Native アプリケーションに最適!Oracle Cloud Infrastructureの魅力!
[DevSumi2019]Cloud Native アプリケーションに最適!Oracle Cloud Infrastructureの魅力![DevSumi2019]Cloud Native アプリケーションに最適!Oracle Cloud Infrastructureの魅力!
[DevSumi2019]Cloud Native アプリケーションに最適!Oracle Cloud Infrastructureの魅力!
オラクルエンジニア通信
 
Oracle Cloud PaaS & IaaS:2019年4月度サービス情報アップデート
Oracle Cloud PaaS & IaaS:2019年4月度サービス情報アップデートOracle Cloud PaaS & IaaS:2019年4月度サービス情報アップデート
Oracle Cloud PaaS & IaaS:2019年4月度サービス情報アップデート
オラクルエンジニア通信
 
Azuredevopsakskeda
AzuredevopsakskedaAzuredevopsakskeda
Azuredevopsakskeda
Tsukasa Kato
 
API Gateway / AWS CLI
API Gateway / AWS CLIAPI Gateway / AWS CLI
API Gateway / AWS CLI
Operation Lab, LLC.
 
[Oracle Innovation Summit Tokyo 2018] Fn Project: Next Generation Serverless ...
[Oracle Innovation Summit Tokyo 2018] Fn Project: Next Generation Serverless ...[Oracle Innovation Summit Tokyo 2018] Fn Project: Next Generation Serverless ...
[Oracle Innovation Summit Tokyo 2018] Fn Project: Next Generation Serverless ...
オラクルエンジニア通信
 
Workshop1-02
Workshop1-02Workshop1-02
Workshop1-02
mashimonator
 
2018/9/11 SAP on AWS お客様事例セミナー@東京(BeeX資料2/2)
2018/9/11 SAP on AWS お客様事例セミナー@東京(BeeX資料2/2)2018/9/11 SAP on AWS お客様事例セミナー@東京(BeeX資料2/2)
2018/9/11 SAP on AWS お客様事例セミナー@東京(BeeX資料2/2)
BeeX.inc
 

Similar to CloudNative Days Spring 2021 Online: Apache CamelおよびKeycloakを用いたAPI管理基盤の実現 (20)

Oracle Cloud Infrastructure:2021年6月度サービス・アップデート
Oracle Cloud Infrastructure:2021年6月度サービス・アップデートOracle Cloud Infrastructure:2021年6月度サービス・アップデート
Oracle Cloud Infrastructure:2021年6月度サービス・アップデート
 
Open shiftmeetup 3scalelt_3
Open shiftmeetup 3scalelt_3Open shiftmeetup 3scalelt_3
Open shiftmeetup 3scalelt_3
 
【Ltech#11】Kubernetesを利用した機械学習モデルの本番適用例
【Ltech#11】Kubernetesを利用した機械学習モデルの本番適用例【Ltech#11】Kubernetesを利用した機械学習モデルの本番適用例
【Ltech#11】Kubernetesを利用した機械学習モデルの本番適用例
 
MySQL 5.7 & 最新開発状況 @ オープンソースカンファレンス20
MySQL 5.7 & 最新開発状況 @ オープンソースカンファレンス20MySQL 5.7 & 最新開発状況 @ オープンソースカンファレンス20
MySQL 5.7 & 最新開発状況 @ オープンソースカンファレンス20
 
Workshop1-01
Workshop1-01Workshop1-01
Workshop1-01
 
[OracleCodeTokyo2019] Kubernetesで実現する運用自動化の新しいアプローチとは
[OracleCodeTokyo2019] Kubernetesで実現する運用自動化の新しいアプローチとは[OracleCodeTokyo2019] Kubernetesで実現する運用自動化の新しいアプローチとは
[OracleCodeTokyo2019] Kubernetesで実現する運用自動化の新しいアプローチとは
 
Oracle Cloud PaaS & IaaS:2018年8月度サービス情報アップデート
Oracle Cloud PaaS & IaaS:2018年8月度サービス情報アップデートOracle Cloud PaaS & IaaS:2018年8月度サービス情報アップデート
Oracle Cloud PaaS & IaaS:2018年8月度サービス情報アップデート
 
第九回中国地方DB勉強会 in 米子 MySQL 5.7+
第九回中国地方DB勉強会 in 米子 MySQL 5.7+第九回中国地方DB勉強会 in 米子 MySQL 5.7+
第九回中国地方DB勉強会 in 米子 MySQL 5.7+
 
Keycloakの最近のトピック
Keycloakの最近のトピックKeycloakの最近のトピック
Keycloakの最近のトピック
 
2018/7/27 SAP on AWS お客様事例セミナー@大阪(BeeX資料2/2)
2018/7/27  SAP on AWS お客様事例セミナー@大阪(BeeX資料2/2)2018/7/27  SAP on AWS お客様事例セミナー@大阪(BeeX資料2/2)
2018/7/27 SAP on AWS お客様事例セミナー@大阪(BeeX資料2/2)
 
Qlik Senseを使ったSAP ECCとSAP S4 HANAのデータ分析
Qlik Senseを使ったSAP ECCとSAP S4 HANAのデータ分析Qlik Senseを使ったSAP ECCとSAP S4 HANAのデータ分析
Qlik Senseを使ったSAP ECCとSAP S4 HANAのデータ分析
 
Workshop1-03
Workshop1-03Workshop1-03
Workshop1-03
 
Oracle Cloud PaaS & IaaS:2018年5月度サービス情報アップデート
Oracle Cloud PaaS & IaaS:2018年5月度サービス情報アップデートOracle Cloud PaaS & IaaS:2018年5月度サービス情報アップデート
Oracle Cloud PaaS & IaaS:2018年5月度サービス情報アップデート
 
[DevSumi2019]Cloud Native アプリケーションに最適!Oracle Cloud Infrastructureの魅力!
[DevSumi2019]Cloud Native アプリケーションに最適!Oracle Cloud Infrastructureの魅力![DevSumi2019]Cloud Native アプリケーションに最適!Oracle Cloud Infrastructureの魅力!
[DevSumi2019]Cloud Native アプリケーションに最適!Oracle Cloud Infrastructureの魅力!
 
Oracle Cloud PaaS & IaaS:2019年4月度サービス情報アップデート
Oracle Cloud PaaS & IaaS:2019年4月度サービス情報アップデートOracle Cloud PaaS & IaaS:2019年4月度サービス情報アップデート
Oracle Cloud PaaS & IaaS:2019年4月度サービス情報アップデート
 
Azuredevopsakskeda
AzuredevopsakskedaAzuredevopsakskeda
Azuredevopsakskeda
 
API Gateway / AWS CLI
API Gateway / AWS CLIAPI Gateway / AWS CLI
API Gateway / AWS CLI
 
[Oracle Innovation Summit Tokyo 2018] Fn Project: Next Generation Serverless ...
[Oracle Innovation Summit Tokyo 2018] Fn Project: Next Generation Serverless ...[Oracle Innovation Summit Tokyo 2018] Fn Project: Next Generation Serverless ...
[Oracle Innovation Summit Tokyo 2018] Fn Project: Next Generation Serverless ...
 
Workshop1-02
Workshop1-02Workshop1-02
Workshop1-02
 
2018/9/11 SAP on AWS お客様事例セミナー@東京(BeeX資料2/2)
2018/9/11 SAP on AWS お客様事例セミナー@東京(BeeX資料2/2)2018/9/11 SAP on AWS お客様事例セミナー@東京(BeeX資料2/2)
2018/9/11 SAP on AWS お客様事例セミナー@東京(BeeX資料2/2)
 

More from Hitachi, Ltd. OSS Solution Center.

Authentication and Authorization of The Latest Keycloak
Authentication and Authorization of The Latest KeycloakAuthentication and Authorization of The Latest Keycloak
Authentication and Authorization of The Latest Keycloak
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.
 
パスキーでリードする: NGINXとKeycloakによる効率的な認証・認可
パスキーでリードする: NGINXとKeycloakによる効率的な認証・認可パスキーでリードする: NGINXとKeycloakによる効率的な認証・認可
パスキーでリードする: NGINXとKeycloakによる効率的な認証・認可
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 Keycloak
Hitachi, Ltd. OSS Solution Center.
 
KubeConRecap_nakamura.pdf
KubeConRecap_nakamura.pdfKubeConRecap_nakamura.pdf
KubeConRecap_nakamura.pdf
Hitachi, Ltd. OSS Solution Center.
 
NGINXでの認可について考える
NGINXでの認可について考えるNGINXでの認可について考える
NGINXでの認可について考える
Hitachi, Ltd. OSS Solution Center.
 
Security Considerations for API Gateway Aggregation
Security Considerations for API Gateway AggregationSecurity Considerations for API Gateway Aggregation
Security Considerations for API Gateway Aggregation
Hitachi, Ltd. OSS Solution Center.
 
KeycloakでFAPIに対応した高セキュリティなAPIを公開する
KeycloakでFAPIに対応した高セキュリティなAPIを公開するKeycloakでFAPIに対応した高セキュリティなAPIを公開する
KeycloakでFAPIに対応した高セキュリティなAPIを公開する
Hitachi, Ltd. OSS Solution Center.
 
IDガバナンス&管理の基礎
IDガバナンス&管理の基礎IDガバナンス&管理の基礎
IDガバナンス&管理の基礎
Hitachi, Ltd. OSS Solution Center.
 
Keycloakのステップアップ認証について
Keycloakのステップアップ認証についてKeycloakのステップアップ認証について
Keycloakのステップアップ認証について
Hitachi, Ltd. OSS Solution Center.
 
NGINXをBFF (Backend for Frontend)として利用した話
NGINXをBFF (Backend for Frontend)として利用した話NGINXをBFF (Backend for Frontend)として利用した話
NGINXをBFF (Backend for Frontend)として利用した話
Hitachi, 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.
 
KeycloakでAPI認可に入門する
KeycloakでAPI認可に入門するKeycloakでAPI認可に入門する
KeycloakでAPI認可に入門する
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)

Authentication and Authorization of The Latest Keycloak
Authentication and Authorization of The Latest KeycloakAuthentication and Authorization of The Latest Keycloak
Authentication and Authorization of The Latest Keycloak
 
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...
 
パスキーでリードする: NGINXとKeycloakによる効率的な認証・認可
パスキーでリードする: NGINXとKeycloakによる効率的な認証・認可パスキーでリードする: NGINXとKeycloakによる効率的な認証・認可
パスキーでリードする: NGINXとKeycloakによる効率的な認証・認可
 
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
 
KeycloakでFAPIに対応した高セキュリティなAPIを公開する
KeycloakでFAPIに対応した高セキュリティなAPIを公開するKeycloakでFAPIに対応した高セキュリティなAPIを公開する
KeycloakでFAPIに対応した高セキュリティなAPIを公開する
 
IDガバナンス&管理の基礎
IDガバナンス&管理の基礎IDガバナンス&管理の基礎
IDガバナンス&管理の基礎
 
Keycloakのステップアップ認証について
Keycloakのステップアップ認証についてKeycloakのステップアップ認証について
Keycloakのステップアップ認証について
 
NGINXをBFF (Backend for Frontend)として利用した話
NGINXをBFF (Backend for Frontend)として利用した話NGINXをBFF (Backend for Frontend)として利用した話
NGINXをBFF (Backend for Frontend)として利用した話
 
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?
 
KeycloakでAPI認可に入門する
KeycloakでAPI認可に入門するKeycloakでAPI認可に入門する
KeycloakでAPI認可に入門する
 
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...
 

Recently uploaded

This is the company presentation material of RIZAP Technologies, Inc.
This is the company presentation material of RIZAP Technologies, Inc.This is the company presentation material of RIZAP Technologies, Inc.
This is the company presentation material of RIZAP Technologies, Inc.
chiefujita1
 
論文紹介:Deep Learning-Based Human Pose Estimation: A Survey
論文紹介:Deep Learning-Based Human Pose Estimation: A Survey論文紹介:Deep Learning-Based Human Pose Estimation: A Survey
論文紹介:Deep Learning-Based Human Pose Estimation: A Survey
Toru Tamaki
 
「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演
「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演
「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演
嶋 是一 (Yoshikazu SHIMA)
 
生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI
生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI
生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI
Osaka University
 
ハイブリッドクラウド研究会_Hyper-VとSystem Center Virtual Machine Manager セッションMM
ハイブリッドクラウド研究会_Hyper-VとSystem Center Virtual Machine Manager セッションMMハイブリッドクラウド研究会_Hyper-VとSystem Center Virtual Machine Manager セッションMM
ハイブリッドクラウド研究会_Hyper-VとSystem Center Virtual Machine Manager セッションMM
osamut
 
Humanoid Virtual Athletics Challenge2024 技術講習会 スライド
Humanoid Virtual Athletics Challenge2024 技術講習会 スライドHumanoid Virtual Athletics Challenge2024 技術講習会 スライド
Humanoid Virtual Athletics Challenge2024 技術講習会 スライド
tazaki1
 
Generating Automatic Feedback on UI Mockups with Large Language Models
Generating Automatic Feedback on UI Mockups with Large Language ModelsGenerating Automatic Feedback on UI Mockups with Large Language Models
Generating Automatic Feedback on UI Mockups with Large Language Models
harmonylab
 
ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---
ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---
ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---
Matsushita Laboratory
 
遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化
遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化
遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化
t m
 
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアルLoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
CRI Japan, Inc.
 
キンドリル ネットワークアセスメントサービスご紹介 今のネットワーク環境は大丈夫? 調査〜対策までご支援します
キンドリル ネットワークアセスメントサービスご紹介 今のネットワーク環境は大丈夫? 調査〜対策までご支援しますキンドリル ネットワークアセスメントサービスご紹介 今のネットワーク環境は大丈夫? 調査〜対策までご支援します
キンドリル ネットワークアセスメントサービスご紹介 今のネットワーク環境は大丈夫? 調査〜対策までご支援します
Takayuki Nakayama
 
ロジックから状態を分離する技術/設計ナイト2024 by わいとん @ytnobody
ロジックから状態を分離する技術/設計ナイト2024 by わいとん @ytnobodyロジックから状態を分離する技術/設計ナイト2024 by わいとん @ytnobody
ロジックから状態を分離する技術/設計ナイト2024 by わいとん @ytnobody
azuma satoshi
 

Recently uploaded (12)

This is the company presentation material of RIZAP Technologies, Inc.
This is the company presentation material of RIZAP Technologies, Inc.This is the company presentation material of RIZAP Technologies, Inc.
This is the company presentation material of RIZAP Technologies, Inc.
 
論文紹介:Deep Learning-Based Human Pose Estimation: A Survey
論文紹介:Deep Learning-Based Human Pose Estimation: A Survey論文紹介:Deep Learning-Based Human Pose Estimation: A Survey
論文紹介:Deep Learning-Based Human Pose Estimation: A Survey
 
「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演
「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演
「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演
 
生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI
生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI
生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI
 
ハイブリッドクラウド研究会_Hyper-VとSystem Center Virtual Machine Manager セッションMM
ハイブリッドクラウド研究会_Hyper-VとSystem Center Virtual Machine Manager セッションMMハイブリッドクラウド研究会_Hyper-VとSystem Center Virtual Machine Manager セッションMM
ハイブリッドクラウド研究会_Hyper-VとSystem Center Virtual Machine Manager セッションMM
 
Humanoid Virtual Athletics Challenge2024 技術講習会 スライド
Humanoid Virtual Athletics Challenge2024 技術講習会 スライドHumanoid Virtual Athletics Challenge2024 技術講習会 スライド
Humanoid Virtual Athletics Challenge2024 技術講習会 スライド
 
Generating Automatic Feedback on UI Mockups with Large Language Models
Generating Automatic Feedback on UI Mockups with Large Language ModelsGenerating Automatic Feedback on UI Mockups with Large Language Models
Generating Automatic Feedback on UI Mockups with Large Language Models
 
ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---
ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---
ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---
 
遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化
遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化
遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化
 
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアルLoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
 
キンドリル ネットワークアセスメントサービスご紹介 今のネットワーク環境は大丈夫? 調査〜対策までご支援します
キンドリル ネットワークアセスメントサービスご紹介 今のネットワーク環境は大丈夫? 調査〜対策までご支援しますキンドリル ネットワークアセスメントサービスご紹介 今のネットワーク環境は大丈夫? 調査〜対策までご支援します
キンドリル ネットワークアセスメントサービスご紹介 今のネットワーク環境は大丈夫? 調査〜対策までご支援します
 
ロジックから状態を分離する技術/設計ナイト2024 by わいとん @ytnobody
ロジックから状態を分離する技術/設計ナイト2024 by わいとん @ytnobodyロジックから状態を分離する技術/設計ナイト2024 by わいとん @ytnobody
ロジックから状態を分離する技術/設計ナイト2024 by わいとん @ytnobody
 

CloudNative Days Spring 2021 Online: Apache CamelおよびKeycloakを用いたAPI管理基盤の実現

  • 1. © Hitachi, Ltd. 2021. All rights reserved. 株式会社 日立製作所 OSSソリューションセンタ 2021/03/12 謝 洋 Apache CamelおよびKeycloak を用いたAPI管理基盤の実現 CloudNative Days Spring 2021 ONLINE
  • 2. 1 © Hitachi, Ltd. 2021. All rights reserved. ・Keycloak/3scale/Apache Camelのコミュニティ版および商用製品の技術サポ ートに従事している ・過去にはApache Spark、ElasticsearchなどのOSSのサポートにも従事していた。 自己紹介 謝 洋 株式会社 日立製作所 OSSソリューションセンタ ソフトウェアエンジニア GitHub:@Yang-Xie-OSS
  • 3. © Hitachi, Ltd. 2021. All rights reserved. 1. はじめに 2. CamelでAPI管理基盤の実現 3. KeycloakでAPI管理基盤にAPIアクセス制御の追加 目次 2 4. API管理基盤におけるその他機能の実現 5. まとめ
  • 4. 3 © Hitachi, Ltd. 2021. All rights reserved. 1. はじめに
  • 5. 4 © Hitachi, Ltd. 2021. All rights reserved.  異種システムを連携する製品として知られているApache Camel(以降、Camel)はAPIゲートウェイを実現 できる。  認可サーバであるKeycloakをCamelに付与することで、APIのアクセス制御を実現できる。  Camelの多様な機能を用いて、 多くのその他の機能(例: 統計情報提供、API仕様公開)を実現できる。 はじめに API管理基盤 認可サーバ Keycloak APIゲートウェイ Camel アプリケーション JDBC REST(HTTP) FTP REST(HTTP) REST(HTTP) APIサーバ REST(HTTP) アクセストークン マッシュアップ プロトコル変換 リバースプロキシ 流量制御 トークン イントロスペクション APIサーバ APIサーバ APIサーバ APIサーバ その他の機能 統計情報提供 API仕様公開 OAuth MTLS アクセストークン トークン発行/管理
  • 6. 5 © Hitachi, Ltd. 2021. All rights reserved. 2. CamelでAPI管理基盤の実現
  • 7. 6 © Hitachi, Ltd. 2021. All rights reserved.  Apache Camel(以降、Camel)は、異種システムを連携することができるOSSである。  プロトコル変換、データフォーマット変換とマッシュアップが得意である。  RESTをはじめJDBC(=Java Database Connectivity)、MQ(=Message Queue)など多数のプロトコルを サポートする。 Camelとは … … FTP JDBC Camel MQ HTTP Kafka REST ※ Camelでは、200以上の接続コンポーネントが提供されている。
  • 8. 7 © Hitachi, Ltd. 2021. All rights reserved.  開発言語として、xmlベースのSpring DSL、Blueprint DSLとJavaベースのJava DSLを提供している。  xmlベースの開発言語では、GUIの開発画面がサポートされており、ローコード開発ができる。  Javaに慣れた開発者でもコーディング経験がない開発者でもストレスなく着手できる。 Camelの特徴 xmlで開発の画面(GUI) Javaで開発の画面 ※Source画面でxmlソースを確認できる。
  • 9. 8 © Hitachi, Ltd. 2021. All rights reserved.  Camelでは、リバースプロキシ、流量制御、プロトコル変換とマッシュアップなどAPIゲートウェイに必要な機 能を持っているAPI管理基盤を実現できる。 CamelでAPI管理基盤の実現 APIサーバ APIサーバ プロトコル変換 API管理基盤 APIゲートウェイ Camel アプリケーション JDBC REST(HTTP) FTP REST(HTTP) 流量制御 REST(HTTP) APIサーバ APIサーバ マッシュアップ APIサーバ REST(HTTP) リバースプロキシ
  • 10. 9 © Hitachi, Ltd. 2021. All rights reserved.  Camelでは、リバースプロキシを実現できる。 リバースプロキシ API管理基盤 APIゲートウェイ Camel アプリケーション APIサーバ REST(HTTP) REST(HTTP)
  • 11. 10 © Hitachi, Ltd. 2021. All rights reserved.  Camelでは、以下の2方式の流量制御を実現できる。 1. 同時に受け付けられるリクエスト数を制限する方式。 2. 単位時間に受け付けられるリクエスト総数を制限する方式。 流量制御 API管理基盤 APIゲートウェイ Camel アプリケーション APIサーバ ①APIをコールする ③超えていなければ APIをコールする ②指定した流量を超えていないか を確認する
  • 12. 11 © Hitachi, Ltd. 2021. All rights reserved.  Camelでは、RESTからJDBC、FTPなどへのプロトコル変換を実現できる。 プロトコル変換 API管理基盤 APIゲートウェイ Camel アプリケーション JDBC FTP APIサーバ APIサーバ REST(HTTP)
  • 13. 12 © Hitachi, Ltd. 2021. All rights reserved.  Camelでは、マッシュアップを実現できる。 マッシュアップ ※ マッシュアップとは、複数のAPIをまとめて1つのAPIとして公開する技術である。 API管理基盤 APIゲートウェイ Camel アプリケーション APIサーバ APIサーバ ①APIをコールする ②複数のAPIをコールし、 その結果をマージしてレスポンスとして返す
  • 14. 13 © Hitachi, Ltd. 2021. All rights reserved.  Camelでは、APIアクセス制御ができない。APIがそのままネット上に公開されると、機密性の高いデータ、 個人情報が流出し、利用される可能性がある。 APIアクセス制御の問題 アプリケーション アプリケーション API管理基盤 APIゲートウェイ Camel APIサーバ APIサーバ APIサーバ APIアクセス制御をしない場合、誰でもAPIにアクセス でき、機密性の高いデータ、個人情報が流出する可 能性がある APIユーザ その他の人
  • 15. 14 © Hitachi, Ltd. 2021. All rights reserved. 3. KeycloakでAPI管理基盤にAPIアクセス制御の追加
  • 16. 15 © Hitachi, Ltd. 2021. All rights reserved.  Red Hat社を中心にOSSにて開発されているID管理・アクセス管理のソフトウェアである。  OAuth 2.0の認可サーバとして使用することができる。 Keycloakとは
  • 17. 16 © Hitachi, Ltd. 2021. All rights reserved.  Keycloakを認可サーバとしてCamelに組み込むことにより、API管理基盤にAPIアクセス制御を追加できる。 KeycloakでAPIアクセス制御の追加 API管理基盤 APIゲートウェイ Camel 認可サーバ Keycloak APIサーバ アプリケーション アクセストークン アクセストークン トークン発行/トークン管理 OAuth MTLS トークン イントロスペクション
  • 18. 17 © Hitachi, Ltd. 2021. All rights reserved.  CamelとKeycloakを組み合わせたAPI管理基盤では、OAuth 2.0 に対応したトークンの発行やトークンの 管理を実現できる。 OAuth 2.0に対応したトークン発行/トークン管理 API管理基盤 認可サーバ Keycloak APIゲートウェイ Camel APIサーバ ①トークンリクエストを送る ②アクセストークンを発行する アプリケーション ③アクセストークンを付与 してAPIをコールする ④アクセストークンが有効で あればAPIをコールする アクセストークン アクセストークン
  • 19. 18 © Hitachi, Ltd. 2021. All rights reserved.  CamelとKeycloakを組み合わせたAPI管理基盤では、トークンイントロスペクションを実現できる。 トークンイントロスペクション API管理基盤 認可サーバ Keycloak APIゲートウェイ Camel APIサーバ ①Keycloakから発行したアク セストークンを付与してAPIを コールする アクセストークン ②アクセストークンの有効性を確認する (=トークンイントロスペクション) ③アクセストークンが有効であれば APIをコールする アプリケーション
  • 20. 19 © Hitachi, Ltd. 2021. All rights reserved.  CamelとKeycloakを組み合わせたAPI管理基盤では、OAuth MTLS(RFC 8705で定義されている)など の高度なアクセス制御を実現できる。 OAuth MTLS API管理基盤 認可サーバ Keycloak APIゲートウェイ Camel アプリケーション APIサーバ ③アクセストークンを付与して APIをコールする (クライアント証明書を提示) ⑤一致すれば APIをコールする ④アクセストークン内のクライアント 証明書のハッシュ値を確認する ①トークンをリクエストする(クライアント 証明書を提示) ②クライアント証明書のハッシュ が記載されるアクセストークン を発行する アクセストークン アクセストークン ※ RFC 8705: https://tools.ietf.org/html/rfc8705
  • 21. 20 © Hitachi, Ltd. 2021. All rights reserved. 4. API管理基盤におけるその他機能の実現
  • 22. 21 © Hitachi, Ltd. 2021. All rights reserved.  CamelとKeycloakを組み合わせたAPI管理基盤では、APIゲートウェイと認可サーバの基本機能だけでなく、 その他の機能も実現できる。 API管理基盤におけるその他機能の実現 API管理基盤 認可サーバ Keycloak APIゲートウェイ Camel APIサーバ アプリケーション その他の機能 統計情報提供 API仕様公開
  • 23. 22 © Hitachi, Ltd. 2021. All rights reserved.  CamelとKeycloakを組み合わせたAPI管理基盤では、以下の2方式の統計情報の提供を実現できる。  ヒープメモリ使用量といったJVM(=Java Virtual Machine)関連の方式  各APIのレスポンスコードごとのレスポンス数といったAPI関連の方式 統計情報提供 API関連の統計情報提供 JVM関連の統計情報
  • 24. 23 © Hitachi, Ltd. 2021. All rights reserved.  CamelとKeycloakを組み合わせたAPI管理基盤では、JVM関連の統計情報提供を実現できる。  JVM関連の統計情報がJMX(Java Management eXtensions)プロトコルで公開される。JMXをサポート する可視化ツールを用いて統計情報の可視化を実現できる。 JVM関連の統計情報提供 ※ JMXとは、Javaアプリケーション から統計情報を取得する技術の 一種。 ※ 例として、Javaに組み込まれた JMX可視化ツールであるJConsole を使用。
  • 25. 24 © Hitachi, Ltd. 2021. All rights reserved.  CamelとKeycloakを組み合わせたAPI管理基盤では、API関連の統計情報提供を実現できる。  API関連の統計情報がJMXプロトコルで公開される。 Prometheusなどの監視ツールを経由して統計情 報を収集し、Grafanaなどのダッシュボードツールで可視化することを実現できる。  Grafanaの機能を利用して、エラーレスポンスの回数が制限値を超えるとメールで管理者に通知するアラー トを実現できる。 API関連方式の統計情報提供(1/2) API関連の統計情報の可視化 API関連の統計情報のアラート
  • 26. 25 © Hitachi, Ltd. 2021. All rights reserved.  CamelとKeycloakを組み合わせたAPI管理基盤では、API関連の統計情報提供を実現できる。  API関連の統計情報がJMXプロトコルで公開される。 Prometheusなどの監視ツールを経由して統計情 報を収集し、Grafanaなどのダッシュボードツールで可視化することを実現できる。  Grafanaの機能を利用して、エラーレスポンスの回数が制限値を超えるとメールで管理者に通知するアラー トを実現できる。 API関連方式の統計情報提供(2/2) アラートが発動時に関係者に送信するメール
  • 27. 26 © Hitachi, Ltd. 2021. All rights reserved.  CamelとKeycloakを組み合わせたAPI管理基盤では、OpenAPI Specification(旧Swagger)に適合す るAPI仕様の公開を実現できる。 API仕様公開 ※ API仕様とは、APIの使い方(メソッド、パス、各種パラメータ、レスポンスなど)を示すJSONやYAMLのことである。 ※ OpenAPI Specification: https://www.openapis.org/
  • 28. 27 © Hitachi, Ltd. 2021. All rights reserved. 5. まとめ
  • 29. 28 © Hitachi, Ltd. 2021. All rights reserved.  Camelは、APIゲートウェイを実現できる。  KeycloakをCamelに付与することで、APIのアクセス制御を実現できる。  CamelとKeycloakを組み合わせたAPI管理基盤では、 APIゲートウェイと認可サーバ以外にも、多くのその 他の機能を実現できる。  Camelはカスタマイズ性が高いので、Javaで本資料に言及した機能以外の機能も実現できる。 まとめ
  • 30. 29 © Hitachi, Ltd. 2021. All rights reserved.  Red Hat is a registered trademark of Red Hat, Inc. in the United States and other countries.  Apache and Camel are registered trademarks or trademarks of The Apache Software Foundation in the United States and other countries.  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. Trademarks
  • 31. © Hitachi, Ltd. 2021. All rights reserved. 30 END Apache CamelおよびKeycloak を用いたAPI管理基盤の実現 2021/03/12 株式会社 日立製作所 OSSソリューションセンタ 謝 洋