From c54f1656c72f153e7aefac3795b6a22c973b97d9 Mon Sep 17 00:00:00 2001 From: Joel Speed Date: Mon, 29 Jan 2018 21:11:59 +0000 Subject: [PATCH] Fix ETCD storage backend --- storage/etcd/types.go | 83 +++++++++++++++++++++---------------------- 1 file changed, 40 insertions(+), 43 deletions(-) diff --git a/storage/etcd/types.go b/storage/etcd/types.go index 8063c69f..e9075ed6 100644 --- a/storage/etcd/types.go +++ b/storage/etcd/types.go @@ -16,24 +16,22 @@ type AuthCode struct { Nonce string `json:"nonce,omitempty"` Scopes []string `json:"scopes,omitempty"` - ConnectorID string `json:"connectorID,omitempty"` - ConnectorData []byte `json:"connectorData,omitempty"` - Claims Claims `json:"claims,omitempty"` + ConnectorID string `json:"connectorID,omitempty"` + Claims Claims `json:"claims,omitempty"` Expiry time.Time `json:"expiry"` } func fromStorageAuthCode(a storage.AuthCode) AuthCode { return AuthCode{ - ID: a.ID, - ClientID: a.ClientID, - RedirectURI: a.RedirectURI, - ConnectorID: a.ConnectorID, - ConnectorData: a.ConnectorData, - Nonce: a.Nonce, - Scopes: a.Scopes, - Claims: fromStorageClaims(a.Claims), - Expiry: a.Expiry, + ID: a.ID, + ClientID: a.ClientID, + RedirectURI: a.RedirectURI, + ConnectorID: a.ConnectorID, + Nonce: a.Nonce, + Scopes: a.Scopes, + Claims: fromStorageClaims(a.Claims), + Expiry: a.Expiry, } } @@ -74,7 +72,6 @@ func fromStorageAuthRequest(a storage.AuthRequest) AuthRequest { LoggedIn: a.LoggedIn, Claims: fromStorageClaims(a.Claims), ConnectorID: a.ConnectorID, - ConnectorData: a.ConnectorData, } } @@ -90,7 +87,6 @@ func toStorageAuthRequest(a AuthRequest) storage.AuthRequest { ForceApprovalPrompt: a.ForceApprovalPrompt, LoggedIn: a.LoggedIn, ConnectorID: a.ConnectorID, - ConnectorData: a.ConnectorData, Expiry: a.Expiry, Claims: toStorageClaims(a.Claims), } @@ -118,31 +114,29 @@ type RefreshToken struct { func toStorageRefreshToken(r RefreshToken) storage.RefreshToken { return storage.RefreshToken{ - ID: r.ID, - Token: r.Token, - CreatedAt: r.CreatedAt, - LastUsed: r.LastUsed, - ClientID: r.ClientID, - ConnectorID: r.ConnectorID, - ConnectorData: r.ConnectorData, - Scopes: r.Scopes, - Nonce: r.Nonce, - Claims: toStorageClaims(r.Claims), + ID: r.ID, + Token: r.Token, + CreatedAt: r.CreatedAt, + LastUsed: r.LastUsed, + ClientID: r.ClientID, + ConnectorID: r.ConnectorID, + Scopes: r.Scopes, + Nonce: r.Nonce, + Claims: toStorageClaims(r.Claims), } } func fromStorageRefreshToken(r storage.RefreshToken) RefreshToken { return RefreshToken{ - ID: r.ID, - Token: r.Token, - CreatedAt: r.CreatedAt, - LastUsed: r.LastUsed, - ClientID: r.ClientID, - ConnectorID: r.ConnectorID, - ConnectorData: r.ConnectorData, - Scopes: r.Scopes, - Nonce: r.Nonce, - Claims: fromStorageClaims(r.Claims), + ID: r.ID, + Token: r.Token, + CreatedAt: r.CreatedAt, + LastUsed: r.LastUsed, + ClientID: r.ClientID, + ConnectorID: r.ConnectorID, + Scopes: r.Scopes, + Nonce: r.Nonce, + Claims: fromStorageClaims(r.Claims), } } @@ -188,24 +182,27 @@ type Keys struct { // OfflineSessions is a mirrored struct from storage with JSON struct tags type OfflineSessions struct { - UserID string `json:"user_id,omitempty"` - ConnID string `json:"conn_id,omitempty"` - Refresh map[string]*storage.RefreshTokenRef `json:"refresh,omitempty"` + UserID string `json:"user_id,omitempty"` + ConnID string `json:"conn_id,omitempty"` + Refresh map[string]*storage.RefreshTokenRef `json:"refresh,omitempty"` + ConnectorData []byte `json:"connectorData,omitempty"` } func fromStorageOfflineSessions(o storage.OfflineSessions) OfflineSessions { return OfflineSessions{ - UserID: o.UserID, - ConnID: o.ConnID, - Refresh: o.Refresh, + UserID: o.UserID, + ConnID: o.ConnID, + Refresh: o.Refresh, + ConnectorData: o.ConnectorData, } } func toStorageOfflineSessions(o OfflineSessions) storage.OfflineSessions { s := storage.OfflineSessions{ - UserID: o.UserID, - ConnID: o.ConnID, - Refresh: o.Refresh, + UserID: o.UserID, + ConnID: o.ConnID, + Refresh: o.Refresh, + ConnectorData: o.ConnectorData, } if s.Refresh == nil { // Server code assumes this will be non-nil.