Timothy Jaeryang Baek před 1 měsícem
rodič
revize
68d42ef850
1 změnil soubory, kde provedl 7 přidání a 1 odebrání
  1. 7 1
      backend/open_webui/utils/oauth.py

+ 7 - 1
backend/open_webui/utils/oauth.py

@@ -115,7 +115,13 @@ class OAuthManager:
                 nested_claims = oauth_claim.split(".")
                 nested_claims = oauth_claim.split(".")
                 for nested_claim in nested_claims:
                 for nested_claim in nested_claims:
                     claim_data = claim_data.get(nested_claim, {})
                     claim_data = claim_data.get(nested_claim, {})
-                oauth_roles = claim_data if isinstance(claim_data, list) else []
+
+                oauth_roles = []
+
+                if isinstance(claim_data, list):
+                    oauth_roles = claim_data
+                if isinstance(claim_data, str) or isinstance(claim_data, int):
+                    oauth_roles = [str(claim_data)]
 
 
             log.debug(f"Oauth Roles claim: {oauth_claim}")
             log.debug(f"Oauth Roles claim: {oauth_claim}")
             log.debug(f"User roles from oauth: {oauth_roles}")
             log.debug(f"User roles from oauth: {oauth_roles}")