Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
nocode:identity-link [2019/08/13 05:43]
740803864 [Set up]
nocode:identity-link [2019/08/13 11:20] (current)
740803864 [Positive response]
Line 6: Line 6:
 See chapters below for details. See chapters below for details.
  
-===== Set up =====+===== Setup =====
 At first, identity link must be prepared and sent to ADUCID Binder. ADUCID Binder accepts identity link HTTP requests at ''/​aducid-binder/​prepareIdentityLinkUpload''​. Before ADUCID Binder call, **unique identifier (aka ''​identityLinkId''​) must be generated**. This identifier is neccessary to successfully pair identity link request and response. Let's see ADUCID Binder identity link interface parameters: At first, identity link must be prepared and sent to ADUCID Binder. ADUCID Binder accepts identity link HTTP requests at ''/​aducid-binder/​prepareIdentityLinkUpload''​. Before ADUCID Binder call, **unique identifier (aka ''​identityLinkId''​) must be generated**. This identifier is neccessary to successfully pair identity link request and response. Let's see ADUCID Binder identity link interface parameters:
 ^ Name ^ Values ^ Mandatory ^ Description ^ ^ Name ^ Values ^ Mandatory ^ Description ^
Line 17: Line 17:
 | errorPage | String | No | URL to redirect after ADUCID Binder unsuccessful authentication | | errorPage | String | No | URL to redirect after ADUCID Binder unsuccessful authentication |
 | udi | String | No | if defined, security attack check is realized | | udi | String | No | if defined, security attack check is realized |
-| request | String | No | if defined, ''​syncMyIdentityLinkedUserData''​ method is called ​woth request provided ​+| request | String | No | if defined, ''​syncMyIdentityLinkedUserData''​ method is called | 
-**It is neccessary to add ''​transactionId ​''​ parameter to ''​redirectUrl''​ attribute** to successfully pair transaction ​request and response. If ''​errorPage''​ is not defined, ''​redirectUrl''​ is used in case of error. Now we can send prepared request to ''/​aducid-binder/​prepareTransactionUpload''​ and check successful ​transaction ​upload (HTTP code 200).+**It is neccessary to add ''​identityLinkId''​ parameter to ''​redirectUrl''​ attribute** to successfully pair identity link request and response. If ''​errorPage''​ is not defined, ''​redirectUrl''​ is used in case of error. Now we can send prepared request to ''/​aducid-binder/​prepareIdentityLinkUpload''​ and check successful ​identity link upload (HTTP code 200).
  
-We must also remember to provide generated ​transaction ​identifier to web view, e.g. Ajax JSON response or JSP expression language.+We must also remember to provide generated ​identity link identifier to web view, e.g. Ajax JSON response or JSP expression language.
  
-===== Transaction ​itself ===== +===== Identity link itself ===== 
-When transaction ​data are successfully uploaded, we can start transaction ​itself. It can be done with use of [[web-integration:​client-side|Client API for Web Integration]]. We only need to specify ADUCID Binder methods to serve transaction:+When identity link data are successfully uploaded, we can start identity link itself. It can be done with use of [[web-integration:​client-side|Client API for Web Integration]]. We only need to specify ​right ADUCID Binder methods to serve identity link:
  
 <code javascript>​ <code javascript>​
-aducid.setStartOperationUrl("/​aducid-binder/​transactionJson?transactionId=" + response.data);​ +aducid.setStartOperationUrl("/​aducid-binder/​identityLinkJson?identityLinkId=" + response.data);​ 
-aducid.setResultOperationUrl("/​aducid-binder/​transactionCheck");+aducid.setResultOperationUrl("/​aducid-binder/​identityLinkCheck");
 aducid.setProxyUrl("/​aducid-binder/​proxy"​);​ aducid.setProxyUrl("/​aducid-binder/​proxy"​);​
 </​code>​ </​code>​
  
-Expression ''​response.data''​ contains unique ​transaction ​identifier pushed from backend to view. After transaction ​run, user is redirected to ''​redirectUrl''​ value (or to ''​errorPage''​ if defined and error occurs).+Expression ''​response.data''​ contains unique ​identity link identifier pushed from backend to view. After identity link run, user is redirected to ''​redirectUrl''​ value (or to ''​errorPage''​ if defined and error occurs).
  
 ===== Response processing ===== ===== Response processing =====
-User is now redirected to ''​redirectUrl'',​ where we must process ​transaction ​operation result. Operation result is saved in HTTP request attributes. We try to read attribute with prefix ''​AAA_UTR_''​ with transaction ​identifier at the end. When value exists, **we must invoke base64 decoding on value** to get readable JSON response.+User is now redirected to ''​redirectUrl'',​ where we must process ​identity link operation result. Operation result is saved in HTTP request attributes. We try to read attribute with prefix ''​AAA_ULR_''​ with identity link identifier at the end. When value exists, **we must invoke base64 decoding on value** to get readable JSON response
 + 
 +There is also saved used remote AIM in HTTP attributes. It can be accessed as an attribute with prefix ''​AAA_ULR_RA_''​ with identity link identifier at the end. This value is saved as it is, it is not base64 encoded.
  
 ==== Positive response ==== ==== Positive response ====
-See [[nocode:transactions#​positive_response|Transaction supportPositive ​response]] chapter.+When identity link was successful (''​status = OK''​),​ JSON response will be: 
 + 
 +<code javascript>​ 
 +
 +  "​status":​ "​OK"​, 
 +  "​data":​ null, 
 +  "​redirect":​ null 
 +
 +</​code>​ 
 + 
 +When ''​request''​ value was used in identity link setup (e.g. ''​{"​eidProviderMethod":"​READ_EID_USER_DATA","​data":​null}''​),​ ''​data''​ will be filled in service provider ​response. ​For example: 
 + 
 +<code javascript>​ 
 +
 +  "​status":​ "​OK",​ 
 +  "​data":​ { 
 +    "​firstName":​ "​John",​ 
 +    "​firstNameApproved":​ true, 
 +    "​lastName":​ "​Green",​ 
 +    "​lastNameApproved":​ true, 
 +    "​permanentAddress":​ "​Castle Road 54, Green Town, CF72 2YD",​ 
 +    "​permanentAddressApproved":​ true, 
 +    "​identityCardNumber":​ "​ID97967588",​ 
 +    "​identityCardNumberApproved":​ true, 
 +    "​identityCardValidTo":​ "​2023-05-10",​ 
 +    "​identityCardValidToApproved":​ true, 
 +    "​birthDate":​ "​1971-10-09",​ 
 +    "​birthDateApproved":​ true, 
 +    "​deliveryAddress":​ "​Castle Road 54, Green Town, CF72 2YD",​ 
 +    "​deliveryAddressApproved":​ true, 
 +    "​telephoneNumber":​ "+44 654 987 987",​ 
 +    "​telephoneNumberApproved":​ true, 
 +    "​voter":​ true, 
 +    "​voterApproved":​ true, 
 +    "​creditCardNumber":​ "4485 5057 0701 1520",​ 
 +    "​creditCardNumberApproved":​ true, 
 +    "​creditCardValidTo":​ "​09/​2022",​ 
 +    "​creditCardValidToApproved":​ true, 
 +    "​creditCardOwner":​ "John Green",​ 
 +    "​creditCardOwnerApproved":​ true, 
 +    "​gender":​ "​male",​ 
 +    "​genderApproved":​ true, 
 +    "​email":​ "​john.green@test.com",​ 
 +    "​emailApproved":​ true, 
 +    "​approvedLF":​ true, 
 +    "​proofingStatus":​ "​APPROVED"​ 
 +  }, 
 +  "​redirect":​ null 
 +
 +</​code>​
  
 ==== Negative response ==== ==== Negative response ====
 See [[nocode:​transactions#​negative_response|Transaction support, Negative response]] chapter. See [[nocode:​transactions#​negative_response|Transaction support, Negative response]] chapter.
  
  • nocode/identity-link.1565675008.txt.gz
  • Last modified: 2019/08/13 05:43
  • by 740803864