Thank you for the suggestion, Ray.
I compared the output between 7.2.3 and 7.2.4 and there's no difference.

I dug the changelog for 7.2.4 and spotted a change in 
AbstractServiceFactory.java that might be the culprit:

//   if (StringUtils.isNotBlank(originalUrl) && 
originalUrl.startsWith("http") && originalUrl.contains("?")) {
                if (StringUtils.isNotBlank(originalUrl) && 
SimpleUrlValidator.getInstance().isValid(originalUrl)) {

The commented line was from 7.2.3 and the second line was the newer 7.2.4+
I tried again to rebuild with 7.2.5, but this time I have 
AbstractServiceFactory in my overlay and revert above line, and it works.

 I wonder if any CAS developer lurking around this mailing list could 
comment on this behavior.

On Thursday, 7 August 2025 at 16:29:52 UTC-4 Ray Bon wrote:

> Agus,
>
> There may be property changes to check; Property rename or encryption key 
> length changes.
>  ./gradlew exportConfigMetadata
> Will create config-metadata.properties; you can search for your 
> properties, and in most cases old property descriptions will point to the 
> new property.
>
> Ray
>
> ------------------------------
> *From:* [email protected] <[email protected]> on behalf of Agus Santosa 
> <[email protected]>
> *Sent:* August 7, 2025 09:21
> *To:* CAS Community <[email protected]>
> *Cc:* Agus Santosa <[email protected]>
> *Subject:* [cas-user] Re: SAML2 service 7.1.x and 7.2.x 
>  
> Just to add more information, I downloaded a clean fresh version 7.2.5 and 
> set it up without any customization. 
>
> My json service definition is very basic:
> {
>   "@class": "org.apereo.cas.support.saml.services.SamlRegisteredService",
>   "serviceId": "test-saml",
>   "name": "testsamlservice",
>   "id": 100000999,
>   "evaluationOrder" : 101,
>   "metadataLocation": 
> "file:/appl/sit/cas7/config/cihiServices/agus_metadata.xml"
> }
>
> I am using sample application (
> https://github.com/apereo/saml2-sample-java-webapp) to generate metadata 
> and test it.
>
> I have no idea if there's additional configuration needed for v7.2+. I 
> tried 7.3 RC and it behaves the same.
> I guess I'm sticking with 7.1.x for now until I can figure out the 
> solution.
>
>
> On Wednesday, 6 August 2025 at 10:41:33 UTC-4 Agus Santosa wrote:
>
> Hi, 
>
> Does anyone notice any difference between 7.1.x and 7.2.x in terms of 
> SAML2 service registry?
> For my case, the same SAML2 service works in 7.1.x, but it is somehow not 
> found/authorized in 7.2.x.
>
> This is the log 
> 2025-08-06 10:06:48,023 TRACE 
> [org.apereo.cas.services.mgmt.AbstractServicesManager] - <Service 
> [local-saml-test] is not cached; Searching [JsonServiceRegistry]>
> 2025-08-06 10:06:48,025 TRACE 
> [org.apereo.cas.support.saml.services.SamlIdPServicesManagerRegisteredServiceLocator]
>  
> - <Reviewing service attributes 
> [{headers={jakarta.servlet.http.HttpServletRequest.header-host=[localhost:8543],
>  
> jakarta.servlet.http.HttpServletRequest.header-user-agent=[Mozilla/5.0 
> (Windows NT 10.0; Win64; x64; rv:141.0) Gecko/20100101 Firefox/141.0], 
> jakarta.servlet.http.HttpServletRequest.header-accept=[text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8],
>  
> jakarta.servlet.http.HttpServletRequest.header-accept-language=[en-US,en;q=0.5],
>  
> jakarta.servlet.http.HttpServletRequest.header-accept-encoding=[gzip, 
> deflate, br, zstd], jakarta.servlet.http.HttpServletRequest.header-referer=[
> https://localhost:9876/], 
> jakarta.servlet.http.HttpServletRequest.header-connection=[keep-alive], 
> jakarta.servlet.http.HttpServletRequest.header-cookie=[JSESSIONID=4A46B00617D6A13EA14E9F3E74A3D75D;
>  
> _mkto_trk=id:287-VKI-861&amp;token:_mch-localhost-c73c7200637fdabf3d894f21c3c7ef29;
>  
> org.springframework.web.servlet.i18n.CookieLocaleResolver.LOCALE=en-US], 
> jakarta.servlet.http.HttpServletRequest.header-upgrade-insecure-requests=[1], 
> jakarta.servlet.http.HttpServletRequest.header-sec-fetch-dest=[document], 
> jakarta.servlet.http.HttpServletRequest.header-sec-fetch-mode=[navigate], 
> jakarta.servlet.http.HttpServletRequest.header-sec-fetch-site=[same-site], 
> jakarta.servlet.http.HttpServletRequest.header-priority=[u=0, i]}, 
> RelayState=[saml-sp-relay-state], service=[
> https://localhost:8543/cas/idp/profile/SAML2/Callback?srid=a4g6f37hb5g945je30da1e82j6bh8i7&entityId=local-saml-test],
>  
> httpRequest={jakarta.servlet.http.HttpServletRequest.httpMethod=[GET], 
> jakarta.servlet.http.HttpServletRequest.requestURL=[
> https://localhost:8543/cas/login], 
> jakarta.servlet.http.HttpServletRequest.requestURI=[/cas/login], 
> jakarta.servlet.http.HttpServletRequest.requestId=[1], 
> jakarta.servlet.http.HttpServletRequest.contextPath=[/cas], 
> jakarta.servlet.http.HttpServletRequest.localeName=[kubernetes.docker.internal]},
>  
> cookies={jakarta.servlet.http.HttpServletRequest.cookie-JSESSIONID=[4A46B00617D6A13EA14E9F3E74A3D75D],
>  
> jakarta.servlet.http.HttpServletRequest.cookie-_mkto_trk=[id:287-VKI-861&amp;token:_mch-localhost-c73c7200637fdabf3d894f21c3c7ef29],
>  
> jakarta.servlet.http.HttpServletRequest.cookie-org.springframework.web.servlet.i18n.CookieLocaleResolver.LOCALE=[en-US]},
>  
> org.apereo.cas.authentication.principal.Service=[
> https://localhost:8543/cas/idp/profile/SAML2/Callback?srid=a4g6f37hb5g945je30da1e82j6bh8i7&entityId=local-saml-test]}]
>  
> for service id [local-saml-test] to match registered service 
> [localsamltest]>
> 2025-08-06 10:06:48,026 TRACE 
> [org.apereo.cas.services.mgmt.AbstractServicesManager] - <No service 
> definition was provided>
> 2025-08-06 10:06:48,055 WARN 
> [org.apereo.cas.services.web.support.RegisteredServiceResponseHeadersEnforcementFilter]
>  
> - <Service [AbstractWebApplicationService(id=local-saml-test, 
> originalUrl=local-saml-test, artifactId=null, principal=null, 
> source=service, tenant=null, loggedOutAlready=false, format=XML, 
> attributes={headers={jakarta.servlet.http.HttpServletRequest.header-host=[localhost:8543],
>  
> jakarta.servlet.http.HttpServletRequest.header-user-agent=[Mozilla/5.0 
> (Windows NT 10.0; Win64; x64; rv:141.0) Gecko/20100101 Firefox/141.0], 
> jakarta.servlet.http.HttpServletRequest.header-accept=[text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8],
>  
> jakarta.servlet.http.HttpServletRequest.header-accept-language=[en-US,en;q=0.5],
>  
> jakarta.servlet.http.HttpServletRequest.header-accept-encoding=[gzip, 
> deflate, br, zstd], jakarta.servlet.http.HttpServletRequest.header-referer=[
> https://localhost:9876/], 
> jakarta.servlet.http.HttpServletRequest.header-connection=[keep-alive], 
> jakarta.servlet.http.HttpServletRequest.header-cookie=[JSESSIONID=4A46B00617D6A13EA14E9F3E74A3D75D;
>  
> _mkto_trk=id:287-VKI-861&amp;token:_mch-localhost-c73c7200637fdabf3d894f21c3c7ef29;
>  
> org.springframework.web.servlet.i18n.CookieLocaleResolver.LOCALE=en-US], 
> jakarta.servlet.http.HttpServletRequest.header-upgrade-insecure-requests=[1], 
> jakarta.servlet.http.HttpServletRequest.header-sec-fetch-dest=[document], 
> jakarta.servlet.http.HttpServletRequest.header-sec-fetch-mode=[navigate], 
> jakarta.servlet.http.HttpServletRequest.header-sec-fetch-site=[same-site], 
> jakarta.servlet.http.HttpServletRequest.header-priority=[u=0, i]}, 
> RelayState=[saml-sp-relay-state], service=[
> https://localhost:8543/cas/idp/profile/SAML2/Callback?srid=a4g6f37hb5g945je30da1e82j6bh8i7&entityId=local-saml-test],
>  
> httpRequest={jakarta.servlet.http.HttpServletRequest.httpMethod=[GET], 
> jakarta.servlet.http.HttpServletRequest.requestURL=[
> https://localhost:8543/cas/login], 
> jakarta.servlet.http.HttpServletRequest.requestURI=[/cas/login], 
> jakarta.servlet.http.HttpServletRequest.requestId=[1], 
> jakarta.servlet.http.HttpServletRequest.contextPath=[/cas], 
> jakarta.servlet.http.HttpServletRequest.localeName=[kubernetes.docker.internal]},
>  
> cookies={jakarta.servlet.http.HttpServletRequest.cookie-JSESSIONID=[4A46B00617D6A13EA14E9F3E74A3D75D],
>  
> jakarta.servlet.http.HttpServletRequest.cookie-_mkto_trk=[id:287-VKI-861&amp;token:_mch-localhost-c73c7200637fdabf3d894f21c3c7ef29],
>  
> jakarta.servlet.http.HttpServletRequest.cookie-org.springframework.web.servlet.i18n.CookieLocaleResolver.LOCALE=[en-US]},
>  
> org.apereo.cas.authentication.principal.Service=[
> https://localhost:8543/cas/idp/profile/SAML2/Callback?srid=a4g6f37hb5g945je30da1e82j6bh8i7&entityId=local-saml-test]})]
>  
> is not authorized>
>
>
> -- 
> - Website: https://apereo.github.io/cas
> - List Guidelines: https://goo.gl/1VRrw7
> - Contributions: https://goo.gl/mh7qDG
> --- 
> You received this message because you are subscribed to the Google Groups 
> "CAS Community" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to [email protected].
> To view this discussion visit 
> https://groups.google.com/a/apereo.org/d/msgid/cas-user/dc9b98ad-3f4d-4b5d-9fc9-59efaa584edan%40apereo.org
>  
> <https://groups.google.com/a/apereo.org/d/msgid/cas-user/dc9b98ad-3f4d-4b5d-9fc9-59efaa584edan%40apereo.org?utm_medium=email&utm_source=footer>
> .
>

-- 
- Website: https://apereo.github.io/cas
- List Guidelines: https://goo.gl/1VRrw7
- Contributions: https://goo.gl/mh7qDG
--- 
You received this message because you are subscribed to the Google Groups "CAS 
Community" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion visit 
https://groups.google.com/a/apereo.org/d/msgid/cas-user/2c40c700-aa9b-495b-a940-9ecca9b43902n%40apereo.org.

Reply via email to