diff --git a/storage/conformance/conformance.go b/storage/conformance/conformance.go index 490ce1d9753ea28cf80200eb860555e5c7f4897b..8cb911aa9465e1e4b76df84d8b8b975206d603ec 100644 --- a/storage/conformance/conformance.go +++ b/storage/conformance/conformance.go @@ -219,6 +219,7 @@ func testRefreshTokenCRUD(t *testing.T, s storage.Storage) { EmailVerified: true, Groups: []string{"a", "b"}, }, + ConnectorData: []byte(`{"some":"data"}`), } if err := s.CreateRefresh(refresh); err != nil { t.Fatalf("create refresh token: %v", err) diff --git a/storage/kubernetes/storage.go b/storage/kubernetes/storage.go index b6d482ba9f5a0af79975d8aea0a1d8bddb19c962..e744ab2d7b7eb8c5b6335c255cb40a93b6611aac 100644 --- a/storage/kubernetes/storage.go +++ b/storage/kubernetes/storage.go @@ -162,11 +162,12 @@ func (cli *client) CreateRefresh(r storage.RefreshToken) error { Name: r.RefreshToken, Namespace: cli.namespace, }, - ClientID: r.ClientID, - ConnectorID: r.ConnectorID, - Scopes: r.Scopes, - Nonce: r.Nonce, - Claims: fromStorageClaims(r.Claims), + ClientID: r.ClientID, + ConnectorID: r.ConnectorID, + Scopes: r.Scopes, + Nonce: r.Nonce, + Claims: fromStorageClaims(r.Claims), + ConnectorData: r.ConnectorData, } return cli.post(resourceRefreshToken, refresh) } @@ -243,12 +244,13 @@ func (cli *client) GetRefresh(id string) (storage.RefreshToken, error) { return storage.RefreshToken{}, err } return storage.RefreshToken{ - RefreshToken: r.ObjectMeta.Name, - ClientID: r.ClientID, - ConnectorID: r.ConnectorID, - Scopes: r.Scopes, - Nonce: r.Nonce, - Claims: toStorageClaims(r.Claims), + RefreshToken: r.ObjectMeta.Name, + ClientID: r.ClientID, + ConnectorID: r.ConnectorID, + Scopes: r.Scopes, + Nonce: r.Nonce, + Claims: toStorageClaims(r.Claims), + ConnectorData: r.ConnectorData, }, nil } diff --git a/storage/kubernetes/types.go b/storage/kubernetes/types.go index 61c2c29589f7fc3e102eb11c63cc12c4cbc5bc0e..9009c80063f12785c87aa31a0f23a5aa6e7f71df 100644 --- a/storage/kubernetes/types.go +++ b/storage/kubernetes/types.go @@ -367,8 +367,9 @@ type RefreshToken struct { Nonce string `json:"nonce,omitempty"` - Claims Claims `json:"claims,omitempty"` - ConnectorID string `json:"connectorID,omitempty"` + Claims Claims `json:"claims,omitempty"` + ConnectorID string `json:"connectorID,omitempty"` + ConnectorData []byte `json:"connectorData,omitempty"` } // RefreshList is a list of refresh tokens.