Artur,

By default cas will try each of the authentication handlers until one succeeds, 
starting with the first one (0, 1, 2, ...).
I would expect that if you identify one by name, it should use that one.

Is the '3' a typo in your properties or do you have 4 authenticators?

cas.authn.ldap[1].name=rysy
...
cas.authn.ldap[3].name=ppm

Sorry I could not be more help.

Ray

On Thu, 2021-12-09 at 06:56 -0800, artur miś wrote:
Notice: This message was sent from outside the University of Victoria email 
system. Please be cautious with links and sensitive information.

I think i'm  rewriting my last post i really appologize for that folks ,  mayby 
 with better guestion.Please folks don't kill me.


env:Cas-overlay  6.3.x
At the begining i would like ask you  how cas start examine   handlers ,  is it 
  random   or detretministic way from which  handler cas start  when the  user  
post  credential to cas ?

I  dont know if  i well understood.I understood  that is deterministic way  but 
 i cannot see this  ) i have sometimes everest  sometimes rysy  after restart 
cas )  , mayby order number  in handlers  if we put in cas.propierties  that do 
this . But for serwis  how to start  examine credential  from  which handler  
we want ? . The order in cas.propierties doesnt llook like well becouse for one 
service  you want have  one order ofr te secend service  another order  so it 
is stupid probably.

I  am asking about it  becouse   if  web user / or curl api client tests 
service ,
 cas  can start examine  from  one of  the  2  handlers i have,  sometimes from 
 first hander  sometimes from second handler ( after restart cas) . I  have had 
policy lik tryALL  = false/true .   If it started from everest_365  like bellow 
  and user has right in this handler (everest_365)


I believed  that tryALL doesnt  work  if  one handler didnt given  success    
of auth for user becouse of policy.I seem i works in difrent way.

[ configuration

cas.authn.policy.source-selection-enabled=false
cas.authn.policy.required-handler-authentication-policy-enabled=true
cas.authn.policy.req.try-all=false

"authenticationPolicy": {
        "requiredAuthenticationHandlers" : ["java.util.TreeSet", [ "rysy" ]],
        "criteria": {
            "tryAll": false,
            "@class": 
"org.apereo.cas.services.AllowedAuthenticationHandlersRegisteredServiceAuthenticationPolicyCriteria"
        },
        "@class": 
"org.apereo.cas.services.DefaultRegisteredServiceAuthenticationPolicy"
    },
]
, i  this case  cas didn't try  to  examine other  handlers like rysy .,bcouse  
athentication is successed probably .  Could  anyboody confirm ? And how to 
avoid to get  deticated hander working while user has right in both handlers. 
Second  hndlerd  i would like to  use for other service.




I thing that trayALL=true/false doesnt matter. It is look like now work

For test purposes i have only 2 AD handlers : rysy ,everest_365, and 
user=kowalski.
Kowalski has right in rysy and everest_365  but  i would like to auth kowalski 
only via  rysy to service even if kowalski has right in everest_365


So How to force cas to start examination handler from rysy .I don't know even 
if it is possible nowaday .

  ____  _____    _    ______   __
 |  _ \| ____|  / \  |  _ \ \ / /
 | |_) |  _|   / _ \ | | | \ V /
 |  _ <| |___ / ___ \| |_| || |
 |_| \_\_____/_/   \_\____/ |_|

>
2021-12-09 12:29:06,575 INFO [org.apereo.cas.web.CasWebApplication] - <>
2021-12-09 12:29:06,575 INFO [org.apereo.cas.web.CasWebApplication] - <Ready to 
process requests @ [2021-12-09T12:29:06.575Z]>
2021-12-09 12:29:06,986 INFO [org.apereo.cas.services.AbstractServicesManager] 
- <Loaded [2] service(s) from [JsonServiceRegistry].>
2021-12-09 12:29:09,999 INFO 
[org.springframework.web.servlet.DispatcherServlet] - <Initializing Servlet 
'dispatcherServlet'>
2021-12-09 12:29:10,026 INFO 
[org.springframework.web.servlet.DispatcherServlet] - <Completed initialization 
in 27 ms>
2021-12-09 12:29:10,226 DEBUG 
[org.apereo.cas.authentication.PolicyBasedAuthenticationManager] - 
<Authentication credentials provided for this transaction are 
[[UsernamePasswordCredential(username=kowalski, source=null, customFields={})]]>
2021-12-09 12:29:10,229 DEBUG 
[org.apereo.cas.authentication.DefaultAuthenticationEventExecutionPlan] - 
<Candidate/Registered authentication handlers for this transaction are 
[[org.apereo.cas.authentication.handler.support.HttpBasedServiceCredentialsAuthenticationHandler@389a1e34,
 org.apereo.cas.authentication.LdapAuthenticationHandler@720c8f80, 
org.apereo.cas.authentication.LdapAuthenticationHandler@8b89b3a]]>
2021-12-09 12:29:10,229 DEBUG 
[org.apereo.cas.authentication.DefaultAuthenticationEventExecutionPlan] - 
<Authentication handler resolvers for this transaction are 
[[org.apereo.cas.authentication.handler.RegisteredServiceAuthenticationHandlerResolver@6a97517]]>
2021-12-09 12:29:10,231 DEBUG 
[org.apereo.cas.authentication.DefaultAuthenticationEventExecutionPlan] - 
<Authentication handler resolvers produced no candidate authentication handler. 
Using the default handler resolver instead...>
2021-12-09 12:29:10,232 DEBUG 
[org.apereo.cas.authentication.AuthenticationHandlerResolver] - <Default 
authentication handlers used for this transaction are 
[HttpBasedServiceCredentialsAuthenticationHandler,everest_365,rysy]>
<---
Here i dont undersand why def handlers are both  everest and rysy ?
I have only rysy  for service in "requiredAuthenticationHandlers" : 
["java.util.TreeSet", [ "rysy" ]]

2021-12-09 12:29:10,233 DEBUG 
[org.apereo.cas.authentication.DefaultAuthenticationEventExecutionPlan] - 
<Resolved and finalized authentication handlers to carry out this 
authentication transaction are 
[[org.apereo.cas.authentication.handler.RegisteredServiceAuthenticationHandlerResolver@6a97517]]>
2021-12-09 12:29:10,233 DEBUG 
[org.apereo.cas.authentication.PolicyBasedAuthenticationManager] - <Candidate 
resolved authentication handlers for this transaction are 
[[org.apereo.cas.authentication.handler.support.HttpBasedServiceCredentialsAuthenticationHandler@389a1e34,
 org.apereo.cas.authentication.LdapAuthenticationHandler@720c8f80, 
org.apereo.cas.authentication.LdapAuthenticationHandler@8b89b3a]]>
2021-12-09 12:29:10,233 DEBUG 
[org.apereo.cas.authentication.PolicyBasedAuthenticationManager] - <Attempting 
to authenticate credential [UsernamePasswordCredential(username=kowalski, 
source=null, customFields={})]>
2021-12-09 12:29:10,233 DEBUG 
[org.apereo.cas.authentication.PolicyBasedAuthenticationManager] - 
<Authentication handler [HttpBasedServiceCredentialsAuthenticationHandler] does 
not support the credential type [UsernamePasswordCredential(username=kowalski, 
source=null, customFields={})]. Trying next...>
2021-12-09 12:29:10,233 DEBUG 
[org.apereo.cas.authentication.handler.support.AbstractUsernamePasswordAuthenticationHandler]
 - <Examining credential [UsernamePasswordCredential(username=kowalski, 
source=null, customFields={})] eligibility for authentication handler 
[everest_365]>
2021-12-09 12:29:10,233 DEBUG 
[org.apereo.cas.authentication.handler.support.AbstractUsernamePasswordAuthenticationHandler]
 - <Credential [UsernamePasswordCredential(username=kowalski, source=null, 
customFields={})] eligibility is [everest_365] for authentication handler 
[true]>
2021-12-09 12:29:10,233 DEBUG 
[org.apereo.cas.authentication.PolicyBasedAuthenticationManager] - <Attempting 
authentication of [kowalski] using [everest_365]>
2021-12-09 12:29:15,421 DEBUG 
[org.apereo.cas.authentication.handler.support.AbstractUsernamePasswordAuthenticationHandler]
 - <Transforming credential username via 
[org.apereo.cas.util.transforms.ChainingPrincipalNameTransformer]>
2021-12-09 12:29:15,422 DEBUG 
[org.apereo.cas.authentication.handler.support.AbstractUsernamePasswordAuthenticationHandler]
 - <Attempting to encode credential password via 
[org.springframework.security.crypto.password.NoOpPasswordEncoder] for 
[kowalski]>
2021-12-09 12:29:15,422 DEBUG 
[org.apereo.cas.authentication.handler.support.AbstractUsernamePasswordAuthenticationHandler]
 - <Attempting authentication internally for transformed credential 
[UsernamePasswordCredential(username=kowalski, source=null, customFields={})]>
2021-12-09 12:29:15,422 DEBUG 
[org.apereo.cas.authentication.LdapAuthenticationHandler] - <Attempting LDAP 
authentication for [UsernamePasswordCredential(username=kowalski, source=null, 
customFields={})]. Authenticator pre-configured attributes are [null], 
additional requested attributes for this authentication request are 
[[sAMAccountName, displayName, givenName, otherMailbox, cn, sn]]>


2021-12-09 12:29:15,785 DEBUG 
[org.apereo.cas.authentication.policy.RequiredHandlerAuthenticationPolicyFactory]
 - <Required authentication handlers for this service [Test] are [[rysy]]>



2021-12-09 14:13:06,703 INFO 
[org.apereo.inspektr.audit.support.Slf4jLoggingAuditTrailManager] - <Audit 
trail record BEGIN
=============================================================
WHO: kowalski
WHAT: https://example.org/pz
ACTION: SERVICE_TICKET_NOT_CREATED
APPLICATION: CAS
WHEN: Thu Dec 09 14:13:06 GMT 2021
CLIENT IP ADDRESS: ******
SERVER IP ADDRESS: ******
=============================================================

>
2021-12-09 14:13:06,704 INFO 
[org.apereo.inspektr.audit.support.Slf4jLoggingAuditTrailManager] - <Audit 
trail record BEGIN
=============================================================
WHO: kowalski
WHAT: org.apereo.cas.ticket.UnsatisfiedAuthenticationPolicyException
ACTION: REST_API_SERVICE_TICKET_FAILED
APPLICATION: CAS
WHEN: Thu Dec 09 14:13:06 GMT 2021
CLIENT IP ADDRESS: *****
SERVER IP ADDRESS: *****
=============================================================

>
2021-12-09 14:13:06,705 ERROR 
[org.apereo.cas.support.rest.resources.ServiceTicketResource] - 
<UnsatisfiedAuthenticationPolicyException>
org.apereo.cas.ticket.UnsatisfiedAuthenticationPolicyException: null
        at 
org.apereo.cas.AbstractCentralAuthenticationService.getAuthenticationSatisfiedByPolicy(AbstractCentralAuthenticationService.java:184)
 ~[cas-server-core-6.3.2.jar!/:6.3.2]
        at 
org.apereo.cas.DefaultCentralAuthenticationService.grantServiceTicket(DefaultCentralAuthenticationService.java:109)
 ~[cas-server-core-6.3.2.jar!/:6.3.2]
        at 
org.apereo.cas.DefaultCentralAuthenticationService$$FastClassBySpringCGLIB$$b02e48f2.invoke(<generated>)
 ~[cas-server-core-6.3.2.jar!/:6.3.2]
        at 
org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218) 
~[spring-core-5.2.12.RELEASE.jar!/:5.2.12.RELEASE]
        at 
org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:771)
 ~[spring-aop-5.2.12.RELEASE.jar!/:5.2.12.RELEASE]
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)
 ~[spring-aop-5.2.12.RELEASE.jar!/:5.2.12.RELEASE]
etc
Regards.



--

Ray Bon
Programmer Analyst
Development Services, University Systems
2507218831 | CLE 019 | [email protected]<mailto:[email protected]>

I acknowledge and respect the lək̓ʷəŋən peoples on whose traditional territory 
the university stands, and the Songhees, Esquimalt and WSÁNEĆ peoples whose 
historical relationships with the land continue to this day.

-- 
- 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/3c2cccf657f1791490198488e17aeb0eb8578a69.camel%40uvic.ca.

Reply via email to