From 519348f1224df6338eaab4cf76bd1941e71eed49 Mon Sep 17 00:00:00 2001 From: Dmitry Vorotyntsev Date: Sat, 12 Sep 2026 17:41:38 +0300 Subject: [PATCH] fix OIDC discovery for issuers with trailing slash --- src/Server/Transport/Http/OAuth/OidcDiscovery.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/Server/Transport/Http/OAuth/OidcDiscovery.php b/src/Server/Transport/Http/OAuth/OidcDiscovery.php index 2f246852..c4f67f29 100644 --- a/src/Server/Transport/Http/OAuth/OidcDiscovery.php +++ b/src/Server/Transport/Http/OAuth/OidcDiscovery.php @@ -146,8 +146,8 @@ public function discover(string $issuer): array */ private function fetchMetadata(string $issuer): array { - $issuer = rtrim($issuer, '/'); - $parsed = parse_url($issuer); + $discoveryIssuer = rtrim($issuer, '/'); + $parsed = parse_url($discoveryIssuer); if (false === $parsed || !isset($parsed['scheme'], $parsed['host'])) { throw new RuntimeException(\sprintf('Invalid issuer URL: %s', $issuer)); @@ -170,7 +170,7 @@ private function fetchMetadata(string $issuer): array // 2. OIDC path insertion $discoveryUrls[] = $baseUrl.'/.well-known/openid-configuration'.$path; // 3. OIDC path appending - $discoveryUrls[] = $issuer.'/.well-known/openid-configuration'; + $discoveryUrls[] = $discoveryIssuer.'/.well-known/openid-configuration'; } else { // For issuer URLs without path components $discoveryUrls[] = $baseUrl.'/.well-known/oauth-authorization-server';