Files
wonderwall/pkg/session/session.go
Trong Huu Nguyen 5da34f0139 fix: include id_token_hint on self-initiated logout
This is required when including the post_logout_redirect_uri
parameter.
2021-08-25 11:55:36 +02:00

34 lines
685 B
Go

package session
import (
"context"
"encoding"
"encoding/json"
"time"
"golang.org/x/oauth2"
)
type Store interface {
Write(ctx context.Context, key string, value *Data, expiration time.Duration) error
Read(ctx context.Context, key string) (*Data, error)
Delete(ctx context.Context, keys ...string) error
}
type Data struct {
ExternalSessionID string
OAuth2Token *oauth2.Token
IDTokenSerialized string
}
var _ encoding.BinaryMarshaler = &Data{}
var _ encoding.BinaryUnmarshaler = &Data{}
func (data *Data) MarshalBinary() ([]byte, error) {
return json.Marshal(data)
}
func (data *Data) UnmarshalBinary(bytes []byte) error {
return json.Unmarshal(bytes, data)
}