I changed it from info to warn: 2018-02-10 08:54:07,061 WARN [org.apereo.cas.authentication.GroovyMultifactorAuthenticationProviderBypass] - <Evaluating principal attributes [businessCategory:[Employee, Staff], cn:Brian Davidson, ctCalDefaultNoteReminder:0:0, ctCalDefaultReminder:0:10, ctCalDefaultTaskReminder:0:0, ctCalDisplayPrefs:4:480:1080:1:30:190:2, ctCalLanguageId:0, ctCalNotifMechanism:1, ctCalOperatingPrefs:0:255:0:0:0:0:0:1440:0:1440:0:0:1440:0:1440:0:0:1440:0:1440:0:0:1440:0:1440:0:0:1440:0:1440:0:0:1440:0:1440:0:0:1440:0:1440, ctCalPasswordRequired:1, ctCalPublishedType:0, ctCalRefreshPrefs:1:60, ctCalSMSTimeRange:0:0, ctCalSysopCanWritePassword:0, ctCalTimezone:0, ctCalXItemId:10101:02238, eduPersonAffiliation:[member, staff], gecos:Brian Davidson, gidNumber:5137, givenName:Brian, gmuBannerGUID:REDACTED, gmuemployeestatus:C, gmugnumber:REDACTED, gmuMLPwdChanged:20170127190453Z, gmurup:true, gmusecurityquiz:1487691778, homeDirectory:REDACTED, iplanet-am-modifiable-by:cn=Top-level Admin Role,o=gmu.edu, l:opted-in-201103021755, loginShell:/bin/bash, mail:REDACTED, mailAllowedServiceAccess:-imap,pop,http,smtp:*, mailAlternateAddress:REDACTED, mailDeliveryOption:mailbox, mailHost:gmuedu.onmicrosoft.com, mailQuota:1048576000, mailRoutingAddress:REDACTED, nsmsgDisallowAccess:imap pop http smtp, nswmExtendedUserPrefs:[meTrashFolder=Trash, meSentFolder=Sent, meDraftFolder=Drafts, meInitialized=true], objectClass:[posixAccount, sunUCPreferences, mailrecipient, iplanetPreferences, inetLocalMailRecipient, iplanet-am-managed-person, inetOrgPerson, inetAdmin, ctCalUser, inetMailUser, iplanet-am-user-service, gmuPerson, shadowAccount, userPresenceProfile, inetUser, top, person, organizationalPerson, ipuser, eduPerson, account], ou=people,o=gmu.edu,o=pab, sn:Davidson, uid:REDACTED, uidNumber:888, userPassword:REDACTED]>
> On Feb 10, 2018, at 8:43 AM, Man H <[email protected]> wrote: > > Could you try this > > def boolean run(final Object... args){ > def authentication = args[0] > def principal = args[1] > def service = args[2] > def provider = args[3] > def logger = args[4] > def httpRequest = args[5] > > logger.info("Evaluating principal attributes ${principal.attributes}") > > return true > } > > > El sábado, 10 de febrero de 2018, Brian Davidson <[email protected] > <mailto:[email protected]>> escribió: > Removed that dependency and still git the same 500 error and same stack trace. > >> On Feb 10, 2018, at 7:20 AM, Man H <[email protected] >> <mailto:[email protected]>> wrote: >> >> Why you hace this >> >> >> <dependency> >> <groupId>javax.servlet</groupId> >> <artifactId>servlet-api</artifactId> >> <version>2.5</version> >> <type>jar</type> >> </dependency> >> >> >> El sábado, 10 de febrero de 2018, Brian Davidson <[email protected] >> <mailto:[email protected]>> escribió: >> Running on apache-tomcat-8.5.24, so that should be servlet v3.1.x. >> >> Yes, this is CAS version 5.2.2. >> >> CAS w/ Duo works with no bypass groovy script in place. CAS works with >> bypass groovy script that returns false. We’re just getting the exception >> when the groovy script returns true. >> >> Thanks again for all the help! >> >> >> >> >>> External >>> A CAS deployment may be deployed to any number of external servlet >>> containers. The container MUST support the servlet specification v3.1.x at >>> a minimum. >>> >>> On Feb 10, 2018, at 6:37 AM, Man H <[email protected] >>> <mailto:[email protected]>> wrote: >>> >>> Assuming you are on 5.2.2 >>> >>> El sábado, 10 de febrero de 2018, Brian Davidson <[email protected] >>> <mailto:[email protected]>> escribió: >>> I meant to add, our pom.xml has the following dependencies (in case we’re >>> missing something): >>> >>> <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-saml</artifactId> >>> <version>${cas.version}</version> >>> </dependency> >>> <dependency> >>> <groupId>org.apereo.cas</groupId> >>> >>> <artifactId>cas-server-support-hazelcast-ticket-registry</artifactId> >>> <version>${cas.version}</version> >>> </dependency> >>> <dependency> >>> <groupId>org.apereo.cas</groupId> >>> <artifactId>cas-server-support-duo</artifactId> >>> <version>${cas.version}</version> >>> </dependency> >>> <dependency> >>> <groupId>org.apereo.cas</groupId> >>> >>> <artifactId>cas-server-support-json-service-registry</artifactId> >>> <version>${cas.version}</version> >>> </dependency> >>> <dependency> >>> <groupId>org.javassist</groupId> >>> <artifactId>javassist</artifactId> >>> <version>3.17.1-GA</version> >>> </dependency> >>> <dependency> >>> <groupId>javax.servlet</groupId> >>> <artifactId>servlet-api</artifactId> >>> <version>2.5</version> >>> <type>jar</type> >>> </dependency> >>> <dependency> >>> <groupId>org.apereo.cas</groupId> >>> <artifactId>cas-server-core-webflow</artifactId> >>> <version>${cas.version}</version> >>> </dependency> >>> <dependency> >>> <groupId>org.apereo.cas</groupId> >>> <artifactId>cas-server-core-web</artifactId> >>> <version>${cas.version}</version> >>> <type>jar</type> >>> </dependency> >>> <dependency> >>> <groupId>org.apereo.cas</groupId> >>> <artifactId>cas-server-core-configuration</artifactId> >>> <version>${cas.version}</version> >>> <type>jar</type> >>> </dependency> >>> <dependency> >>> <groupId>org.apereo.cas</groupId> >>> <artifactId>cas-server-core-authentication</artifactId> >>> <version>${cas.version}</version> >>> </dependency> >>> </dependencies> >>> >>> >>>> On Feb 9, 2018, at 5:19 PM, Man H <[email protected] >>>> <mailto:[email protected]>> wrote: >>>> >>>> >>>> add >>>> <dependency> >>>> <groupId>org.apereo.cas</groupId> >>>> <artifactId>cas-server-core-authentication</artifactId> >>>> <version>${cas.version}</version> >>>> </dependency> >>>> >>>> with: >>>> >>>> cas.authn.mfa.duo[0].bypass.type=GROOVY >>>> cas.authn.mfa.duo[0].bypass.gr >>>> <http://bypass.gr/>oovy.location=file:/etc/cas/config/mfaGroovyTrigger.groovy >>>> >>>> you should get >>>> >>>> 2018-02-09 19:10:39,145 DEBUG >>>> [org.apereo.cas.authentication.GroovyMultifactorAuthenticationProviderBypass] >>>> - <Evaluating multifactor authentication bypass properties for principal >>>> [casuser], service [null] and provider >>>> [DefaultDuoMultifactorAuthenticationProvider] via Groovy script [URL >>>> [file:/etc/cas/config/mfaGroovyTrigger.groovy]]> >>>> >>>> >>>> >>>> >>>> >>>> 2018-02-09 17:11 GMT-03:00 Brian Davidson <[email protected] >>>> <mailto:[email protected]>>: >>>> Just to add a bit to what Brian M. provided (I’m also a Brian, and a >>>> co-worker of Brian M’s): >>>> >>>> We have Duo MFA working if we comment out: >>>> cas.authn.mfa.duo[0].bypass.type=GROOVY >>>> cas.authn.mfa.duo[0].bypass.gr >>>> <http://bypass.gr/>oovy.location=file:///etc/cas/selectiveDuo.groovy <> >>>> >>>> We did find that CAS was unable to check to see if the user exists in Duo >>>> if we used the “CAS” integration in Duo. But it works if we set up the >>>> integration as “Auth API”. >>>> >>>> We haven’t touched webflow. With the groovy script in place, >>>> >>>> When we enable GROOVY bypass script, we get: >>>> >>>> 2018-02-09 15:04:55,638 DEBUG >>>> [org.springframework.webflow.engine.impl.FlowExecutionImpl] - <Attempting >>>> to handle [org.springframework.webflow.execution.FlowExecutionException: >>>> Exception thrown in state 'viewLoginFormDuo' of flow 'mfa-duo'] with root >>>> cause [java.io <http://java.io/>.NotSerializableException: >>>> org.springframework.core.io >>>> <http://org.springframework.core.io/>.UrlResource]> >>>> >>>> As well as the stack trace Brian M. provided. >>>> >>>> cas.authn.mfa.duo[0].bypass.gr <http://bypass.gr/>oovy.location was the >>>> missing piece yesterday. Dug through source code to find that. We’re >>>> happy to provide updates to the documentation once we get this working. >>>> >>>> Thanks for the help! >>>> >>>>> On Feb 9, 2018, at 10:14 AM, brian mancuso <[email protected] >>>>> <mailto:[email protected]>> wrote: >>>>> >>>>> Anything that says "REMOVED" is just stuff I pulled out before posting >>>>> it. I didn't want to post any private/sensitive information. >>>>> >>>>> On Friday, February 9, 2018 at 9:59:12 AM UTC-5, Manfredo Hopp wrote: >>>>> What do you mean by REMOVED in properties . >>>>> >>>>> El viernes, 9 de febrero de 2018, brian mancuso <[email protected] <>> >>>>> escribió: >>>>> Hey all, >>>>> >>>>> I was originally trying to setup some custom triggers to determine who >>>>> should use MFA and who is allowed to bypass. I have since been directed >>>>> towards Groovy to simplify things, but I'm still having some trouble. >>>>> >>>>> At this point, the Groovy script's purpose is strictly to test if a >>>>> certain user will bypass MFA while others will not. Here's my setup: >>>>> >>>>> /etc/cas/config/cas.properties >>>>> >>>>> ## >>>>> # Duo security 2fa authentication provider >>>>> # https://www.duosecurity.com/docs/duoweb#1.-generate-an-akey >>>>> <https://www.duosecurity.com/docs/duoweb#1.-generate-an-akey> >>>>> # >>>>> cas.authn.mfa.duo[0].rank=0 >>>>> cas.authn.mfa.duo[0].duoApiHost=REMOVED >>>>> cas.authn.mfa.duo[0].duoIntegrationKey=REMOVED >>>>> cas.authn.mfa.duo[0].duoSecretKey=REMOVED >>>>> cas.authn.mfa.duo[0].duoApplicationKey=REMOVED >>>>> cas.authn.mfa.duo[0].id=mfa-duo >>>>> cas.authn.mfa.globalProviderId=mfa-duo >>>>> cas.authn.mfa.globalFailureMode=OPEN >>>>> cas.authn.mfa.duo[0].bypass.type=GROOVY >>>>> cas.authn.mfa.duo[0].bypass.groovy.location=file:///etc/cas/selectiveDuo.groovy >>>>> >>>>> >>>>> /etc/cas/selectiveDuo.groovy >>>>> >>>>> def boolean run(final Object... args) { >>>>> def authentication = args[0] >>>>> def principal = args[1] >>>>> def service = args[2] >>>>> def provider = args[3] >>>>> def logger = args[4] >>>>> def httpRequest = args[5] >>>>> >>>>> logger.info("Evaluating principal attributes ${principal.attributes}") >>>>> >>>>> def bypass = principal.attributes['uid'] >>>>> if ((bypass.contains("testuser") && provider.id == "mfa-duo") { >>>>> logger.info("Skipping bypass for principal ${principal.id >>>>> <http://principal.id/>}") >>>>> return false >>>>> } >>>>> >>>>> return true >>>>> } >>>>> >>>>> >>>>> When I try to login though, whenever a user would be sent to DUO, I get a >>>>> 500 error: >>>>> >>>>> >>>>> <https://lh3.googleusercontent.com/-bqF7r6WYFDU/Wn2r6Zgza6I/AAAAAAAASso/CtOtDNX7IF0Y2Ua0Eb8GyWbXuYdCSbEJgCLcBGAs/s1600/Screen%2BShot%2B2018-02-09%2Bat%2B9.10.22%2BAM.png> >>>>> >>>>> Here's a small snippet from the output: >>>>> >>>>> 2018-02-09 09:04:05,717 DEBUG >>>>> [org.apereo.cas.web.FlowExecutionExceptionResolver] - <Ignoring the >>>>> received exception due to a type mismatch> >>>>> org.springframework.webflow.execution.FlowExecutionException: Exception >>>>> thrown in state 'viewLoginFormDuo' of flow 'mfa-duo' >>>>> at >>>>> org.springframework.webflow.engine.impl.FlowExecutionImpl.wrap(FlowExecutionImpl.java:573) >>>>> ~[spring-webflow-2.4.6.RELEASE.jar:2.4.6.RELEASE] >>>>> at org.springframework.webflow.engine.impl.FlowExecutionImpl.re >>>>> <http://gine.impl.flowexecutionimpl.re/>sume(FlowExecutionImpl.java:263) >>>>> ~[spring-webflow-2.4.6.RELEASE.jar:2.4.6.RELEASE] >>>>> at >>>>> org.springframework.webflow.executor.FlowExecutorImpl.resumeExecution(FlowExecutorImpl.java:169) >>>>> ~[spring-webflow-2.4.6.RELEASE.jar:2.4.6.RELEASE] >>>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >>>>> ~[?:1.8.0_151] >>>>> >>>>> Caused by: >>>>> org.apereo.spring.webflow.plugin.ClientFlowExecutionRepositoryException: >>>>> Error encoding flow execution >>>>> at >>>>> org.apereo.spring.webflow.plugin.ClientFlowExecutionRepository.getKey(ClientFlowExecutionRepository.java:114) >>>>> ~[spring-webflow-client-repo-1.0.3.jar:1.0.3] >>>>> at org.springframework.webflow.engine.impl.FlowExecutionImpl.as >>>>> <http://gine.impl.flowexecutionimpl.as/>signKey(FlowExecutionImpl.java:419) >>>>> ~[spring-webflow-2.4.6.RELEASE.jar:2.4.6.RELEASE] >>>>> at >>>>> org.springframework.webflow.engine.impl.RequestControlContextImpl.assignFlowExecutionKey(RequestControlContextImpl.java:193) >>>>> ~[spring-webflow-2.4.6.RELEASE.jar:2.4.6.RELEASE] >>>>> >>>>> Caused by: java.io <http://java.io/>.NotSerializableException: >>>>> org.springframework.core.io >>>>> <http://org.springframework.core.io/>.UrlResource >>>>> at >>>>> java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1184) >>>>> ~[?:1.8.0_151] >>>>> at >>>>> java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1548) >>>>> ~[?:1.8.0_151] >>>>> at >>>>> java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1509) >>>>> ~[?:1.8.0_151] >>>>> at >>>>> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1432) >>>>> ~[?:1.8.0_151] >>>>> at >>>>> java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1178) >>>>> ~[?:1.8.0_151] >>>>> at >>>>> java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1548) >>>>> ~[?:1.8.0_151] >>>>> at >>>>> java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1509) >>>>> ~[?:1.8.0_151] >>>>> >>>>> 2018-02-09 09:04:05,717 ERROR >>>>> [org.springframework.boot.web.support.ErrorPageFilter] - <Forwarding to >>>>> error page from request [/login] due to exception [Exception thrown in >>>>> state 'viewLoginFormDuo' of flow 'mfa-duo']> >>>>> org.springframework.webflow.execution.FlowExecutionException: Exception >>>>> thrown in state 'viewLoginFormDuo' of flow 'mfa-duo' >>>>> at >>>>> org.springframework.webflow.engine.impl.FlowExecutionImpl.wrap(FlowExecutionImpl.java:573) >>>>> ~[spring-webflow-2.4.6.RELEASE.jar:2.4.6.RELEASE] >>>>> at org.springframework.webflow.engine.impl.FlowExecutionImpl.re >>>>> <http://gine.impl.flowexecutionimpl.re/>sume(FlowExecutionImpl.java:263) >>>>> ~[spring-webflow-2.4.6.RELEASE.jar:2.4.6.RELEASE] >>>>> at >>>>> org.springframework.webflow.executor.FlowExecutorImpl.resumeExecution(FlowExecutorImpl.java:169) >>>>> ~[spring-webflow-2.4.6.RELEASE.jar:2.4.6.RELEASE] >>>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >>>>> ~[?:1.8.0_151] >>>>> at >>>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) >>>>> ~[?:1.8.0_151] >>>>> at >>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) >>>>> ~[?:1.8.0_151] >>>>> at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_151] >>>>> >>>>> Caused by: >>>>> org.apereo.spring.webflow.plugin.ClientFlowExecutionRepositoryException: >>>>> Error encoding flow execution >>>>> at >>>>> org.apereo.spring.webflow.plugin.ClientFlowExecutionRepository.getKey(ClientFlowExecutionRepository.java:114) >>>>> ~[spring-webflow-client-repo-1.0.3.jar:1.0.3] >>>>> at org.springframework.webflow.engine.impl.FlowExecutionImpl.as >>>>> <http://gine.impl.flowexecutionimpl.as/>signKey(FlowExecutionImpl.java:419) >>>>> ~[spring-webflow-2.4.6.RELEASE.jar:2.4.6.RELEASE] >>>>> at >>>>> org.springframework.webflow.engine.impl.RequestControlContextImpl.assignFlowExecutionKey(RequestControlContextImpl.java:193) >>>>> ~[spring-webflow-2.4.6.RELEASE.jar:2.4.6.RELEASE] >>>>> at >>>>> org.springframework.webflow.engine.ViewState.doEnter(ViewState.java:170) >>>>> ~[spring-webflow-2.4.6.RELEASE.jar:2.4.6.RELEASE] >>>>> at org.springframework.webflow.engine.State.enter(State.java:194) >>>>> ~[spring-webflow-2.4.6.RELEASE.jar:2.4.6.RELEASE] >>>>> at >>>>> org.springframework.webflow.engine.Transition.execute(Transition.java:228) >>>>> ~[spring-webflow-2.4.6.RELEASE.jar:2.4.6.RELEASE] >>>>> at >>>>> org.springframework.webflow.engine.impl.FlowExecutionImpl.execute(FlowExecutionImpl.java:395) >>>>> ~[spring-webflow-2.4.6.RELEASE.jar:2.4.6.RELEASE] >>>>> at >>>>> org.springframework.webflow.engine.impl.RequestControlContextImpl.execute(RequestControlContextImpl.java:214) >>>>> ~[spring-webflow-2.4.6.RELEASE.jar:2.4.6.RELEASE] >>>>> >>>>> Caused by: java.io <http://java.io/>.NotSerializableException: >>>>> org.springframework.core.io >>>>> <http://org.springframework.core.io/>.UrlResource >>>>> at >>>>> java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1184) >>>>> ~[?:1.8.0_151] >>>>> at >>>>> java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1548) >>>>> ~[?:1.8.0_151] >>>>> at >>>>> java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1509) >>>>> ~[?:1.8.0_151] >>>>> at >>>>> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1432) >>>>> ~[?:1.8.0_151] >>>>> at >>>>> java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1178) >>>>> ~[?:1.8.0_151] >>>>> at >>>>> java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1548) >>>>> ~[?:1.8.0_151] >>>>> at >>>>> java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1509) >>>>> ~[?:1.8.0_151] >>>>> at >>>>> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1432) >>>>> ~[?:1.8.0_151] >>>>> >>>>> >>>>> I posted the output to pastebin since it was too large for just posting >>>>> here: https://pastebin.com/yNPk4u7n <https://pastebin.com/yNPk4u7n> >>>>> >>>>> -- >>>>> - Website: https://apereo.github.io/cas <https://apereo.github.io/cas> >>>>> - Gitter Chatroom: https://gitter.im/apereo/cas >>>>> <https://gitter.im/apereo/cas> >>>>> - List Guidelines: https://goo.gl/1VRrw7 <https://goo.gl/1VRrw7> >>>>> - Contributions: https://goo.gl/mh7qDG <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/b3ba67e2-e0ca-4a8e-853b-041343564b9f%40apereo.org >>>>> >>>>> <https://groups.google.com/a/apereo.org/d/msgid/cas-user/b3ba67e2-e0ca-4a8e-853b-041343564b9f%40apereo.org?utm_medium=email&utm_source=footer>. >>>>> >>>>> -- >>>>> - Website: https://apereo.github.io/cas <https://apereo.github.io/cas> >>>>> - Gitter Chatroom: https://gitter.im/apereo/cas >>>>> <https://gitter.im/apereo/cas> >>>>> - List Guidelines: https://goo.gl/1VRrw7 <https://goo.gl/1VRrw7> >>>>> - Contributions: https://goo.gl/mh7qDG <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] >>>>> <mailto:[email protected]>. >>>>> To view this discussion on the web visit >>>>> https://groups.google.com/a/apereo.org/d/msgid/cas-user/651df904-b94c-4d3b-9915-ddfd969c5924%40apereo.org >>>>> >>>>> <https://groups.google.com/a/apereo.org/d/msgid/cas-user/651df904-b94c-4d3b-9915-ddfd969c5924%40apereo.org?utm_medium=email&utm_source=footer>. >>>> >>>> >>>> -- >>>> - Website: https://apereo.github.io/cas <https://apereo.github.io/cas> >>>> - Gitter Chatroom: https://gitter.im/apereo/cas >>>> <https://gitter.im/apereo/cas> >>>> - List Guidelines: https://goo.gl/1VRrw7 <https://goo.gl/1VRrw7> >>>> - Contributions: https://goo.gl/mh7qDG <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] >>>> <mailto:[email protected]>. >>>> To view this discussion on the web visit >>>> https://groups.google.com/a/apereo.org/d/msgid/cas-user/2A0C53A0-2FFF-4F1E-AAAE-B9647B352CB5%40gmail.com >>>> >>>> <https://groups.google.com/a/apereo.org/d/msgid/cas-user/2A0C53A0-2FFF-4F1E-AAAE-B9647B352CB5%40gmail.com?utm_medium=email&utm_source=footer>. >>>> >>>> >>>> -- >>>> - Website: https://apereo.github.io/cas <https://apereo.github.io/cas> >>>> - Gitter Chatroom: https://gitter.im/apereo/cas >>>> <https://gitter.im/apereo/cas> >>>> - List Guidelines: https://goo.gl/1VRrw7 <https://goo.gl/1VRrw7> >>>> - Contributions: https://goo.gl/mh7qDG <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] >>>> <mailto:[email protected]>. >>>> To view this discussion on the web visit >>>> https://groups.google.com/a/apereo.org/d/msgid/cas-user/CAMY5midKW9nbuUSutNPX5%2BKbmKPfaGnMRfjmVosqwBESC9KNgw%40mail.gmail.com >>>> >>>> <https://groups.google.com/a/apereo.org/d/msgid/cas-user/CAMY5midKW9nbuUSutNPX5%2BKbmKPfaGnMRfjmVosqwBESC9KNgw%40mail.gmail.com?utm_medium=email&utm_source=footer>. >>> >>> >>> -- >>> - Website: https://apereo.github.io/cas <https://apereo.github.io/cas> >>> - Gitter Chatroom: https://gitter.im/apereo/cas >>> <https://gitter.im/apereo/cas> >>> - List Guidelines: https://goo.gl/1VRrw7 <https://goo.gl/1VRrw7> >>> - Contributions: https://goo.gl/mh7qDG <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] >>> <mailto:[email protected]>. >>> To view this discussion on the web visit >>> https://groups.google.com/a/apereo.org/d/msgid/cas-user/4B953717-A37E-4E87-AD49-2BF69A7124C1%40gmail.com >>> >>> <https://groups.google.com/a/apereo.org/d/msgid/cas-user/4B953717-A37E-4E87-AD49-2BF69A7124C1%40gmail.com?utm_medium=email&utm_source=footer>. >>> >>> -- >>> - Website: https://apereo.github.io/cas <https://apereo.github.io/cas> >>> - Gitter Chatroom: https://gitter.im/apereo/cas >>> <https://gitter.im/apereo/cas> >>> - List Guidelines: https://goo.gl/1VRrw7 <https://goo.gl/1VRrw7> >>> - Contributions: https://goo.gl/mh7qDG <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] >>> <mailto:[email protected]>. >>> To view this discussion on the web visit >>> https://groups.google.com/a/apereo.org/d/msgid/cas-user/CAMY5mifAJL3Wiq%2Bh8HdAbUGB0SEaARNZH--s5wcJ_%3DamQtER9w%40mail.gmail.com >>> >>> <https://groups.google.com/a/apereo.org/d/msgid/cas-user/CAMY5mifAJL3Wiq%2Bh8HdAbUGB0SEaARNZH--s5wcJ_%3DamQtER9w%40mail.gmail.com?utm_medium=email&utm_source=footer>. >> >> >> -- >> - Website: https://apereo.github.io/cas <https://apereo.github.io/cas> >> - Gitter Chatroom: https://gitter.im/apereo/cas >> <https://gitter.im/apereo/cas> >> - List Guidelines: https://goo.gl/1VRrw7 <https://goo.gl/1VRrw7> >> - Contributions: https://goo.gl/mh7qDG <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] >> <mailto:[email protected]>. >> To view this discussion on the web visit >> https://groups.google.com/a/apereo.org/d/msgid/cas-user/726B28A6-E38E-425D-8ECD-5A6040905A48%40gmail.com >> >> <https://groups.google.com/a/apereo.org/d/msgid/cas-user/726B28A6-E38E-425D-8ECD-5A6040905A48%40gmail.com?utm_medium=email&utm_source=footer>. >> >> -- >> - Website: https://apereo.github.io/cas <https://apereo.github.io/cas> >> - Gitter Chatroom: https://gitter.im/apereo/cas >> <https://gitter.im/apereo/cas> >> - List Guidelines: https://goo.gl/1VRrw7 <https://goo.gl/1VRrw7> >> - Contributions: https://goo.gl/mh7qDG <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] >> <mailto:[email protected]>. >> To view this discussion on the web visit >> https://groups.google.com/a/apereo.org/d/msgid/cas-user/CAMY5mieAUtjrCY1UgJwF%3DBUDy_2%2B%2BMntboaea4EkH6sWQnZ6rA%40mail.gmail.com >> >> <https://groups.google.com/a/apereo.org/d/msgid/cas-user/CAMY5mieAUtjrCY1UgJwF%3DBUDy_2%2B%2BMntboaea4EkH6sWQnZ6rA%40mail.gmail.com?utm_medium=email&utm_source=footer>. > > > -- > - Website: https://apereo.github.io/cas <https://apereo.github.io/cas> > - Gitter Chatroom: https://gitter.im/apereo/cas <https://gitter.im/apereo/cas> > - List Guidelines: https://goo.gl/1VRrw7 <https://goo.gl/1VRrw7> > - Contributions: https://goo.gl/mh7qDG <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] > <mailto:[email protected]>. > To view this discussion on the web visit > https://groups.google.com/a/apereo.org/d/msgid/cas-user/F3240192-8B43-4275-92A4-44EFFCCEFCC1%40gmail.com > > <https://groups.google.com/a/apereo.org/d/msgid/cas-user/F3240192-8B43-4275-92A4-44EFFCCEFCC1%40gmail.com?utm_medium=email&utm_source=footer>. > > -- > - Website: https://apereo.github.io/cas <https://apereo.github.io/cas> > - Gitter Chatroom: https://gitter.im/apereo/cas <https://gitter.im/apereo/cas> > - List Guidelines: https://goo.gl/1VRrw7 <https://goo.gl/1VRrw7> > - Contributions: https://goo.gl/mh7qDG <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] > <mailto:[email protected]>. > To view this discussion on the web visit > https://groups.google.com/a/apereo.org/d/msgid/cas-user/CAMY5midbkPD7vFCpoQRb90zKLROcc4RQQe01uiA_3GCXo5TnWg%40mail.gmail.com > > <https://groups.google.com/a/apereo.org/d/msgid/cas-user/CAMY5midbkPD7vFCpoQRb90zKLROcc4RQQe01uiA_3GCXo5TnWg%40mail.gmail.com?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/2B4CEB0E-10CF-46AA-8D9B-A04FCA5CA2BE%40gmail.com.
