-
Notifications
You must be signed in to change notification settings - Fork 2.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add AccountsJS configurations as env vars #6841
base: password-reset-url
Are you sure you want to change the base?
Conversation
Signed-off-by: tedraykov <[email protected]>
🦋 Changeset detectedLatest commit: 82f2d5f The changes in this PR will be included in the next version bump. This PR includes changesets to release 2 packages
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
Signed-off-by: tedraykov <[email protected]>
|
||
export default envalid.cleanEnv( | ||
process.env, | ||
{ | ||
ACCOUNTS_JS_RETURN_TOKENS_AFTER_RESET_PASSWORD: bool({ default: false }), | ||
ACCOUNTS_JS_ACCESS_TOKEN_EXPIRES_IN: str({ default: "90m" }), | ||
ACCOUNTS_JS_REFRESH_TOKEN_EXPIRES_IN: str({ default: "30d" }), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We are providing 30d as default for refresh-token, but the default in accountsjs is 7d link
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
All good, just my comment on the default for refresh-token expiry
Impact: minor
Type: feature
Issue
Developers can't customize the JWT access and refresh tokens' expiration date. Also, there is no way to configure whether the reset password mutation returns new auth tokens or not.
Solution
This PR adds environmental variables that allow to configure the aforementioned accounts js server properties, i.e. the jwt access and refresh token expiration time and the password reset mutation return type.
Breaking changes
None. The default values of the env vars are identical to the accounts js library default values.
Testing
Testing the password reset returned tokens:
ACCOUNTS_JS_RETURN_TOKENS_AFTER_RESET_PASSWORD
env var totrue
.resetPassword
mutation with thetokens
in the return body like so:If the env var is set to true, you should see the newly generated access and refresh tokens in the response
If the env var is set to false, you should see
null
in the responseTesting the jwt token expiration time:
ACCOUNTS_JS_ACCESS_TOKEN_EXPIRES_IN
to7d
for exampleauthenticate
mutation or with the Kinetic Admin