Appearance
Why It Matters
Literal credentials embedded directly in config values turn the committed artifact itself into a secret carrier. That makes review, rotation, and downstream reuse materially harder.
What Triggers
SEC305 applies to parsed JSON config values and triggers when literal auth material appears in:
- URL userinfo
- authorization-like values
- other direct auth fields
Examples that trigger:
json
{"endpoint":"https://deploy-token@internal.test/bootstrap"}
{"authorization":"Bearer static-token-value"}Example that stays clean:
json
{"authorization":"Bearer ${SERVICE_TOKEN}"}False Positives
The detector excludes dynamic placeholders and focuses on literal committed auth material. That keeps the rule in the structural stable lane rather than the heuristic preview bucket.
Remediation
Remove embedded credentials from config values and source auth from environment, secret stores, or provider-local configuration.