diff --git a/api/v1alpha1/accesstoken_types.go b/api/v1alpha1/accesstoken_types.go index 2680501..0db5793 100644 --- a/api/v1alpha1/accesstoken_types.go +++ b/api/v1alpha1/accesstoken_types.go @@ -97,6 +97,10 @@ type AccessTokenList struct { Items []AccessToken `json:"items"` } +func (at AccessToken) LocalName() string { + return at.Namespace + "/" + at.Name +} + func init() { SchemeBuilder.Register(&AccessToken{}, &AccessTokenList{}) } diff --git a/pkg/auth/authenticator.go b/pkg/auth/authenticator.go index d0c11ae..93e1b81 100644 --- a/pkg/auth/authenticator.go +++ b/pkg/auth/authenticator.go @@ -58,6 +58,7 @@ const ( CerberusHeaderTokenPriority CerberusHeaderName = "X-Cerberus-Token-Priority" CerberusHeaderWebServiceMinPriority CerberusHeaderName = "X-Cerberus-Webservice-Min-Priority" CerberusHeaderAccessToken CerberusHeaderName = "X-Cerberus-AccessToken" + CerberusHeaderWebservice CerberusHeaderName = "X-Cerberus-Webservice" ) // Access limit reasons @@ -92,7 +93,8 @@ func (a *Authenticator) TestAccess(request *Request, wsvc WebservicesCacheEntry) return } - newExtraHeaders.set(CerberusHeaderAccessToken, ac.ObjectMeta.Name) + newExtraHeaders.set(CerberusHeaderAccessToken, ac.LocalName()) + newExtraHeaders.set(CerberusHeaderWebservice, wsvc.LocalName()) for _, validator := range a.validators { var headers CerberusExtraHeaders