Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Windows Communication Foundation (WCF) Services

In a .Net environment (Visual Studio 2005, - Visual Studio 2015) you can access the SAS WCF services by adding a service reference to your project. The service reference should be to the following endpoint:

...

When you create the service reference Visual Studio will create a proxy class to the SAS service that makes accessing the server very easy hiding the complexity of web service Soap messages. This proxy class will contain all the methods that are supported by the SAS server. Each method in the proxy class maps directly to the same methods in the Rest/Json interface.

REST Interface

The REST interface provides a simple and easy RESTful interface to the MFAS services. This interface is recommended for integrating the MFAS services into the following applications:

...

The REST request body is a json structure that specifies the type of action to be performed. All requests have the following common parameters:

  • 'type' – The type of request to be  performed  by the server.  The following types are supported.
  • 'username' – The username (or token for the user) that this action is to be performed on.
  • 'spAccountLoginName'  – Your SurePassId server account name
  • 'spAccountLoginKey' – Your SurePassId server account  key

 

The following 'type's are allowed:

  • 'add_u2f_account' - add user account to your account
  • 'validate_u2f_user' - authenticate the user name and password of the user. The first step in a two step authentication process
  • 'add_u2f_device' - add an additional u2f device to the user account
  • 'delete_key' - delete a specific fido u2f security key from the users account
  • 'delete_all_keys' - delete a specific fido u2f security key from the users account
  • 'validate_oath_otp' - validate a dynamic pass code send to the user. This is one possible second step in a two step process.
  • 'send_oath_otp' - send a dynamic pass code send to the user. the system will call validate_oath_otp to verify the users identity
  • 'pre_enroll' - perform the pre-enrolment process required to register as u2f device for the users account
  • 'enroll' - enroll a u2f device for the users account
  • 'pre_sign' - perform the pre-enrolment process required to register as u2f device for the users account
  • 'sign' - authenticate a u2f device for the users account

 


You can get your SurePass account credentials (server account name and key) from the the portal.  After logging in go to Settings and you will see the following page where the values are displayed

The system supports the following request api functions:


A sample REST request body is a json request and looks like this:


Code Block
languagejs
firstline1
titleRest/Json Request Example - Send Pass Code via SMS
{ 
  "type": "send_oath_otp",
  "username": "Manny",
  "spAccountLoginName": "accountname", 
  "spAccountLoginKey": "accountkey",
  "deliveryMethod": "sms"
}  

...

The REST response body is a json structure. All responses have the following items at a minimum:

 

  • type - Echo of the type that was made on the request
  • errorCode – The numeric error code for the request.  An errorCode of 0 signifies success.
  • errorMessage – The displayable  error message for the request. 

 


Code Block
languagejs
titleRest/Json Response Example - Send Pass Code
{
  "type": "send_oath_otp",
  "errorCode": 0,
  "errorMessage": "OK"
}

 

 

For example: To send a dynamic password (OTP) the user the REST request looks like this:

...