Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
JavaのOAuthライブラリ 比較検討
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Taipy(タイピー)
March 24, 2025
Technology
300
0
Share
JavaのOAuthライブラリ 比較検討
Taipy(タイピー)
March 24, 2025
More Decks by Taipy(タイピー)
See All by Taipy(タイピー)
React new features (Activity and useEffectEvent)
taipy
0
19
AI駆動開発 設計書から実装へ
taipy
1
1.6k
20250315_LT資料_Kyoto.kt #2_デザインパターン
taipy
0
160
Other Decks in Technology
See All in Technology
速さだけじゃない! VoidZero ツールが移行先に選ばれる理由
mizdra
PRO
6
670
JJUG CCC 2026 Spring AI時代の開発こそ標準化を武器に! ― 方式・プロセス・プラットフォームの標準化
s27watanabe
2
620
Claude Codeですべての日常業務を爆速化しよう!
minorun365
PRO
16
16k
開発を止めない CI/CD ~CI Visibilityによる継続的最適化~
pensuke628
0
190
電子辞書Brainをネットに繋げてみた(自力編)
raspython3
0
310
APIテストとは?
nagix
0
150
Anthropic AIネイティブ・スタートアップ構築のプレイブック を理解する
nagatsu
0
220
Sony_KMP_Journey_KotlinConf2026
sony
0
170
Claude Codeを組織で使いこなす— サーバサイドAIエージェント運用の実践知
techtekt
PRO
0
120
Platform engineering for developers, architects & the rest of us (AI agents)
danielbryantuk
0
130
AIガバナンス実践 - 生成AIコネクタのデータ漏洩リスクと実務対策
knishioka
0
140
Fabric-cicd によるAzure DevOps デプロイ
ryomaru0825
0
140
Featured
See All Featured
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
550
Building AI with AI
inesmontani
PRO
1
1k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.9k
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
160
The Spectacular Lies of Maps
axbom
PRO
1
770
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
180
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
240
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
The SEO identity crisis: Don't let AI make you average
varn
0
480
YesSQL, Process and Tooling at Scale
rocio
174
15k
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
Transcript
JavaのOAuthライブラリ 比較検討
自己紹介 出身 香川県 趣味 読書 最近ハマっていること 料理とダッシュ
目次 • 認可とOAuthの概要 • ライブラリの比較検討 • まとめ • 参考文献
概要
認証・認可の基本 識別 Identification このIDは実在ユーザーのものか 認証 Authentication 本当に本人か 認可 Authorization 権限はどうするか
OAuthとは 認可の仕組み APIで利用 アクセストークンを用いて認可 OAuth 2.0認可フレームワークは、第三者アプリケーションがHTTPサービスへの限 定的なアクセス権を取得することを可能にします。これは、リソース所有者とHTTP サービス間の承認インタラクションを調整することでリソース所有者の代理として、ま たは第三者アプリケーションが自身の代理としてアクセス権を取得することを許可す ることによって行われます。この仕様は、RFC
5849で記述されたOAuth 1.0プロトコ ルを置き換え、廃止します。 https://datatracker.ietf.org/doc/html/rfc6749から抜粋し、日本語訳
None
どのライブラリを使用すると良いか (クライアント)
クライアント 1. Spring Security 2. Restlet Framework (draft 30) 3.
ScribeJava 4. oauth2-essentials 5. Light Java Client 6. Google OAuth Java Client 7. Pac4j 8. Nimbus 9. AppAuth for Android
基準 • 特徴 • メンテナンス • 学習コスト
Spring Security 特徴 • 包括的なセキュリティ機能を提供する、Springアプリケーションのため の強力なフレームワーク メンテナンス: • 9k stars
• Springの公式がサポート 学習コスト • Spring Frameworkを使用しているなら低め
ScribeJava 特徴 • シンプルで使いやすい、軽量OAuthライブラリ メンテナンス • 5.5k stars 学習コスト •
シンプルなAPIを提供 • ScribeJava is so easy your grandma can do it! (GitHubより抜粋)
Google OAuth Java Client 特徴 • Googleが提供する、汎用性と利便性を兼ね備えたOAuthクライアント ライブラリ メンテナンス •
626 stars • メンテナンスモードへ移行 学習コスト • Google APIなどのライブラリを使っていると親和性あり
oauth2-essentials 特徴 • プラットフォーム非依存で、あらゆるHTTPクライアントと連携可能な、汎用 OAuth 2.0クライアントライブラリ メンテナンス • 88 stars
• 2016年登場 学習コスト • 比較的新めであるため、ドキュメントや記事が不足している可能性あり
Nimbus 特徴 • 標準規格に準拠した、堅牢で柔軟なOAuth 2.0およびOpenID Connect実装 ライブラリ メンテナンス • ??
stars: Bitbucketのため • 2025-02-26 にコミットあり 補足:SpringがNimbus使ってます 学習コスト • 高め。記事少なめ。
まとめ 使いやすさ・学習コスト →ScribeJava Springを使用しているなら →Spring Security ※サーバーサイド、インフラの構成も考慮する必要あり
参考文献 • 今さら聞けない暗号技術&認証・認可 Web系エンジニア 必須のセキュリティ基礎力をUP (Software Design別冊), https://amzn.asia/d/43sHiXD • OAuth徹底入門 セキュアな認可システムを適用するための
原則と実践, https://amzn.asia/d/f7hNn6v • RFC 6749 4.1. Authorization Code Grant, https://datatracker.ietf.org/doc/html/rfc6749#section-4.1 • OAuth 2.0, https://oauth.net/2/