From fa5faed004458d65f9468d559f09d07238fafba5 Mon Sep 17 00:00:00 2001 From: Paul Zinselmeyer Date: Fri, 18 Apr 2025 15:42:16 +0200 Subject: [PATCH] fix: issuer URL at / path Previously the issuer url was received as an http::Uri. When it was converted into a String, a `/` was appended which caused the IssuerURL validation check in openidconnect to fail. Now the IssuerURL is received as a String. --- examples/basic/src/lib.rs | 6 +----- src/builder.rs | 4 ++-- 2 files changed, 3 insertions(+), 7 deletions(-) diff --git a/examples/basic/src/lib.rs b/examples/basic/src/lib.rs index 4c3a7e6..38a8457 100644 --- a/examples/basic/src/lib.rs +++ b/examples/basic/src/lib.rs @@ -42,11 +42,7 @@ pub async fn run( if let Some(client_secret) = client_secret { oidc_client = oidc_client.with_client_secret(client_secret); } - let oidc_client = oidc_client - .discover(Uri::from_maybe_shared(issuer).expect("valid issuer URI")) - .await - .unwrap() - .build(); + let oidc_client = oidc_client.discover(issuer).await.unwrap().build(); let oidc_auth_service = ServiceBuilder::new() .layer(HandleErrorLayer::new(|e: MiddlewareError| async { diff --git a/src/builder.rs b/src/builder.rs index 4e75080..c04c58f 100644 --- a/src/builder.rs +++ b/src/builder.rs @@ -195,12 +195,12 @@ impl Builder, + issuer: String, ) -> Result< Builder, HttpClient, RedirectUrl>, Error, > { - let issuer_url = IssuerUrl::new(issuer.into().to_string())?; + let issuer_url = IssuerUrl::new(issuer)?; let http_client = self.http_client.0.clone(); let provider_metadata = ProviderMetadata::discover_async(issuer_url, &http_client);