The NDM Simulator allows external configuration of the simulated Authentication response and Results request per account number.
Possible types of Authentication Responses are listed below:
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 | public enum AuthenticationResponseTypeEnum { /** * Authenticated application frictionless authentication response. */ AUTHENTICATED_APPLICATION_FRICTIONLESS, /** * Not authenticated application frictionless authentication response. */ NOT_AUTHENTICATED_APPLICATION_FRICTIONLESS, /** * Invalid application frictionless authentication response with missing sdkTransId. */ APPLICATION_FRICTIONLESS_MISSING_SDK_TRANS_ID, /** * Application challenge authentication response. */ APPLICATION_CHALLENGE, /** * Invalid application challenge authentication response with sdkTransId having invalid format. */ APPLICATION_CHALLENGE_SDK_TRANS_ID_INVALID_FORMAT, /** * Authenticated browser frictionless authentication response. */ AUTHENTICATED_BROWSER_FRICTIONLESS, /** * Not authenticated browser frictionless authentication response. */ NOT_AUTHENTICATED_BROWSER_FRICTIONLESS, /** * Invalid browser frictionless authentication response with missing dsTransId. */ BROWSER_FRICTIONLESS_MISSING_DS_TRANS_ID, /** * Browser challenge authentication response. */ BROWSER_CHALLENGE, /** * Invalid browser challenge authentication response with missing acsURL. */ BROWSER_CHALLENGE_MISSING_ACS_URL, /** * 3RI authentication response. */ THREE_RI, /** * Protocol error. */ PROTOCOL_ERROR } |
Possible types of Results Request are listed below:
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | public enum ResultsRequestTypeEnum { /** * Results request indicating authenticated transaction. */ AUTHENTICATED_TRANSACTION, /** * Invalid results request indicating authenticated transaction. */ AUTHENTICATED_TRANSACTION_MISSING_AUTHENTICATION_VALUE, /** * Results request indicating not authenticated transaction. */ NOT_AUTHENTICATED_TRANSACTION, /** * Protocol error. */ PROTOCOL_ERROR } |
In order to configure the type of Authentication response and Results Request per account number, use the cardholder-numbers-simulated-message-types.properties configuration file in the $NDM_SIMULATOR_HOME/conf. An example on how to configure it is listed below:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | threedsdemo.cardholderNumbersSimulatedMessageTypes.num4000001000000000.aRes =AUTHENTICATED_APPLICATION_FRICTIONLESS threedsdemo.cardholderNumbersSimulatedMessageTypes.num4000001000000001.aRes =NOT_AUTHENTICATED_APPLICATION_FRICTIONLESS threedsdemo.cardholderNumbersSimulatedMessageTypes.num4000001000000002.aRes =APPLICATION_FRICTIONLESS_MISSING_SDK_TRANS_ID threedsdemo.cardholderNumbersSimulatedMessageTypes.num4000001000000003.aRes =APPLICATION_CHALLENGE threedsdemo.cardholderNumbersSimulatedMessageTypes.num4000001000000004.aRes =APPLICATION_CHALLENGE_SDK_TRANS_ID_INVALID_FORMAT threedsdemo.cardholderNumbersSimulatedMessageTypes.num4000001000000005.aRes =AUTHENTICATED_BROWSER_FRICTIONLESS threedsdemo.cardholderNumbersSimulatedMessageTypes.num4000001000000006.aRes =NOT_AUTHENTICATED_BROWSER_FRICTIONLESS threedsdemo.cardholderNumbersSimulatedMessageTypes.num4000001000000007.aRes =BROWSER_FRICTIONLESS_MISSING_DS_TRANS_ID threedsdemo.cardholderNumbersSimulatedMessageTypes.num4000001000000008.aRes =BROWSER_CHALLENGE threedsdemo.cardholderNumbersSimulatedMessageTypes.num4000001000000009.aRes =BROWSER_CHALLENGE_MISSING_ACS_URL threedsdemo.cardholderNumbersSimulatedMessageTypes.num4000001000000010.aRes =THREE_RI threedsdemo.cardholderNumbersSimulatedMessageTypes.num4000001000000011.aRes =PROTOCOL_ERROR threedsdemo.cardholderNumbersSimulatedMessageTypes.num4000001000000000.rReq =AUTHENTICATED_TRANSACTION threedsdemo.cardholderNumbersSimulatedMessageTypes.num4000001000000001.rReq =AUTHENTICATED_TRANSACTION_MISSING_AUTHENTICATION_VALUE threedsdemo.cardholderNumbersSimulatedMessageTypes.num4000001000000002.rReq =NOT_AUTHENTICATED_TRANSACTION threedsdemo.cardholderNumbersSimulatedMessageTypes.num4000001000000003.rReq =PROTOCOL_ERROR threedsdemo.cardholderNumbersSimulatedMessageTypes.num4916486411972975.aRes =BROWSER_CHALLENGE threedsdemo.cardholderNumbersSimulatedMessageTypes.num7654310438720050.rReq =AUTHENTICATED_TRANSACTION |
The NDM Simulator allows external configuration of the Preparation response card ranges data used when simulating a Directory Server.
Each card range is configured in a separate row following the order of the message fields:
The fields values are separated with comma, and are defined in that specific order.
Once the card ranges are configured a preparation response including them will be returned on the following endpoint:
An example configuration file on how to configure it exists in the $NDM_SIMULATOR_HOME/conf under the name simulated-card-range-data.properties and it is also listed below:
1 2 3 4 5 6 | #startRange,endRange,actionInd,acsStartProtocolVersion,acsEndProtocolVersion,dsStartProtocolVersion,dsEndProtocolVersion threedsdemo.simulated-card-range-data.ranges[0] =4000000000000000,4000001999999999,A,2.1.0,2.1.0,2.1.0,2.1.0 threedsdemo.simulated-card-range-data.ranges[1] =4000003000000000,4000003999999999,A,2.1.0,2.1.0,2.1.0,2.1.0 threedsdemo.simulated-card-range-data.ranges[2] =4000007000000000,4000007999999999,A,2.1.0,2.1.0,2.1.0,2.1.0 threedsdemo.simulated-card-range-data.ranges[3] =5000001000000000,5000007999999999,A,2.1.0,2.1.0,2.1.0,2.1.0 threedsdemo.simulated-card-range-data.ranges[4] =1000000000000000,1999999999999999,R,2.1.0,2.1.0,2.1.0,2.1.0 |
The NDM Simulator allows configuration of the Results Request sent when simulating an ACS for Challenge flow.
Each request is configured in a separate row following the order of the message fields:
The fields values are separated with comma, and are defined in that specific order.
Once the responses are configured, the cardholder can use the configured OTP values for simulating a RReq message.
An example configuration file on how to configure it exists in the $NDM_SIMULATOR_HOME/conf under the name simulated-otp-responses.properties and it is also listed below:
1 2 3 4 5 6 | #otpValue,transStatus,transStatusReason,eci,authenticationValue threedsdemo.simulated-otp-responses.responses[0] =1234,Y,,01,JAmi21makAifmwqo2120cjq1AAA= threedsdemo.simulated-otp-responses.responses[1] =1111,N,01,01, threedsdemo.simulated-otp-responses.responses[2] =2222,R,01,01, threedsdemo.simulated-otp-responses.responses[3] =3333,U,01,01, threedsdemo.simulated-otp-responses.responses[4] =4444,A,01,01,Qm181okmdyqh6yQmYuq1890QAAA= |