From e948bed16e4a08227dab09d737400e2b57477710 Mon Sep 17 00:00:00 2001 From: Thomas Hipp Date: Tue, 26 Sep 2023 19:55:32 +0200 Subject: [PATCH] pkg/op: Replace `interface{}` with `any` Signed-off-by: Thomas Hipp --- pkg/op/auth_request.go | 2 +- pkg/op/auth_request_test.go | 6 +++--- pkg/op/signer.go | 4 ++-- pkg/op/storage.go | 8 ++++---- pkg/op/token.go | 2 +- pkg/op/token_exchange.go | 16 ++++++++-------- 6 files changed, 19 insertions(+), 19 deletions(-) diff --git a/pkg/op/auth_request.go b/pkg/op/auth_request.go index 5845756..7d9f264 100644 --- a/pkg/op/auth_request.go +++ b/pkg/op/auth_request.go @@ -501,7 +501,7 @@ func BuildAuthRequestCode(authReq AuthRequest, crypto Crypto) (string, error) { // AuthResponseURL encodes the authorization response (successful and error) and sets it as query or fragment values // depending on the response_mode and response_type -func AuthResponseURL(redirectURI string, responseType oidc.ResponseType, responseMode oidc.ResponseMode, response interface{}, encoder httphelper.Encoder) (string, error) { +func AuthResponseURL(redirectURI string, responseType oidc.ResponseType, responseMode oidc.ResponseMode, response any, encoder httphelper.Encoder) (string, error) { uri, err := url.Parse(redirectURI) if err != nil { return "", oidc.ErrServerError().WithParent(err) diff --git a/pkg/op/auth_request_test.go b/pkg/op/auth_request_test.go index 1fadffc..e8c9085 100644 --- a/pkg/op/auth_request_test.go +++ b/pkg/op/auth_request_test.go @@ -745,7 +745,7 @@ func TestAuthResponseURL(t *testing.T) { redirectURI string responseType oidc.ResponseType responseMode oidc.ResponseMode - response interface{} + response any encoder httphelper.Encoder } type res struct { @@ -763,7 +763,7 @@ func TestAuthResponseURL(t *testing.T) { "uri", oidc.ResponseTypeCode, "", - map[string]interface{}{"test": "test"}, + map[string]any{"test": "test"}, &mockEncoder{ errors.New("error encoding"), }, @@ -934,7 +934,7 @@ type mockEncoder struct { err error } -func (m *mockEncoder) Encode(src interface{}, dst map[string][]string) error { +func (m *mockEncoder) Encode(src any, dst map[string][]string) error { if m.err != nil { return m.err } diff --git a/pkg/op/signer.go b/pkg/op/signer.go index 7e488f6..6cef288 100644 --- a/pkg/op/signer.go +++ b/pkg/op/signer.go @@ -10,7 +10,7 @@ var ErrSignerCreationFailed = errors.New("signer creation failed") type SigningKey interface { SignatureAlgorithm() jose.SignatureAlgorithm - Key() interface{} + Key() any ID() string } @@ -32,5 +32,5 @@ type Key interface { ID() string Algorithm() jose.SignatureAlgorithm Use() string - Key() interface{} + Key() any } diff --git a/pkg/op/storage.go b/pkg/op/storage.go index 72b75e0..17aa0b4 100644 --- a/pkg/op/storage.go +++ b/pkg/op/storage.go @@ -100,7 +100,7 @@ type TokenExchangeStorage interface { // GetPrivateClaimsFromTokenExchangeRequest will be called during access token creation. // Claims evaluation can be based on all validated request data available, including: scopes, resource, audience, etc. - GetPrivateClaimsFromTokenExchangeRequest(ctx context.Context, request TokenExchangeRequest) (claims map[string]interface{}, err error) + GetPrivateClaimsFromTokenExchangeRequest(ctx context.Context, request TokenExchangeRequest) (claims map[string]any, err error) // SetUserinfoFromTokenExchangeRequest will be called during id token creation. // Claims evaluation can be based on all validated request data available, including: scopes, resource, audience, etc. @@ -110,8 +110,8 @@ type TokenExchangeStorage interface { // TokenExchangeTokensVerifierStorage is an optional interface used in token exchange process to verify tokens // issued by third-party applications. If interface is not implemented - only tokens issued by op will be exchanged. type TokenExchangeTokensVerifierStorage interface { - VerifyExchangeSubjectToken(ctx context.Context, token string, tokenType oidc.TokenType) (tokenIDOrToken string, subject string, tokenClaims map[string]interface{}, err error) - VerifyExchangeActorToken(ctx context.Context, token string, tokenType oidc.TokenType) (tokenIDOrToken string, actor string, tokenClaims map[string]interface{}, err error) + VerifyExchangeSubjectToken(ctx context.Context, token string, tokenType oidc.TokenType) (tokenIDOrToken string, subject string, tokenClaims map[string]any, err error) + VerifyExchangeActorToken(ctx context.Context, token string, tokenType oidc.TokenType) (tokenIDOrToken string, actor string, tokenClaims map[string]any, err error) } var ErrInvalidRefreshToken = errors.New("invalid_refresh_token") @@ -126,7 +126,7 @@ type OPStorage interface { SetUserinfoFromScopes(ctx context.Context, userinfo *oidc.UserInfo, userID, clientID string, scopes []string) error SetUserinfoFromToken(ctx context.Context, userinfo *oidc.UserInfo, tokenID, subject, origin string) error SetIntrospectionFromToken(ctx context.Context, userinfo *oidc.IntrospectionResponse, tokenID, subject, clientID string) error - GetPrivateClaimsFromScopes(ctx context.Context, userID, clientID string, scopes []string) (map[string]interface{}, error) + GetPrivateClaimsFromScopes(ctx context.Context, userID, clientID string, scopes []string) (map[string]any, error) GetKeyByIDAndClientID(ctx context.Context, keyID, clientID string) (*jose.JSONWebKey, error) ValidateJWTProfileScopes(ctx context.Context, userID string, scopes []string) ([]string, error) } diff --git a/pkg/op/token.go b/pkg/op/token.go index ae82b06..001023c 100644 --- a/pkg/op/token.go +++ b/pkg/op/token.go @@ -122,7 +122,7 @@ func CreateJWT(ctx context.Context, issuer string, tokenRequest TokenRequest, ex restrictedScopes := client.RestrictAdditionalAccessTokenScopes()(tokenRequest.GetScopes()) var ( - privateClaims map[string]interface{} + privateClaims map[string]any err error ) diff --git a/pkg/op/token_exchange.go b/pkg/op/token_exchange.go index 4f1ed43..e64ce80 100644 --- a/pkg/op/token_exchange.go +++ b/pkg/op/token_exchange.go @@ -24,12 +24,12 @@ type TokenExchangeRequest interface { GetExchangeSubject() string GetExchangeSubjectTokenType() oidc.TokenType GetExchangeSubjectTokenIDOrToken() string - GetExchangeSubjectTokenClaims() map[string]interface{} + GetExchangeSubjectTokenClaims() map[string]any GetExchangeActor() string GetExchangeActorTokenType() oidc.TokenType GetExchangeActorTokenIDOrToken() string - GetExchangeActorTokenClaims() map[string]interface{} + GetExchangeActorTokenClaims() map[string]any SetCurrentScopes(scopes []string) SetRequestedTokenType(tt oidc.TokenType) @@ -40,12 +40,12 @@ type tokenExchangeRequest struct { exchangeSubjectTokenIDOrToken string exchangeSubjectTokenType oidc.TokenType exchangeSubject string - exchangeSubjectTokenClaims map[string]interface{} + exchangeSubjectTokenClaims map[string]any exchangeActorTokenIDOrToken string exchangeActorTokenType oidc.TokenType exchangeActor string - exchangeActorTokenClaims map[string]interface{} + exchangeActorTokenClaims map[string]any resource []string audience oidc.Audience @@ -96,7 +96,7 @@ func (r *tokenExchangeRequest) GetExchangeSubjectTokenIDOrToken() string { return r.exchangeSubjectTokenIDOrToken } -func (r *tokenExchangeRequest) GetExchangeSubjectTokenClaims() map[string]interface{} { +func (r *tokenExchangeRequest) GetExchangeSubjectTokenClaims() map[string]any { return r.exchangeSubjectTokenClaims } @@ -112,7 +112,7 @@ func (r *tokenExchangeRequest) GetExchangeActorTokenIDOrToken() string { return r.exchangeActorTokenIDOrToken } -func (r *tokenExchangeRequest) GetExchangeActorTokenClaims() map[string]interface{} { +func (r *tokenExchangeRequest) GetExchangeActorTokenClaims() map[string]any { return r.exchangeActorTokenClaims } @@ -232,7 +232,7 @@ func ValidateTokenExchangeRequest( var ( exchangeActorTokenIDOrToken, exchangeActor string - exchangeActorTokenClaims map[string]interface{} + exchangeActorTokenClaims map[string]any ) if oidcTokenExchangeRequest.ActorToken != "" { exchangeActorTokenIDOrToken, exchangeActor, exchangeActorTokenClaims, ok = GetTokenIDAndSubjectFromToken(ctx, exchanger, @@ -281,7 +281,7 @@ func GetTokenIDAndSubjectFromToken( token string, tokenType oidc.TokenType, isActor bool, -) (tokenIDOrToken, subject string, claims map[string]interface{}, ok bool) { +) (tokenIDOrToken, subject string, claims map[string]any, ok bool) { switch tokenType { case oidc.AccessTokenType: var accessTokenClaims *oidc.AccessTokenClaims