Hi all,
I'm seeking help with an existing CAS 5.1.5 instance SAML1.1 setup with
David Curry's outstanding CAS setup guide. It's been working just fine
for our basic needs with our LDAP using SAML 1.1.
We recently took on a COVID-related project that requires use of a
third-party SAML2 SSO authentication method, which CAS 5.1.5 appears to
support (I think).
We've submitted the IdP 509x signing cert (from certs auto-generated in
/etc/cas/saml) to the vendor who in turn generated our sign on
information for their auth0 mechanism and we generated the json service
entry for our CAS instance:
file: /etc/cas/services/vendor-/1597152880.json [redacted vendor and
ourconnectionname]
/
/{
"@class": "org.apereo.cas.support.saml.services.SamlRegisteredService",
"serviceId": "urn:auth0:vendor:ourconnectionname",
"name": "Vendor",
"id": 1597152880,
"metadataLocation":
"https://vendor.us.auth0.com/samlp/metadata?connection=ourconnectionname",
"signingSignatureAlgorithms": [
"java.util.ArrayList",
[
"http://www.w3.org/2001/04/xmldsig-more#rsa-sha256"
]
],
"signingSignatureReferenceDigestMethods": [
"java.util.ArrayList",
[
"http://www.w3.org/2001/04/xmlenc#sha256"
]
],
"attributeReleasePolicy": {
"@class":
"org.apereo.cas.services.ReturnAllowedAttributeReleasePolicy",
"allowedAttributes": [
"java.util.ArrayList",
[
"UDC_IDENTIFIER",
/* some other attributes here*/
]
]
}
}
/
Here's /etc/cas/config/cas.properties [edited/redacted]
/cas.server.name: https://hostname:8443
cas.server.prefix: ${cas.server.name}:8443/cas
cas.adminPagesSecurity.actuatorEndpointsEnabled: true
cas.monitor.endpoints.enabled: true
endpoints.enabled: true
cas.monitor.endpoints.sensitive: false
endpoints.sensitive: false
cas.adminPagesSecurity.loginUrl: ${cas.server.prefix}/login
cas.adminPagesSecurity.service: ${cas.server.prefix}/status/dashboard
cas.adminPagesSecurity.users: file:/etc/cas/config/admusers.properties
cas.adminPagesSecurity.adminRoles[0]: ROLE_ADMIN
//logging.config: file:/etc/cas/config/log4j2.xml//
#location of service registry files
cas.serviceRegistry.config.location: file:/etc/cas/services
cas.tgc.secure: true
cas.tgc.crypto.signing.key: [redacted]
cas.tgc.crypto.encryption.key: [redacted]
cas.webflow.crypto.signing.key: [redacted]
cas.webflow.crypto.encryption.key: [redacted]
cas.authn.accept.users:
cas.authn.ldap[0].name: LDAP
cas.authn.ldap[0].type=AUTHENTICATED
#rest of LDAP config omitted but it works
*cas.authn.samlIdp.entityId=https://hostname.simons-rock.edu/idp**
**cas.authn.samlIdp.scope=simons-rock.edu**
**
**cas.samlidp.metadata.location=file:/etc/cas/saml**
**cas.samlidp.hostname=hostname.simons-rock.edu**
**cas.samlidp.scope=simons-rock.edu**
**cas.samlidp.entityid=https://hostname.simons-rock.edu/idp**
**cas.samlidp.response.skewAllowance=0**
**cas.samlidp.metadata.cache.exp.minutes=30**
**cas.samlidp.metadata.failfast.init=true**
**cas.samlidp.metadata.require.valid=true*
cas.authn.ldap[0].principalAttributeId=uid
cas.logout.followServiceRedirects=true
/
/
/
The parsing error is as follows:
/2020-08-12 08:26:16,658 ERROR
[org.apereo.cas.util.serialization.AbstractJacksonBackedStringSerializer]
- <Cannot read/parse JSON [{"//
//@class":"org.apereo.cas.support.saml.services.SamlRegisteredService","serviceId":"urn:auth0:cov...]
to deserialize into type [interfa//
//ce org.apereo.cas.services.RegisteredService]. This may be caused in
the absence of a configuration/support module that knows how to //
//interpret the JSON fragment, specially if the fragment describes a CAS
registered service definition. Internal parsing error is [Coul//
//d not resolve type id
'org.apereo.cas.support.saml.services.SamlRegisteredService' into a
subtype of [simple type, class org.apereo.c//
//as.services.RegisteredService]: no such class found//
// at [Source:
{"@class":"org.apereo.cas.support.saml.services.SamlRegisteredService","serviceId":"urn:auth0:vendor:connectionname","name":"CoVerified","id":1597152880,"metadataLocation":"https://vendor.us.auth0.com/samlp/metadata?connection=connectionname//
//imonrock","signingSignatureAlgorithms":["java.util.ArrayList",["http://www.w3.org/2001/04/xmldsig-more#rsa-sha256"]],"signingSignatur//
//eReferenceDigestMethods":["java.util.ArrayList",["http://www.w3.org/2001/04/xmlenc#sha256"]],"attributeReleasePolicy":{"@class":"org.//
//apereo.cas.services.ReturnAllowedAttributeReleasePolicy","allowedAttributes":["java.util.ArrayList",["UDC_IDENTIFIER"]]}};
line: 1, c//
//olumn: 11]]>//
//2020-08-12 08:26:16,658 ERROR
[org.apereo.cas.services.AbstractResourceBasedServiceRegistryDao] -
<Could not load service definition //
//from file [/etc/cas/services/vendor-1597152880.json]>//
/
I'm not sure if I have this setup properly or if using this somewhat
older version of CAS part issue?
Any advise you have to offer would be greatly appreciated.
Thanks in advance,
Scott
--
Scott Gennari
System Administrator
Information Technology Services
Bard College at Simon's Rock
--
- Website: https://apereo.github.io/cas
- Gitter Chatroom: https://gitter.im/apereo/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 on the web visit
https://groups.google.com/a/apereo.org/d/msgid/cas-user/1042bb2d-d3eb-4ba9-0e31-ee44c4ea4c65%40simons-rock.edu.