user.name is always UUID when using OIDC and Spring Security
メンテナーはふだん 1 日以内に返信
まだ誰も着手していません。
評価
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 初心者へのやさしさ
- 35/100
- issue の種類
- 機能追加
- 明瞭さ
- おおむね明確
- 活発さ
- 停滞
調査の方向性
まず、Servlet プラグインと Spring MVC プラグインが Spring Security OAuth2 リクエストに対して認証済みの Principal をどのように取得しているかを追跡し、既存の Azure SSO preferred_username フォールバックと比較します。設定可能な JWT claim が user.name または追加のユーザーデータにどのような影響を与えるべきかを定義し、その結果を ECS スキーマおよび関連する認証統合テストに照らして検証します。
索引モデルが issue の本文から書いたものです。
説明
Is your feature request related to a problem?
When using Spring Security oauth2 authentication to secure an API server, user.name in APM always shows the user ID (as it's the "name" of the Principal).
If a user describes an issue and I go into the APM service view to investigate, I don't typically have their UUID (and neither do they). I do however have their email (login) or preferred username, so I need to recover their UUID manually from Keycloak.
Describe the solution you'd like
I'd like a different claim, in case of JWTs, to be logged instead of or in addition to the UUID. preferred_username is already mentioned in an Azure SSO fallback. Ideally, which claim is used would be configurable. Of course this is only valid for JWTs and similar tokens, which is my use case, so not entirely generic.
This may require going through the Spring MVC plugin instead of the Servlet one?
Describe alternatives you've considered
Using MDC to get additional claims into the transaction data, but it doesn't fit well in the ECS schema and it requires adding code to every backend service.
- 主要言語
- Java
- スター
- 593
- フォーク
- 339
- 平均マージ
- 1日 9時間
- マージ済み PR(30日)
- 13
環境構築
- Dockerfile または Docker Compose ファイルあり
- プルリクエストのテンプレートあり
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
elastic/apm-agent-java のほかの issue
-
Spring MVC View instrumentation incorrectly matches static render overloads (EasyPOI)対応中かも @VelpulaGangavardhan が 5 日前に担当しました。 オープンagent-java community triage
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
elastic/apm-agent-java#4594 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
agent-java
難易度 2/5 1〜2日 初心者へのやさしさ 62/100
elastic/apm-agent-java#2844 · コメント 2 件 ·
メンテナーはふだん 1 日以内に返信
-
Improve docs and add error log related to illegal activation of transaction対応中かも @AzazelSensei が 43 日前に担当しました。 オープンdocs good first issue
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
elastic/apm-agent-java#850 · コメント 4 件 · リアクション 1 件 ·
メンテナーはふだん 1 日以内に返信
-
Log4j 2.7 log correlation calls ThreadContext.removeAll, which was introduced in 2.8対応中かも @Anshuman-Prakash が 3 日前に担当しました。 オープンagent-java community triage
難易度 3/5 1〜2日 初心者へのやさしさ 55/100
elastic/apm-agent-java#4593 ·
メンテナーはふだん 1 日以内に返信
-
agent-java community triage
elastic/apm-agent-java#4573 · コメント 4 件 ·
メンテナーはふだん 1 日以内に返信
elastic/apm-agent-java の issue をすべて見る
似ている issue
-
enhancement feature
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
rsp777/service-pulse-app#28 ·
-
human-required sync-failed
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
Azure/osdu-spi-file#63 ·
メンテナーはふだん 1 日以内に返信
-
area/ysql kind/enhancement priority/medium status/awaiting-triage
難易度 2/5 1〜3時間 初心者へのやさしさ 73/100
yugabyte/yugabyte-db#35578 ·
メンテナーはふだん 1 日以内に返信
-
frontend quick win
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
CodeForPhilly/benefit-decision-toolkit#571 ·
メンテナーはふだん 1 日以内に返信
-
approved
難易度 2/5 1〜3時間 初心者へのやさしさ 67/100
checkstyle/checkstyle#22129 ·
メンテナーはふだん 1 日以内に返信