@@ -2,7 +2,6 @@ package kubernetes
22
33import (
44 "context"
5- "errors"
65 "strings"
76
87 "k8s.io/apimachinery/pkg/runtime"
@@ -31,6 +30,7 @@ type HeaderKey string
3130const (
3231 CustomAuthorizationHeader = HeaderKey ("kubernetes-authorization" )
3332 OAuthAuthorizationHeader = HeaderKey ("Authorization" )
33+ ScopesContextKey = HeaderKey ("scopes" )
3434
3535 CustomUserAgent = "kubernetes-mcp-server/bearer-token-auth"
3636)
@@ -146,9 +146,6 @@ func (m *Manager) ToRESTMapper() (meta.RESTMapper, error) {
146146func (m * Manager ) Derived (ctx context.Context ) (* Kubernetes , error ) {
147147 authorization , ok := ctx .Value (OAuthAuthorizationHeader ).(string )
148148 if ! ok || ! strings .HasPrefix (authorization , "Bearer " ) {
149- if m .staticConfig .RequireOAuth {
150- return nil , errors .New ("oauth token required" )
151- }
152149 return & Kubernetes {manager : m }, nil
153150 }
154151 klog .V (5 ).Infof ("%s header found (Bearer), using provided bearer token" , OAuthAuthorizationHeader )
@@ -172,10 +169,6 @@ func (m *Manager) Derived(ctx context.Context) (*Kubernetes, error) {
172169 }
173170 clientCmdApiConfig , err := m .clientCmdConfig .RawConfig ()
174171 if err != nil {
175- if m .staticConfig .RequireOAuth {
176- klog .Errorf ("failed to get kubeconfig: %v" , err )
177- return nil , errors .New ("failed to get kubeconfig" )
178- }
179172 return & Kubernetes {manager : m }, nil
180173 }
181174 clientCmdApiConfig .AuthInfos = make (map [string ]* clientcmdapi.AuthInfo )
@@ -186,10 +179,6 @@ func (m *Manager) Derived(ctx context.Context) (*Kubernetes, error) {
186179 }}
187180 derived .manager .accessControlClientSet , err = NewAccessControlClientset (derived .manager .cfg , derived .manager .staticConfig )
188181 if err != nil {
189- if m .staticConfig .RequireOAuth {
190- klog .Errorf ("failed to get kubeconfig: %v" , err )
191- return nil , errors .New ("failed to get kubeconfig" )
192- }
193182 return & Kubernetes {manager : m }, nil
194183 }
195184 derived .manager .discoveryClient = memory .NewMemCacheClient (derived .manager .accessControlClientSet .DiscoveryClient ())
@@ -199,10 +188,6 @@ func (m *Manager) Derived(ctx context.Context) (*Kubernetes, error) {
199188 )
200189 derived .manager .dynamicClient , err = dynamic .NewForConfig (derived .manager .cfg )
201190 if err != nil {
202- if m .staticConfig .RequireOAuth {
203- klog .Errorf ("failed to initialize dynamic client: %v" , err )
204- return nil , errors .New ("failed to initialize dynamic client" )
205- }
206191 return & Kubernetes {manager : m }, nil
207192 }
208193 return derived , nil
0 commit comments