-
Notifications
You must be signed in to change notification settings - Fork 17
Refresh token functionality #132
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
base: main
Are you sure you want to change the base?
Conversation
9d9e530
to
26a858c
Compare
26a858c
to
02f3b6a
Compare
// TODO: Security implications of rolling up this secret into the built extension | ||
export const AUTH0_CLIENT_SECRET = | ||
"tZ3N8vHuvpLQlzdGEhel4Vz5DeluNNyTtid-2jFBdDiXmIGNbX9yhjDmQ2Pg6VT-"; |
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.
My thoughts:
- It should be okay as long as we bear in mind that the client is considered a public client (contrary to a confidential client, which is capable of holding configuration time secrets), so the client should not be shared for purposes other than the VSCode plugin: the client is still bound by other measures (authentication by user-agent to authorization server, redirect URIs, ...).
- Given that it is public, the client might as well have no authentication because the secret serves no real purpose at the end of the day (configurable through Auth0 dashboard).
- For increased security in these cases, I've heard of PKCE , which might be worth looking into.
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.
Providing a client secret is not needed when the app is defined as public. Can you try to make it work without this parameter?
As @tcrespog said, PKCE is used to mitigate the risks of now being able to manage a secret key. It is enabled by default.
reject(new Error("No token")); | ||
return; | ||
} | ||
if (!state) { |
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.
For increased security, the state could be compared with the one created originally. They must match to make sure that the state
wasn't altered in the process.
https://seqera.atlassian.net/browse/SH-739
Using PR deployment of platform & dev Auth0 application for now