Corsair,

Try these in the CAS log4j2.xml to see what happens on that side.

        <!-- INFO  Grented ticket [...] for service [...] for user [...]
             DEBUG Resolved service [limited details about service]
                   Located registered service definition [service details] -->
        <AsyncLogger name="org.apereo.cas.DefaultCentralAuthenticationService" 
level="debug" />
        <!-- DEBUG Looking up ticket id generator for [...]
                   Attempting to encode ... [...]
                   Encoded ... [...] -->
        <AsyncLogger 
name="org.apereo.cas.ticket.factory.DefaultProxyTicketFactory" level="debug" />
        <!-- DEBUG Response code from server matched [###] may be useful for 
debugging proxy
                   Created HTTP post message payload [POST URL] on logout -->
        <AsyncLogger name="org.apereo.cas.util.http.SimpleHttpClient" 
level="error" />
        <AsyncLogger name="org.apereo.cas.web" level="debug" />

Ray

On Wed, 2018-04-18 at 06:08 -0700, Corsair Hxw wrote:
Hello,

I am using CAS Maven Overlay (version 5.2.3) to build CAS server.
The CAS server is running on http://localhost:8080/cas

I have changed POM and added dependency for json service registry:
<dependencies>
    <dependency>
        <groupId>org.apereo.cas</groupId>
        <artifactId>cas-server-support-json-service-registry</artifactId>
        <version>${cas.version}</version>
    </dependency>
</dependencies>

I have provided two service json files in /services:
greet-1.json
{
  "@class" : "org.apereo.cas.services.RegexRegisteredService",
  "serviceId" : "http://localhost:8090/greet";,
  "name" : "greet",
  "id" : 1,
  "evaluationOrder" : 1
}

user-2.json
{
  "@class" : "org.apereo.cas.services.RegexRegisteredService",
  "serviceId" : "http://localhost:8090/user";,
  "name" : "user",
  "id" : 2,
  "evaluationOrder" : 2
}

>From my web application 1, I am trying to get the proxy ticket for another web 
>application 2.
Web Application 1 Controller class is as below:
package com.learn.cas.proxyticket;

import org.jasig.cas.client.authentication.AttributePrincipal;
import org.springframework.security.cas.authentication.CasAuthenticationToken;
import org.springframework.security.core.Authentication;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class GreetingsController {

 @GetMapping("/greet")
 public String greetWithProxyTicket(Authentication authentication) {
 String proxyTicket = null;


 if (authentication != null && authentication instanceof CasAuthenticationToken 
{
     AttributePrincipal principal = ((CasAuthenticationToken) 
authentication).getAssertion().getPrincipal();

     if (principal != null) {
         proxyTicket = 
principal.getProxyTicketFor("http://localhost:8090/user";);
     }
 }

 return proxyTicket;
 }
}

Here, the returned value is always null. getProxyTicketFor always gives me null 
value.
Web application 1 pom.xml and application.yml files are attached in case they 
are needed.

Any help on this is appreciated. Stuck on this for like month now :(

Best Regards,
Corsair


--
Ray Bon
Programmer analyst
Development Services, University Systems
2507218831 | CLE 019 | [email protected]

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

Reply via email to