Skip to content

Implement Heimdall auth changes (api token storage, SSE endpoints) and a huge refactor#11

Merged
NicoBiernat merged 11 commits intomainfrom
heimdall-auth-changes
Mar 17, 2025
Merged

Implement Heimdall auth changes (api token storage, SSE endpoints) and a huge refactor#11
NicoBiernat merged 11 commits intomainfrom
heimdall-auth-changes

Conversation

@NicoBiernat
Copy link
Member

Rework the HeimdallAuth implementation. We no longer use Redis to share API Tokens and Roles between Heimdall and Beacon.
Beacon queries auth data on demand from Heimdall and caches the data for fast access. The server-sent-events (SSE) connection is kept-alive and Beacon receives updates to the auth data. A closed connection invalidates the provided auth data and ensures that we try to send a new request. It also ensures that a network problem or downtime does not cause users to authenticated for longer than they should be.

Also refactored a huge part of the codebase. There is still a lot to do though.
The biggest changes were to "generify" the resource and directory interfaces and implementations.
Also moved all config options into config.go for easy overview of available options.

@NicoBiernat NicoBiernat merged commit 4efa2c2 into main Mar 17, 2025
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant