DependencyTrack / DependencyTrack/dependency-track
Support workload identity federation as alternative to API keys
- Dominant language
- Java
- Stars
- 4.2k
- Forks
- 811
- Avg merge
- 8h 39m
- Merged PRs (30d)
- 237
Description
### Current Behavior
Currently, non-human clients must authenticate via long-lived API keys. This is both risky (leaked keys stay valid until manually revoked), and cumbersome (manual minting, distribution, rotation).
The industry is converging on tackling this problem using [workload identity federation](https://nhimg.org/glossary/workload-identity-federation/) (WIF):
> Workload identity federation is the practice of letting a workload prove who it is in one trust domain and receive a short-lived credential in another, without storing a long-lived password, API key, or shared secret. In NHI operations, that makes it a control pattern for reducing credential sprawl across cloud, Kubernetes, CI/CD, and hybrid environments.
Some high-assurance environments are actively banning use of long-lived credentials and require tedious exception processes if WIF is not available.
### Proposed Behavior
We should support WIF to make it easier and more secure to integrate with us.
> [!WARNING]
> Requires service accounts (#7055) to be implemented first.
References:
* https://nhimg.org/glossary/workload-identity-federation/
* https://developers.openai.com/api/docs/guides/workload-identity-federation
* https://platform.claude.com/docs/en/manage-claude/workload-identity-federation
* https://docs.snowflake.com/en/user-guide/workload-identity-federation
### Checklist
- [x] I have read and understand the [contributing guidelines](https://github.com/DependencyTrack/dependency-track/blob/main/CONTRIBUTING.md#filing-issues)
- [x] I have checked the [existing issues](https://github.com/DependencyTrack/dependency-track/issues) for whether this enhancement was already requested
Contributor guide
Research direction
No files, tests, or implementation entry points are named. Start by reading the service-account prerequisite in issue #7055 and the linked WIF documentation, then trace the existing API-key authentication flow. Done means non-human clients can use short-lived federated credentials instead of long-lived API keys.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- authentication, security
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100