Hat jemand ein gültiges Beispiel für CAS -Proxy, das Ticket gewährt?
-
21-09-2019 - |
Frage
Ich muss ein CAS -Proxy implementieren, das Ticketsystem gewährt.
Also muss ich das System verstehen. Es gibt einen guten Arzt hier, aber ich habe keine Ahnung von dem Proxycallback, den ich brauche.
Könnte mir das jemand erklären?
Lösung
Der CAS wird die PGTurl aufrufen, um ein spezielles Ticket bereitzustellen, mit dem diese Anwendung neue Tickets für andere Anwendungen erwerben kann.
Dies ist das Setup in web.xml:
<servlet>
<servlet-name>casproxy</servlet-name>
<servlet-class>edu.yale.its.tp.cas.proxy.ProxyTicketReceptor</servlet-class>
<load-on-startup>2</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>casproxy</servlet-name>
<url-pattern>/casProxy/*</url-pattern>
</servlet-mapping>
Um ein neues Ticket für einen weiteren Service mit dem speziellen Ticket zu erhalten:
SecurityContext sc = SecurityContextHolder.getContext();
CasAuthenticationToken auth = (CasAuthenticationToken)sc.getAuthentication();
String pgtIOU = auth.getProxyGrantingTicketIou();
String newTicket = ProxyTicketReceptor.getProxyTicket(pgtIOU, anotherService);
Dann leiten Sie diesen Service um, der ihm das neue Ticket gibt.
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow