Skip to content

Commit 96a28d4

Browse files
authored
fix(agentstack-server): fix #2138 (#2373)
1 parent fc57755 commit 96a28d4

2 files changed

Lines changed: 8 additions & 6 deletions

File tree

apps/agentstack-server/src/agentstack_server/api/auth/auth.py

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -178,8 +178,9 @@ async def discover_issuer(provider: OidcProvider) -> AuthorizationServerMetadata
178178
response.raise_for_status()
179179
metadata = AuthorizationServerMetadata(response.json())
180180
metadata.validate_issuer()
181-
metadata.validate_jwks_uri()
182-
metadata.validate_introspection_endpoint()
181+
if provider.issuer.scheme == "https":
182+
metadata.validate_jwks_uri()
183+
metadata.validate_introspection_endpoint()
183184
except Exception as e:
184185
# Fallback to OIDC 1.0
185186
try:
@@ -188,8 +189,9 @@ async def discover_issuer(provider: OidcProvider) -> AuthorizationServerMetadata
188189
response.raise_for_status()
189190
metadata = OpenIDProviderMetadata(response.json())
190191
metadata.validate_issuer()
191-
metadata.validate_jwks_uri()
192-
metadata.validate_introspection_endpoint()
192+
if provider.issuer.scheme == "https":
193+
metadata.validate_jwks_uri()
194+
metadata.validate_introspection_endpoint()
193195
except Exception as fallback_e:
194196
logger.warning(f"Issuer discovery fallback failed for provider {provider.issuer}: {fallback_e}")
195197
raise fallback_e from e

apps/agentstack-server/src/agentstack_server/configuration.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -131,8 +131,8 @@ def provider(self) -> OidcProvider:
131131
@model_validator(mode="after")
132132
def validate_auth(self):
133133
if self.insecure_transport:
134-
if self.issuer.scheme != "http" or self.issuer.host != "keycloak":
135-
raise ValueError("Insecure transport is only allowed for internal keycloak!")
134+
if self.issuer.scheme != "http":
135+
raise ValueError("Insecure transport is only allowed when the issuer URL uses http:// scheme!")
136136

137137
os.environ["AUTHLIB_INSECURE_TRANSPORT"] = "1"
138138
logger.warning(

0 commit comments

Comments
 (0)