بنقرة واحدة
dev-platform
プラットフォーム基盤(idp-server-platform)の開発・修正を行う際に使用。マルチテナント、JOSE、トランザクション管理、Plugin System、DI、HTTP クライアント実装時に役立つ。
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
プラットフォーム基盤(idp-server-platform)の開発・修正を行う際に使用。マルチテナント、JOSE、トランザクション管理、Plugin System、DI、HTTP クライアント実装時に役立つ。
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
UserInfoエンドポイント(UserInfo Endpoint)機能の開発・修正を行う際に使用。UserInfo claims、scopeフィルタリング、verified_claims実装時に役立つ。
外部API認証ユースケースの設定ガイド。外部API連携(認証委譲、リスク判定、OTP等)の interaction 設計、identity_match_field、MFA 2段階目、previous_interaction のヒアリングと設定JSONを提供。
ユースケース別セットアップのエントリポイント。ユーザーにユースケースを選択してもらい、対応するスキル(use-case-login, use-case-mfa等)にルーティングする。共通ワークフロー、前提条件、組み合わせパターンの概要を提供。
認証機能(Authentication Policy, MFA)の開発・修正を行う際に使用。認証ポリシー、パスワード、OTP、FIDO2、条件付き認証実装時に役立つ。
セキュリティ・脆弱性対策の開発・テストを行う際に使用。OAuth/OIDC攻撃対策、認証識別子切り替え攻撃、Session Fixation、マルチテナント分離、セキュリティテスト実装時に役立つ。
外部サービス連携(External Service Integration)機能の開発・修正を行う際に使用。HTTP Request Executor, MappingRule, OAuth/HMAC認証実装時に役立つ。
| name | dev-platform |
| description | プラットフォーム基盤(idp-server-platform)の開発・修正を行う際に使用。マルチテナント、JOSE、トランザクション管理、Plugin System、DI、HTTP クライアント実装時に役立つ。 |
documentation/docs/content_06_developer-guide/01-getting-started/03-design-principles.md - 設計原則idp-server-platform は全モジュールが依存する基盤レイヤー。マルチテナント、暗号化、トランザクション管理、Plugin等の横断的関心事を提供する。
idp-server-core → idp-server-platform
idp-server-use-cases → idp-server-platform
idp-server-*-adapter → idp-server-platform
探索起点: libs/idp-server-platform/src/main/java/org/idp/server/platform/
| カテゴリ | パッケージ | 責務 |
|---|---|---|
| マルチテナント | multi_tenancy/tenant/ | テナント管理・識別・属性 |
| マルチテナント | multi_tenancy/organization/ | 組織管理・メンバー管理 |
| セキュリティ | crypto/, hash/, jose/, x509/, random/ | 暗号化・署名・証明書 |
| インフラ | datasource/ | データソース・トランザクション |
| インフラ | http/ | HTTP クライアント |
| インフラ | proxy/ | Dynamic Proxy(トランザクション自動管理) |
| 基盤機能 | plugin/ | ServiceLoader ベースのプラグイン |
| 基盤機能 | dependency/ | 軽量DIコンテナ |
| ユーティリティ | json/ | JsonConverter(Jackson ラッパー) |
TenantIdentifier - テナント識別子(値オブジェクト)TenantAttributes - テナント固有設定Tenant - テナント集約ルートOrganizationRepository - 組織リポジトリ(Tenant第一引数の例外)// 設定取得はデフォルト値付きの opt メソッドを使用
attributes.optValueAsBoolean("oauth.pkce.enabled", false);
attributes.optValueAsString("token.custom_claim_key", "");
attributes.optValueAsStringList("oauth.allowed_scopes", List.of("openid", "profile"));
注意: optValueAsInt() は存在しない。整数値が必要な場合は optValueAsString() で取得して変換する。
EntryService (Interface)
↓
TenantAwareEntryServiceProxy (Dynamic Proxy)
↓ @Transaction アノテーション検出
↓ TransactionManager 自動呼び出し
↓ PostgreSQL RLS 自動設定
↓
EntryService (実装) → Repository → SqlExecutor
@Transaction アノテーション付与TenantIdentifier を含めるTenantAwareEntryServiceProxy.createProxy() でラップSqlExecutor を使用set_config('app.tenant_id', ?, true) を Proxy が自動実行)探索起点: libs/idp-server-platform/src/main/java/org/idp/server/platform/jose/
Nimbus JOSE + JWT のラッパー。主要クラス:
JoseHandler - 統合ハンドラー(Plain JWT / JWS / JWE 自動判定)JsonWebSignature - JWS パース・クレーム取得JsonWebSignatureVerifier - 署名検証JsonWebToken - Plain JWT パース探索起点: libs/idp-server-platform/src/main/java/org/idp/server/platform/http/
HttpRequestExecutor - java.net.http.HttpClient ベースの高機能実行エンジン
探索起点: libs/idp-server-platform/src/main/java/org/idp/server/platform/plugin/
Java ServiceLoader ベース。静的メソッド API(インスタンス化不可)。
// 内部モジュール(META-INF/services)
List<T> plugins = PluginLoader.loadFromInternalModule(T.class);
// 外部JAR(plugins/ ディレクトリ)
List<T> plugins = PluginLoader.loadFromExternalModule(T.class);
探索起点: libs/idp-server-platform/src/main/java/org/idp/server/platform/dependency/
ApplicationComponentContainer - 軽量DIコンテナ(register() / resolve())JsonConverter.defaultInstance(); // キャメルケース
JsonConverter.snakeCaseInstance(); // スネークケース(HTTP API 向け)
write(object) - Java → JSON 文字列read(json, Class) - JSON → Java オブジェクトread(map, Class) - Map → Java オブジェクト