scheduling: profile refusals on appointment detail, busy-import and operational routes log nothing
メンテナーはふだん 1 日以内に返信
まだ誰も着手していません。
評価
- 難易度
- 2/5
- 見積もり時間
- 1〜3時間
- 初心者へのやさしさ
- 85/100
- issue の種類
- バグ
- 明瞭さ
- 明確に書かれている
- 活発さ
- 活発
- 技術スタック
- rust
- 領域
- backend, observability
調査の方向性
crates/registry-scheduling/src/auth.rs から始めます; 154行目の log_authentication_refusal! を参照し、132、182、189、214行目に一致する呼び出しを追加します。既存の reads-scope テストを反映して、プロフィールを持たない有効なトークンでルートごとに1つの値なし info log をアサートします。完了とは、4つのルートすべてが診断をログに記録し、テストが通ることを意味します。
索引モデルが issue の本文から書いたものです。
説明
Found in review of #2357.
Observed
When a verified caller lacks the required profile, require_scope (crates/registry-scheduling/src/auth.rs:144) emits the rate-limited, value-free diagnostic log_authentication_refusal! (line 154) before returning AuthenticationError::Profile. The reads and explain routes go through it.
Three routes return the same Profile refusal without any log line:
- Appointment detail:
authenticate_appointment_detailreturnsErr(AuthenticationError::Profile)atauth.rs:132. - Busy-source preview and apply:
authenticate_busy_sourcemaps both identity and profile failures with.map_err(|_| AuthenticationError::Profile)atauth.rs:182andauth.rs:189. - Operational read:
authenticate_operational_readmapsauthorize_operational_readfailures the same way atauth.rs:214.
The HTTP response is correct on all three (ProfileNotAuthorized, http.rs:905); nothing leaks. This is an observability gap only: an operator misconfiguring appointmentReadProfiles or busyImportProfiles sees no log line explaining the refusals.
Expected
Emit the same log_authentication_refusal! diagnostic (stage Scope, a fixed message, a remedy naming the profile configuration keys, no scope, profile or claim values) at each of the four sites above. Test: call each route with a valid token lacking the profile and assert a single value-free info record, mirroring the existing reads-scope coverage.
- 主要言語
- Rust
- スター
- 2
- フォーク
- 0
- 平均マージ
- 8時間 29分
- マージ済み PR(30日)
- 243
環境構築
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
registrystack/registry-stack のほかの issue
-
area:breg criticality:p3 documentation good first issue triage:needs-implementation
難易度 1/5 1時間未満 初心者へのやさしさ 85/100
registrystack/registry-stack#2415 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 85/100
registrystack/registry-stack#2381 ·
メンテナーはふだん 1 日以内に返信
-
area:docs documentation
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
registrystack/registry-stack#2253 ·
メンテナーはふだん 1 日以内に返信
-
area:coordinator bug
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
registrystack/registry-stack#2252 ·
メンテナーはふだん 1 日以内に返信
-
area:release bug
難易度 2/5 1〜3時間 初心者へのやさしさ 74/100
registrystack/registry-stack#2248 ·
メンテナーはふだん 1 日以内に返信
registrystack/registry-stack の issue をすべて見る
似ている issue
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
swc-project/swc-next#1165 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 73/100
Alive24/shea-symphony#574 ·
-
documentation good first issue help wanted
難易度 2/5 1〜3時間 初心者へのやさしさ 74/100
dev-five-git/devup-ui#879 ·
メンテナーはふだん 11 日以内に返信
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 77/100
farion1231/cc-switch#9038 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 85/100
FalkorDB/FalkorDB#3597 · コメント 1 件 ·
メンテナーはふだん 2 日以内に返信