The protocol is a modified version of CAS1) protocol. The enhancement provided by Chula SSO is the application authentication. The application authentication allows the system to control which application should be allowed to use the SSO system. The workflow is provided below.
The SSO application is based on a Java EE7 Web application. In addition to Glassfish 4.1, it has been tested extensive with Tomcat 8.0 running on Java 1.8. The default database is MongoDB.
There are five servlets for the application to connect with the SSO. They are Login, Logout, ServiceValidation, activation, and forget.
End Point: /login
Method: GET/POST
Description
The login service for validating and generating TGT (session).
Parameters
Return
End Point: /logout
Method: GET/POST
Description
The logout service for killing the session.
Parameters:
Return:
End Point: /serviceValidation
Method: GET/POST
Description
Validate Ticket
Headers:
Parameters:
* ticket : ticketid for validation
Return:
{ "uid" : "0001", "username" : "demo", "gecos" : "Demo Account", "email" : "demo@example.com" "roles" : ["faculty","student"] "ouid" : {employeeid or studentid} }
{ "type" : "error", "content" : "invalid ticket/permission" }