Do you have the   cas-server-support-mongo-service-registry   dependency in
the cas-management pom.xml as well as the cas server pom.xml? I didn't see
it in the excerpt you provided.

--Dave

--

DAVID A. CURRY, CISSP
*DIRECTOR • INFORMATION SECURITY & PRIVACY*
THE NEW SCHOOL • INFORMATION TECHNOLOGY

71 FIFTH AVE., 9TH FL., NEW YORK, NY 10003
+1 646 909-4728 • [email protected]


On Thu, Nov 14, 2019 at 10:53 AM Shawn Cutting <[email protected]> wrote:

> Good morning,
>
> I am at a total loss here about how to get CAS services to load from (and
> to) MongoDB.  Following the instructions on David Curry's site
> <https://dacurry-tns.github.io/deploying-apereo-cas/high-avail_overview.html>
> (very well written, by the way), I have the mongodb server running and
> replicating across 3 servers.  I am also able to successfully
> auto-initialize the database with the JSON files.  I verify this by opening
> mongodb and searching the collection "casServiceRegistry."
>
> *CAS version 5.3.14*, by the way.
>
> When I start the tomcat server and watch the debug logs, I see that CAS is
> loading the entry from the database:
>
> - snippet -
> 2019-11-13 16:24:22,706 DEBUG
> [org.apereo.cas.services.AbstractServicesManager] - <Loading services from
> [org.apereo.cas.services.ChainingServiceRegistry@3971e14f]>
> 2019-11-13 16:24:22,728 DEBUG
> [org.apereo.cas.services.AbstractServicesManager] - <Adding registered
> service [http(|s)://cas(|.*).messiah.edu(|.*)/cas-management(|/.*)]>
> 2019-11-13 16:24:22,729 INFO
> [org.apereo.cas.services.AbstractServicesManager] - <Loaded [1] service(s)
> from [MongoDbServiceRegistry].>
>
>
> Here is where it gets weird: when I load the management app, I see one
> service entry that does NOT match the one loaded on startup.  I should also
> note that I have the ticket registry replicated on the same MongoDB server
> and it works perfectly.
>
> That's the short story, here are the details (these settings match on all
> 3 servers "*cas-ha01, cas-ha02, cas-ha03*":
>
> -- cas.properties: --
> cas.server.name=https://cas-ha.messiah.edu
> cas.server.prefix=${cas.server.name}/cas
> cas.view.templatePrefixes[0]=file:///etc/cas/templates
> cas.logout.followServiceRedirects=true
> logging.config=file:/etc/cas/config/log4j2.xml
>
> mongo.db=casdb
> mongo.rs=rs0
> mongo.opts=&ssl=true
> mongo.creds=mongocas:**********
> mongo.hosts=cas-ha01.messiah.edu,cas-ha02.messiah.edu,cas-ha03.messiah.edu
> # The connection string, assembled
> mongo.uri=mongodb://${mongo.creds}@
> ${mongo.hosts}/${mongo.db}?replicaSet=${mongo.rs}${mongo.opts}
>
> ### Remove default/local users (must be left blank) ###
> cas.authn.accept.users=
>
> ### Service Registry Setup ###
> #cas.serviceRegistry.json.location=file:/etc/cas/services
> #cas.serviceRegistry.initFromJson=true
> cas.serviceRegistry.mongo.databaseName=${mongo.db}
> cas.serviceRegistry.mongo.clientUri=${mongo.uri}
> cas.serviceRegistry.mongo.collection=casServiceRegistry
> cas.serviceRegistry.mongo.replicaSet=${mongo.rs}
> cas.serviceRegistry.mongo.sslEnabled=true
> cas.ticket.registry.mongo.clientUri=${mongo.uri}
>
>
> -- management.properties: --
> cas.server.name=https://cas-ha.messiah.edu
> cas.server.prefix=${cas.server.name}/cas
> mgmt.serverName=${cas.server.name}
> mgmt.userPropertiesFile=file:/etc/cas/config/adminusers.properties
>
> mongo.db=casdb
> mongo.rs=rs0
> mongo.opts=&ssl=true
> mongo.creds=mongocas:**********
> mongo.hosts=cas-ha01.messiah.edu,cas-ha02.messiah.edu,cas-ha03.messiah.edu
> # The connection string, assembled
> mongo.uri=mongodb://${mongo.creds}@
> ${mongo.hosts}/${mongo.db}?replicaSet=${mongo.rs}${mongo.opts}
>
> ### Service Registry Setup ###
> #cas.serviceRegistry.json.location=file:/etc/cas/services
> cas.serviceRegistry.mongo.clientUri=${mongo.uri}
> cas.serviceRegistry.mongo.collection=casServiceRegistry
>
> -- pom.xml (cas server, dependencies): --
> ...
> <dependency>
>     <groupId>org.apereo.cas</groupId>
>     <artifactId>cas-server-webapp${app.server}</artifactId>
>     <version>${cas.version}</version>
>     <type>war</type>
>     <scope>runtime</scope>
> </dependency>
> <dependency>
>     <groupId>org.apereo.cas</groupId>
>     <artifactId>cas-server-support-ldap</artifactId>
>     <version>${cas.version}</version>
> </dependency>
> <dependency>
>     <groupId>org.apereo.cas</groupId>
>     <artifactId>cas-server-support-ldap-core</artifactId>
>     <version>${cas.version}</version>
> </dependency>
> <dependency>
>     <groupId>org.apereo.cas</groupId>
>     <artifactId>cas-server-webapp-config-security</artifactId>
>     <version>${cas.version}</version>
> </dependency>
> <dependency>
>     <groupId>org.apereo.cas</groupId>
>     <artifactId>cas-server-support-interrupt-core</artifactId>
>     <version>${cas.version}</version>
> </dependency>
> <dependency>
>     <groupId>org.apereo.cas</groupId>
>     <artifactId>cas-server-support-interrupt-api</artifactId>
>     <version>${cas.version}</version>
> </dependency>
> <dependency>
>     <groupId>org.apereo.cas</groupId>
>     <artifactId>cas-server-support-interrupt-webflow</artifactId>
>     <version>${cas.version}</version>
> </dependency>
> <dependency>
>     <groupId>org.apereo.cas</groupId>
>     <artifactId>cas-server-support-rest</artifactId>
>     <version>${cas.version}</version>
> </dependency>
> <dependency>
>     <groupId>org.apereo.cas</groupId>
>     <artifactId>cas-server-support-gauth</artifactId>
>     <version>${cas.version}</version>
> </dependency>
> <dependency>
>    <groupId>org.apereo.cas</groupId>
>    <artifactId>cas-server-support-jdbc-drivers</artifactId>
>    <version>${cas.version}</version>
> </dependency>
> <dependency>
>      <groupId>org.apereo.cas</groupId>
>      <artifactId>cas-server-support-gauth-jpa</artifactId>
>      <version>${cas.version}</version>
> </dependency>
> <dependency>
>     <groupId>org.apereo.cas</groupId>
>     <artifactId>cas-server-support-trusted-mfa</artifactId>
>     <version>${cas.version}</version>
> </dependency>
> <dependency>
>     <groupId>org.apereo.cas</groupId>
>     <artifactId>cas-server-support-trusted-mfa-jdbc</artifactId>
>     <version>${cas.version}</version>
> </dependency>
> <dependency>
>     <groupId>org.apereo.cas</groupId>
>     <artifactId>cas-server-support-mongo-ticket-registry</artifactId>
>     <version>${cas.version}</version>
> </dependency>
> <dependency>
>     <groupId>org.apereo.cas</groupId>
>     <artifactId>cas-server-support-mongo-service-registry</artifactId>
>     <version>${cas.version}</version>
> </dependency>
> ...
>
> -- pom.xml (management app, dependencies): --
> ...
> <dependency>
>     <groupId>org.apereo.cas</groupId>
>     <artifactId>cas-management-webapp</artifactId>
>     <version>${cas-mgmt.version}</version>
>     <type>war</type>
> </dependency>
> ...
>
> When I load the Service Management app, here is the service that appears:
> ^https://cas-ha.messiah.edu/cas-management/manage.html
>
> But the one that is in the MongoDB table (which I imported from the
> initFromJson) is:
> http(|s)://cas(|.*).messiah.edu(|.*)/cas-management(|/.*)
>
> If I try to create a new service entry, it does not appear in the MongoDB,
> and I cannot delete the existing one.  In fact, I do not know how that one
> is even getting into the management app (that's what is really driving me
> nuts, since I have deleted all service json files)!!
>
> If anyone can help me out, I woudl certainly apprecite it.
>
> --
> - 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/67bec8ac-d253-47ba-95eb-aa01ef6b317a%40apereo.org
> <https://groups.google.com/a/apereo.org/d/msgid/cas-user/67bec8ac-d253-47ba-95eb-aa01ef6b317a%40apereo.org?utm_medium=email&utm_source=footer>
> .
>

-- 
- 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/CA%2Bd9XANgFpjFcnCWh%3D_vCb22xCj1jsyQWA-LK1pi3pLuMcbUnw%40mail.gmail.com.

Reply via email to