Difference between revisions of "Pass Through Authentication"

From AgileApps Support Wiki
imported>Aeric
m (Text replace - '<tt><nowiki>https://{domain}/networking' to '<tt>{{platformURL}}')
imported>Aeric
Line 59: Line 59:


;Method:POST  
;Method:POST  
;URI:<tt>{{platformURL}}/passThroughAuth</nowiki></tt>  
;URI:<tt>{{platformURL}}/passThroughAuth</tt>  
:<syntaxhighlight lang="xml" enclose="div">
:<syntaxhighlight lang="xml" enclose="div">
<?xml version="1.0" encoding="UTF-8" ?>
<?xml version="1.0" encoding="UTF-8" ?>

Revision as of 21:23, 30 March 2012

Pass Through Authentication (PTA) lets a user go straight to the platform from an organization's web page or application, without having to log in again.

How it Works

As part of an enterprise application, the user would like to visit a page hosted on the platform, without having to log in to the platform to see it. To accomplish that goal, the application sends a small SOAP message to the platform, in an HTTP request.

That message contains the information needed to log into the platform. Data in it is passed to an authentication server, which sends back a message saying that authentication has succeeded or failed, after which the user is directed to the appropriate page.

The URL of the Authentication Server and the URLs of the pages to visit in the event of success or failure are configured in the platform's Single Sign-On Settings.


Actions

User... Platform... Your Organization's Web Service...
1. Provides a web page or application
2. Visits the page or application
3. Clicks a link to go to a platform page
4. Passes data to the platform's PTA service in the SOAP payload
5.
  • Receives data in the SOAP payload:
  • Session ID (optional, but desirable)
  • Login ID
  • Passes data to the Authentication server
6. Receives a success- or failure-report from the Authentication Server
7. Redirects the user to the appropriate page.

Enabling Pass Through Authentication

  1. Click Settings > Administration > Single Sign-On
  2. Click the [Edit] button
  3. For Single Sign-On Settings, choose Pass Through Authentication
  4. Fill in the Pass Through Authentication Settings:
    Third party Authentication Service URL
    Location of the authentication service. The platform uses this URL to authenticate the USER, passing the appropriate pay load in the HTTP request.
    Success page URL
    The page the platform sends the user to when authentication succeeds:
    • If not specified, the default destination is the platform's home page.
    Error page URL
    The page the platform sends the user to when authentication fails:
    • If not specified, the default destination is the platform’s Login-error page.
    • Can be overridden dynamically by the Authentication Server
  5. Click [Save]

Message Formats

Initial Message Sent to the Platform

This message format needs to be delivered to the platform by the Application or web page.

Method
POST
URI
https://{yourDomain}/networking/passThroughAuth
<syntaxhighlight lang="xml" enclose="div">

<?xml version="1.0" encoding="UTF-8" ?> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Body> <LJAuthenticate xmlns="urn:authentication.soap.ws.longjump.com"> <sessionID>...</sessionID> <loginID>...</loginID> </LJAuthenticate> </soapenv:Body> </soapenv:Envelope> </syntaxhighlight>

where:

sessionID
The session ID of the user on the organization's website. Optional. It is passed on to the authentication service, so the authentication service can make use of it.
loginID
The user's login name on the platform--typically in the form of an emails address.

Messages Sent Between the Platform and Authentication Server

These message formats need to be processed and/or delivered by the Authentication Server.

Message sent from the platform to the Authentication Server
The Authentication Service reads this request and authenticates the user.
Method
POST
URI
Configured in the Single Sign-On Settings
<syntaxhighlight lang="xml" enclose="div">

<?xml version="1.0" encoding="UTF-8" ?> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Body> <LJAuthenticate xmlns="urn:authentication.soap.ws.longjump.com"> <sessionID>...</sessionID> <originatingDomain>...</originatingDomain> <originatingIp>...</originatingIp> <loginID>...</loginID> </LJAuthenticate> </soapenv:Body> </soapenv:Envelope> </syntaxhighlight>

where:
originatingDomain
Name of the Domain the request originally came from (e.g. wwww.paaspartout.com)
originatingIp
IP Address of the domain the request originally came from (e.g. 10.20.30.40)
sessionID
Passed on from the original request
loginID
Passed on from the original request
Authentication-Succeeded response
This response is sent when authentication succeeds.
<syntaxhighlight lang="xml" enclose="div">

<?xml version="1.0" encoding="UTF-8" ?> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Body> <LJAuthenticateResponse xmlns="urn:authentication.soap.ws.longjump.com"> <status>AUTHENTICATED</status> <loginID>userLogin@Login.com</loginID> </LJAuthenticateResponse> </soapenv:Body> </soapenv:Envelope> </syntaxhighlight>

Authentication-Failed response
This response is sent when authentication fails.
<syntaxhighlight lang="xml" enclose="div">

<?xml version="1.0" encoding="UTF-8" ?> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Body> <LJAuthenticateResponse xmlns="urn:authentication.soap.ws.longjump.com"> <status>NOT_AUTHETICATED</status> <loginID>userLogin@Login.com</loginID>

                       <redirectOnErrorURL>http://www.location.com/somePage</redirectOnErrorURL>

</LJAuthenticateResponse> </soapenv:Body> </soapenv:Envelope> </syntaxhighlight>

where:
redirectOnErrorURL
URL of the next page the user sees. (Overrides the Single Sign-On settings.)