Skip to content

Commit 9d5757e

Browse files
authored
Merge pull request #357 from jnummelin/fix/refresh-token-storing
Fix OIDC refresh token storage with user auth config
2 parents dee4f8a + d5db5ac commit 9d5757e

File tree

2 files changed

+4
-0
lines changed

2 files changed

+4
-0
lines changed

src/oidc_auth.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@ export class OpenIDConnectAuth implements Authenticator {
5151
if (Date.now() / 1000 > this.currentTokenExpiration) {
5252
const newToken = await client.refresh(user.authProvider.config['refresh-token']);
5353
user.authProvider.config['id-token'] = newToken.id_token;
54+
user.authProvider.config['refresh-token'] = newToken.refresh_token;
5455
this.currentTokenExpiration = newToken.expires_at || 0;
5556
}
5657
return user.authProvider.config['id-token'];

src/oidc_auth_test.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -171,11 +171,14 @@ describe('OIDCAuth', () => {
171171
return {
172172
expires_at: newExpiration,
173173
id_token: 'newToken',
174+
refresh_token: 'newRefreshToken',
174175
};
175176
},
176177
});
177178
expect(opts.headers.Authorization).to.equal('Bearer newToken');
178179
expect((auth as any).currentTokenExpiration).to.equal(newExpiration);
180+
// Check also the new refresh token sticks in the user config
181+
expect(user.authProvider.config['refresh-token']).to.equal('newRefreshToken');
179182
});
180183

181184
it('return a new token when the its the first time we see this user', async () => {

0 commit comments

Comments
 (0)