1
0
mirror of https://github.com/oauth2-proxy/oauth2-proxy.git synced 2025-08-06 22:42:56 +02:00

Use ErrNotImplemented in default refresh implementation

This commit is contained in:
Nick Meves
2021-06-12 11:41:03 -07:00
parent baf6cf3816
commit ff914d7e17
5 changed files with 54 additions and 29 deletions

View File

@ -130,19 +130,8 @@ func (p *ProviderData) ValidateSession(ctx context.Context, s *sessions.SessionS
}
// RefreshSession refreshes the user's session
func (p *ProviderData) RefreshSession(_ context.Context, s *sessions.SessionState) (bool, error) {
if s == nil {
return false, nil
}
// HACK:
// Pretend `RefreshSession` occurred so `ValidateSession` isn't called
// on every request after any potential set refresh period elapses.
// See `middleware.refreshSession` for detailed logic & explanation.
//
// Intentionally doesn't use `ErrNotImplemented` since all providers will
// call this and we don't want to force them to implement this dummy logic.
return true, nil
func (p *ProviderData) RefreshSession(_ context.Context, _ *sessions.SessionState) (bool, error) {
return false, ErrNotImplemented
}
// CreateSessionFromToken converts Bearer IDTokens into sessions

View File

@ -22,12 +22,12 @@ func TestRefresh(t *testing.T) {
ss.SetExpiresOn(expires)
refreshed, err := p.RefreshSession(context.Background(), ss)
assert.True(t, refreshed)
assert.NoError(t, err)
assert.False(t, refreshed)
assert.Equal(t, ErrNotImplemented, err)
refreshed, err = p.RefreshSession(context.Background(), nil)
assert.False(t, refreshed)
assert.NoError(t, err)
assert.Equal(t, ErrNotImplemented, err)
}
func TestAcrValuesNotConfigured(t *testing.T) {