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.