Browse Source

populate the issuerToProvider

pull/7160/head
chrislu 1 month ago
parent
commit
9ea5ddc45f
  1. 13
      weed/iam/sts/sts_service.go

13
weed/iam/sts/sts_service.go

@ -262,6 +262,19 @@ func (s *STSService) loadProvidersFromConfig(config *STSConfig) error {
// Replace current providers with new ones
s.providers = providersMap
// Also populate the issuerToProvider map for efficient and secure JWT validation
s.issuerToProvider = make(map[string]providers.IdentityProvider)
for name, provider := range s.providers {
issuer := s.extractIssuerFromProvider(provider)
if issuer != "" {
if _, exists := s.issuerToProvider[issuer]; exists {
glog.Warningf("Duplicate issuer %s found for provider %s. Overwriting.", issuer, name)
}
s.issuerToProvider[issuer] = provider
glog.V(2).Infof("Registered provider %s with issuer %s for efficient lookup", name, issuer)
}
}
glog.V(1).Infof("Successfully loaded %d identity providers: %v",
len(s.providers), s.getProviderNames())

Loading…
Cancel
Save