Va,

I would like to mention that your complaint is about a product that you get 
to use *for free*. I support some paid software with worse documentation. I 
do understand the frustration, as the learning curve is steep, but that's 
where this community comes in. Everyone here tries to be very helpful, 
giving one another their time *for free*. I've been supporting CAS 5 in my 
organization now for just over a year, and I find that the documentation 
does in fact tell me what I need to know. It's just that getting started 
can be tough.

Yet another free resource you may find helpful: David Curry, one of our 
community members, created a very easy to follow guide to implementing CAS 
5. Check it out 
here:  
https://dacurry-tns.github.io/deploying-apereo-cas/introduction_overview.html

Matt

On Wednesday, May 15, 2019 at 7:01:39 AM UTC-6, Va Sja wrote:
>
> As I see after almost 2 years documentation still don't getted better ...
> ... there are no some 1-2-3-Specs to finish even HelloWorld with CAS. But 
> the release number grows extremely. 3.6, 4.0-1-2-3, 5.0-1-2-3, 6.0. 
>
> So - looks like the developers stacked in the similar way as users :)   
> I would wait till first release with suffix "STABLE", before start to use 
> IT. After a week of rolling over LinkDoc-to-LinkDoc-to-LinkDoc-to-LinkDoc I 
> give Up. Jan has created *___THE_BEST_MANUAL_EVER__ *, but currently on 
> my side I reach the pont, that I can logIn, but* LogOut not works *as 
> expected...
>
> Hope somebody from DigitalOcean <https://www.digitalocean.com/> can 
> repeat success from already thousand of HOW_TO like that : 
> how-to-install-mysql-on-ubuntu-18-04 
> <https://www.digitalocean.com/community/tutorials/how-to-install-mysql-on-ubuntu-18-04>
>  . 
> It should be not harder as 10 mins, isn't- it?
>
>
>
> Am Montag, 30. Oktober 2017 14:50:43 UTC+1 schrieb Jan:
>>
>> Hello,
>>
>> As a new user of CAS, I'd like to voice my opinion that the official 
>> documentation of how one can get started with CAS is just awful. By this I 
>> mean not the lack of it, but rather how indirect, not step-by-step it is. 
>> Clarity could often be improved too.
>>
>> In the end I managed to do what I hoped for, ie investigate CAS locally 
>> as an SSO solution, for which I needed to (1) run CAS server locally, (2) 
>> connect and authenticate using a simple CAS client locally, (3) run the 
>> service management app. However, the difficulty I had at most steps of 
>> getting it all to work make me really want to use something else even if I 
>> have to implement parts of it from scratch..
>>
>> Only now, when wanting to post this message, did I find this helpful 
>> guide: https://dacurry-tns.github.io/deploying-apereo-cas/ Could the CAS 
>> team incorporate some step-by-step tutorial like this into the official 
>> documentation?
>>
>> These threads seem to voice a similar concern:
>>
>> https://groups.google.com/a/apereo.org/forum/#!searchin/cas-user/documentation/cas-user/z3BLJ0IQwZ0/wRybEK1LAQAJ
>>
>> https://groups.google.com/a/apereo.org/forum/#!searchin/cas-user/documentation/cas-user/qaAINooFi1s/D3k7Pr-7BQAJ
>>
>> I'm also posting the notes I made for myself during the process. I 
>> wouldn't have written them if there was something like this available in 
>> official docs, or I had found the unofficial guide earlier. I'm adding **** 
>> to points that took me particularly long to figure out.
>>
>> *Building*
>> - Described here: 
>> https://apereo.github.io/cas/developer/Build-Process.html
>> - git clone --depth=1 --single-branch --branch=master 
>> [email protected]:apereo/cas.git cas-server
>> - cd cas-server
>> - git checkout master
>> - ./gradlew build install --parallel -x test -x javadoc -x check
>>
>> *Config*
>> - Default config dir is /etc/cas/config (may need to be created, given 
>> permissions) If you create application.properties in there, CAS seems to 
>> pick them up. ****
>> - You can override in there any properties listed on 
>> https://apereo.github.io/cas/development/installation/Configuration-Properties.html
>>
>> *Keys*
>> - keytool -genkey -alias cas -keyalg RSA -validity 999 -keystore 
>> /etc/cas/thekeystore -ext san=dns:cas-sso.local
>> - Add 127.0.0.1 cas-sso.local to /etc/hosts
>> - keytool -export -file /etc/cas/config/cas.crt -keystore 
>> /etc/cas/thekeystore -alias cas
>> - sudo keytool -import -file /etc/cas/config/cas.crt -alias cas -keystore 
>> $JAVA_HOME/jre/lib/security/cacerts (default password to cacerts is 
>> changeit)
>> - Add the following lines to application.properties in CAS config dir 
>> (with whatever password you set up for /etc/cas/thekeystore) ****
>> server.ssl.keyStorePassword=qwer1234
>> server.ssl.keyPassword=qwer1234
>>
>> *Adding JSON service registry (to get a sample client registered)*
>> - Add line >>compile 
>> "org.apereo.cas:cas-server-support-json-service-registry:5.2.0-SNAPSHOT"<< 
>> to the file cas-server/webapp/cas-server-webapp-tomcat/build.gradle, 
>> replacing 5.2.0-SNAPSHOT with whatever version of CAS you have. The version 
>> can be figured out after starting CAS (is displayed). ****
>> - Recompile the whole thing as above.
>> - Add the following lines to application.properties in CAS config dir: 
>> ****
>> cas.serviceRegistry.watcherEnabled=true
>> cas.serviceRegistry.repeatInterval=10
>> cas.serviceRegistry.startDelay=1
>> cas.serviceRegistry.initFromJson=true
>> - Add json file with service defs in directory 
>> cas-server/webapp/resources/services (the server seems to display which 
>> directory it watches after start).
>> {
>>   "@class" : "org.apereo.cas.services.RegexRegisteredService",
>>   "serviceId" : "http://localhost/.*";, ****
>>   "name" : "testId",
>>   "id" : 1,
>>   "accessStrategy" : {
>>   "@class" : 
>> "org.apereo.cas.services.DefaultRegisteredServiceAccessStrategy",
>>   "enabled" : true,
>>   "ssoEnabled" : true
>>   }
>> }
>>
>> *Getting access to /status/dashboard endpoint *****
>> - Add the following lines to application.properties in CAS config dir:
>> cas.adminPagesSecurity.ip=127\.0\.0\.1
>> cas.monitor.endpoints.enabled=true
>> cas.monitor.endpoints.sensitive=false
>>
>> *Running*
>> - cd webapp/cas-server-webapp-tomcat
>> - ../../gradlew build bootRun --parallel
>>
>> *Simple client*
>> - git clone [email protected]:apereo/phpCAS.git
>> - cd phpCAS
>> - Copy docs/examples/config.example.php to docs/examples/config.php and 
>> edit:
>> // Full Hostname of your CAS Server
>> $cas_host = 'cas-sso.local';
>> // Context of the CAS Server
>> $cas_context = '/cas';
>> // Port of your CAS server. Normally for a https server it's 443
>> $cas_port = 8443;
>> - Make the file docs/examples/example_simple.php accessible by www.
>> - Navigate to http://localhost/phpCAS/docs/examples/example_simple.php
>>
>> *Service management app*
>> - Based on https://github.com/apereo/cas-services-management-overlay
>> - git clone [email protected]:apereo/cas-services-management-overlay.git
>> - cd cas-services-management-overlay
>> - ./build.sh package
>> - This creates target/cas-management.war, which should be deployed to 
>> Tomcat. Make sure Tomcat uses the same Java as CAS server. Otherwise, it 
>> won't find the SSL keys in the Java truststore. ****
>> - On first run, it copies various files from cas/config into 
>> /etc/cas/config. You may want to update management.properties as follows, 
>> in particular:
>> # CAS server that management app will authenticate with
>> # This server will authenticate for any app (service) and you can login 
>> as casuser/Mellon
>> cas.server.name: https://cas-sso.local:8443/
>> cas.server.prefix: https://cas-sso.local:8443/cas
>> cas.mgmt.adminRoles[0]=ROLE_ADMIN
>> cas.mgmt.userPropertiesFile=file:/etc/cas/config/users.properties
>> # Update this URL to point at server running this management app
>> cas.mgmt.serverName=http://localhost:8080
>> server.context-path=/cas-management
>> server.port=8080
>> logging.config=file:/etc/cas/config/log4j2-management.xml
>> - http://localhost:8080/cas-management
>>
>> *Conclusions*
>> - Really painful to set up.
>> - CAS documentation is very unclear, tons of linked documents, not sure 
>> where to find information.
>> - Wonder if better to do OAuth2 even if redirecting to Google / FB needs 
>> to be implemented from scratch.
>>
>> ---
>>
>> With all that, thank you for writing and maintaining this software. It 
>> does seem like a good choice for SSO solutions - but the initial learning 
>> curve shouldn't be quite so sharp.
>>
>> Jan
>>
>

-- 
- 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/944cdd7e-8724-4bb2-a853-bd5c773a8b0e%40apereo.org.

Reply via email to