Fixes #25903: Refactor API tokens after clear-text removal #6031
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
https://issues.rudder.io/issues/25903
A similar change needs to be done in the api-authorizations plugins for user tokens.
Backend
Data types
Split the
ApiToken
type, which used to contain both clear-text and hashed values into two separate types to prevent confusions and prevent misusage as much as possible:ApiTokenSecret
: The token value, to be sent to the creator and not stored on the serverApiTokenHash
: The token hash, as stored (either in LDAP or memory)Also modifying the account types:
ApiAccount
now contains aApiTokenHash
NewApiAccount
is created, to be used after creation, and contains aApiTokenSecret
Notes:
expose()
methods (and make the value private)Usage
The JSON serialization of the accounts, used by the API tokens Web interface, is modified:
Frontend