Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[ML Bulk] Invalid dfsp name in header or body does not return any error #2800

Closed
elnyry-sam-k opened this issue Jul 1, 2022 · 1 comment
Closed
Assignees
Labels
bug Something isn't working or it has wrong behavior on a Mojaloop Core service core-dev-squad oss-bulk Mojaloop bulk implementation and support oss-core This is an issue - story or epic related to a feature on a Mojaloop core service or related to it
Milestone

Comments

@elnyry-sam-k
Copy link
Member

Summary:
When using Bulktransfers and attempt to use an unknown dfsp name in the header or in the request body gives no error or failure message

Severity:
Medium

Priority:
Critical

Expected Behavior

  1. When an invalid FSP is used in headers or body an error callback is sent after validation

Steps to Reproduce

  1. Request for Bulktransfer using invalid DFSP name in headers or message body
  2. Wait for response / callback

Request for Bulktransfer using invalid DFSP name in headers:

curl 'http://moja-bulk-api-adapter-service/bulkTransfers'
 -H 'content-type: application/vnd.interoperability.bulkTransfers+json;version=1.1'
  -H 'accept: application/vnd.interoperability.bulkTransfers+json;version=1.1' 
  -H 'date: Fri, 24 Jun 2022 03:34:30 GMT' 
  -H 'fspiop-source: testingtoolkitdfsp' 
  -H 'fspiop-destination: DUMMY' 
  -H 'traceparent: 00-aabb7de40f9dbc9d82e5b5807feb7320-0123456789abcdef0-00' -H 'user-agent: axios/0.21.4' --data-binary 
  '{"bulkTransferId":"8e8a048f-619e-4192-888b-371ffd891c1c",
  "bulkQuoteId":"266cef58-44b7-410d-b489-65bad94295ea",
  "payeeFsp":"payeefsp",
  "payerFsp":"testingtoolkitdfsp",
  "individualTransfers":[{"transferId":"26bbca82-0703-4251-8ab0-873fceb4a24e","transferAmount":{"currency":"EUR","amount":"1"},"ilpPacket":"AYIC9AAAAAAAABdwHWcucGF5ZWVmc3AubXNpc2RuLjIyNTU2OTk5MTI1ggLKZXlKMGNtRnVjMkZqZEdsdmJrbGtJam9pWmpRMFltUmtOV010WXpreE1DMDBZVGt3TFRoa05qa3RaR0ppWVRaaVl6aGxZVFpqSWl3aWNYVnZkR1ZKWkNJNklqVTBaRFZtTURsaUxXRTBOMlF0TkRCa05pMWhZVEEzTFdFNVkyWXpZbUl5TkRsaFpDSXNJbkJoZVdWbElqcDdJbkJoY25SNVNXUkpibVp2SWpwN0luQmhjblI1U1dSVWVYQmxJam9pVFZOSlUwUk9JaXdpY0dGeWRIbEpaR1Z1ZEdsbWFXVnlJam9pTWpJMU5UWTVPVGt4TWpVaUxDSm1jM0JKWkNJNkluQmhlV1ZsWm5Od0luMTlMQ0p3WVhsbGNpSTZleUp3WVhKMGVVbGtTVzVtYnlJNmV5SndZWEowZVVsa1ZIbHdaU0k2SWsxVFNWTkVUaUlzSW5CaGNuUjVTV1JsYm5ScFptbGxjaUk2SWpJeU5UQTNNREE0TVRneElpd2labk53U1dRaU9pSndZWGxsY21aemNDSjlMQ0p3WlhKemIyNWhiRWx1Wm04aU9uc2lZMjl0Y0d4bGVFNWhiV1VpT25zaVptbHljM1JPWVcxbElqb2lUV0YwY3lJc0lteGhjM1JPWVcxbElqb2lTR0ZuYldGdUluMHNJbVJoZEdWUFprSnBjblJvSWpvaU1UazRNeTB4TUMweU5TSjlmU3dpWVcxdmRXNTBJanA3SW1GdGIzVnVkQ0k2SWpZd0lpd2lZM1Z5Y21WdVkza2lPaUpWVTBRaWZTd2lkSEpoYm5OaFkzUnBiMjVVZVhCbElqcDdJbk5qWlc1aGNtbHZJam9pVkZKQlRsTkdSVklpTENKcGJtbDBhV0YwYjNJaU9pSlFRVmxGVWlJc0ltbHVhWFJwWVhSdmNsUjVjR1VpT2lKRFQwNVRWVTFGVWlKOWZRAA","condition":"kPLCKM62VY2jbekuw3apCTBg5zk_mVs9DD8-XpljQms","extensionList":{"extension":[{"key":"extKey1","value":"extValue1"},{"key":"extKey2","value":"extValue2"}]}},{"transferId":"f13c4ff0-a003-48a2-80db-52b774573598","transferAmount":{"currency":"GBP","amount":"2"},"ilpPacket":"AYIC9AAAAAAAABdwHWcucGF5ZWVmc3AubXNpc2RuLjIyNTU2OTk5MTI1ggLKZXlKMGNtRnVjMkZqZEdsdmJrbGtJam9pWmpRMFltUmtOV010WXpreE1DMDBZVGt3TFRoa05qa3RaR0ppWVRaaVl6aGxZVFpqSWl3aWNYVnZkR1ZKWkNJNklqVTBaRFZtTURsaUxXRTBOMlF0TkRCa05pMWhZVEEzTFdFNVkyWXpZbUl5TkRsaFpDSXNJbkJoZVdWbElqcDdJbkJoY25SNVNXUkpibVp2SWpwN0luQmhjblI1U1dSVWVYQmxJam9pVFZOSlUwUk9JaXdpY0dGeWRIbEpaR1Z1ZEdsbWFXVnlJam9pTWpJMU5UWTVPVGt4TWpVaUxDSm1jM0JKWkNJNkluQmhlV1ZsWm5Od0luMTlMQ0p3WVhsbGNpSTZleUp3WVhKMGVVbGtTVzVtYnlJNmV5SndZWEowZVVsa1ZIbHdaU0k2SWsxVFNWTkVUaUlzSW5CaGNuUjVTV1JsYm5ScFptbGxjaUk2SWpJeU5UQTNNREE0TVRneElpd2labk53U1dRaU9pSndZWGxsY21aemNDSjlMQ0p3WlhKemIyNWhiRWx1Wm04aU9uc2lZMjl0Y0d4bGVFNWhiV1VpT25zaVptbHljM1JPWVcxbElqb2lUV0YwY3lJc0lteGhjM1JPWVcxbElqb2lTR0ZuYldGdUluMHNJbVJoZEdWUFprSnBjblJvSWpvaU1UazRNeTB4TUMweU5TSjlmU3dpWVcxdmRXNTBJanA3SW1GdGIzVnVkQ0k2SWpZd0lpd2lZM1Z5Y21WdVkza2lPaUpWVTBRaWZTd2lkSEpoYm5OaFkzUnBiMjVVZVhCbElqcDdJbk5qWlc1aGNtbHZJam9pVkZKQlRsTkdSVklpTENKcGJtbDBhV0YwYjNJaU9pSlFRVmxGVWlJc0ltbHVhWFJwWVhSdmNsUjVjR1VpT2lKRFQwNVRWVTFGVWlKOWZRAA","condition":"kPLCKM62VY2jbekuw3apCTBg5zk_mVs9DD8-XpljQms"}],"expiration":"2022-06-25T03:34:30.408Z"}' --compressed

OR

Request for Bulktransfer using invalid DFSP name in body

curl 'http://moja-bulk-api-adapter-service/bulkTransfers'
 -H 'content-type: application/vnd.interoperability.bulkTransfers+json;version=1.1'
 -H 'accept: application/vnd.interoperability.bulkTransfers+json;version=1.1'
 -H 'date: Fri, 24 Jun 2022 03:34:10 GMT'
 -H 'fspiop-source: testingtoolkitdfsp'
 -H 'fspiop-destination: payeefsp' 
 -H 'traceparent: 00-aabb7de40f9dbc9d82e5b5807feb7320-0123456789abcdef0-00' 
 -H 'user-agent: axios/0.21.4' --data-binary '
 {"bulkTransferId":"14200114-8558-4814-82a3-e2f261fb8bd3",
 "bulkQuoteId":"495b8d1a-516d-447a-b89d-bc6bdad2c8f6",
 "payeeFsp":"DUMMY",
 "payerFsp":"testingtoolkitdfsp",
 "individualTransfers":[{"transferId":"1b4b1ad7-8a99-4a0a-b6d2-2a38bc1d8dfb","transferAmount":{"currency":"EUR","amount":"1"},"ilpPacket":"AYIC9AAAAAAAABdwHWcucGF5ZWVmc3AubXNpc2RuLjIyNTU2OTk5MTI1ggLKZXlKMGNtRnVjMkZqZEdsdmJrbGtJam9pWmpRMFltUmtOV010WXpreE1DMDBZVGt3TFRoa05qa3RaR0ppWVRaaVl6aGxZVFpqSWl3aWNYVnZkR1ZKWkNJNklqVTBaRFZtTURsaUxXRTBOMlF0TkRCa05pMWhZVEEzTFdFNVkyWXpZbUl5TkRsaFpDSXNJbkJoZVdWbElqcDdJbkJoY25SNVNXUkpibVp2SWpwN0luQmhjblI1U1dSVWVYQmxJam9pVFZOSlUwUk9JaXdpY0dGeWRIbEpaR1Z1ZEdsbWFXVnlJam9pTWpJMU5UWTVPVGt4TWpVaUxDSm1jM0JKWkNJNkluQmhlV1ZsWm5Od0luMTlMQ0p3WVhsbGNpSTZleUp3WVhKMGVVbGtTVzVtYnlJNmV5SndZWEowZVVsa1ZIbHdaU0k2SWsxVFNWTkVUaUlzSW5CaGNuUjVTV1JsYm5ScFptbGxjaUk2SWpJeU5UQTNNREE0TVRneElpd2labk53U1dRaU9pSndZWGxsY21aemNDSjlMQ0p3WlhKemIyNWhiRWx1Wm04aU9uc2lZMjl0Y0d4bGVFNWhiV1VpT25zaVptbHljM1JPWVcxbElqb2lUV0YwY3lJc0lteGhjM1JPWVcxbElqb2lTR0ZuYldGdUluMHNJbVJoZEdWUFprSnBjblJvSWpvaU1UazRNeTB4TUMweU5TSjlmU3dpWVcxdmRXNTBJanA3SW1GdGIzVnVkQ0k2SWpZd0lpd2lZM1Z5Y21WdVkza2lPaUpWVTBRaWZTd2lkSEpoYm5OaFkzUnBiMjVVZVhCbElqcDdJbk5qWlc1aGNtbHZJam9pVkZKQlRsTkdSVklpTENKcGJtbDBhV0YwYjNJaU9pSlFRVmxGVWlJc0ltbHVhWFJwWVhSdmNsUjVjR1VpT2lKRFQwNVRWVTFGVWlKOWZRAA","condition":"kPLCKM62VY2jbekuw3apCTBg5zk_mVs9DD8-XpljQms","extensionList":{"extension":[{"key":"extKey1","value":"extValue1"},{"key":"extKey2","value":"extValue2"}]}},{"transferId":"cd6c45f1-1a7c-40e6-8698-e58ab5218d08","transferAmount":{"currency":"GBP","amount":"2"},"ilpPacket":"AYIC9AAAAAAAABdwHWcucGF5ZWVmc3AubXNpc2RuLjIyNTU2OTk5MTI1ggLKZXlKMGNtRnVjMkZqZEdsdmJrbGtJam9pWmpRMFltUmtOV010WXpreE1DMDBZVGt3TFRoa05qa3RaR0ppWVRaaVl6aGxZVFpqSWl3aWNYVnZkR1ZKWkNJNklqVTBaRFZtTURsaUxXRTBOMlF0TkRCa05pMWhZVEEzTFdFNVkyWXpZbUl5TkRsaFpDSXNJbkJoZVdWbElqcDdJbkJoY25SNVNXUkpibVp2SWpwN0luQmhjblI1U1dSVWVYQmxJam9pVFZOSlUwUk9JaXdpY0dGeWRIbEpaR1Z1ZEdsbWFXVnlJam9pTWpJMU5UWTVPVGt4TWpVaUxDSm1jM0JKWkNJNkluQmhlV1ZsWm5Od0luMTlMQ0p3WVhsbGNpSTZleUp3WVhKMGVVbGtTVzVtYnlJNmV5SndZWEowZVVsa1ZIbHdaU0k2SWsxVFNWTkVUaUlzSW5CaGNuUjVTV1JsYm5ScFptbGxjaUk2SWpJeU5UQTNNREE0TVRneElpd2labk53U1dRaU9pSndZWGxsY21aemNDSjlMQ0p3WlhKemIyNWhiRWx1Wm04aU9uc2lZMjl0Y0d4bGVFNWhiV1VpT25zaVptbHljM1JPWVcxbElqb2lUV0YwY3lJc0lteGhjM1JPWVcxbElqb2lTR0ZuYldGdUluMHNJbVJoZEdWUFprSnBjblJvSWpvaU1UazRNeTB4TUMweU5TSjlmU3dpWVcxdmRXNTBJanA3SW1GdGIzVnVkQ0k2SWpZd0lpd2lZM1Z5Y21WdVkza2lPaUpWVTBRaWZTd2lkSEpoYm5OaFkzUnBiMjVVZVhCbElqcDdJbk5qWlc1aGNtbHZJam9pVkZKQlRsTkdSVklpTENKcGJtbDBhV0YwYjNJaU9pSlFRVmxGVWlJc0ltbHVhWFJwWVhSdmNsUjVjR1VpT2lKRFQwNVRWVTFGVWlKOWZRAA","condition":"kPLCKM62VY2jbekuw3apCTBg5zk_mVs9DD8-XpljQms"}],"expiration":"2022-06-25T03:34:10.386Z"}' --compressed

Specifications

  • Component (if known): Bulk services
  • Version: Mojaloop v13.1.1
  • Platform: AWS
  • Subsystem: Bulk processing (bulk prepare)
  • Type of testing: Functional (using TTK)
  • Bug found/raised by: Emerson P

Notes:

  • Severity when opened: Medium
  • Priority when opened: Critical

Notes:
The is the behavior when we send an invalid dfsp name in the headers for single transfers

Transfer request when using invalid dfsp name in header

curl 'http://moja-ml-api-adapter-service/transfers' 
-H 'content-type: application/vnd.interoperability.transfers+json;version=1.1' 
-H 'accept: application/vnd.interoperability.transfers+json;version=1.1' 
-H 'date: Fri, 24 Jun 2022 03:44:34 GMT' 
-H 'fspiop-source: DUMMY' 
-H 'authorization: {$inputs.TTK_BEARER_TOKEN}' 
-H 'traceparent: 00-aabb7de40f9dbc9d82e5b5807feb6921-0123456789abcdef0-00' 
-H 'user-agent: axios/0.21.4' --data-binary 
'{"transferId":"87a0409d-3a06-469a-b2c4-f97f307a53dc",
"payerFsp":"testingtoolkitdfsp",
"payeeFsp":"payeefsp",
"amount":
{"amount":"100",
"currency":"EUR"},
"expiration":"2022-06-24T03:45:34.688Z",
"ilpPacket":"AYIDGQAAAAAAACcQHWcucGF5ZWVmc3AubXNpc2RuLjI3NzEzODAzOTEyggLvZXlKMGNtRnVjMkZqZEdsdmJrbGtJam9pT0RkaE1EUXdPV1F0TTJFd05pMDBOamxoTFdJeVl6UXRaamszWmpNd04yRTFNMlJqSWl3aWNYVnZkR1ZKWkNJNklqWmpPRGhrTTJWakxUZzJNRGd0TkdZMVlpMWhNRFEwTFRFeU1HWmhPVEkxT1dSaFppSXNJbkJoZVdWbElqcDdJbkJoY25SNVNXUkpibVp2SWpwN0luQmhjblI1U1dSVWVYQmxJam9pVFZOSlUwUk9JaXdpY0dGeWRIbEpaR1Z1ZEdsbWFXVnlJam9pTWpjM01UTTRNRE01TVRJaUxDSm1jM0JKWkNJNkluQmhlV1ZsWm5Od0luMTlMQ0p3WVhsbGNpSTZleUp3WVhKMGVVbGtTVzVtYnlJNmV5SndZWEowZVVsa1ZIbHdaU0k2SWsxVFNWTkVUaUlzSW5CaGNuUjVTV1JsYm5ScFptbGxjaUk2SWpRME1USXpORFUyTnpnNUlpd2labk53U1dRaU9pSjBaWE4wYVc1bmRHOXZiR3RwZEdSbWMzQWlmU3dpY0dWeWMyOXVZV3hKYm1adklqcDdJbU52YlhCc1pYaE9ZVzFsSWpwN0ltWnBjbk4wVG1GdFpTSTZJa1pwY25OMGJtRnRaUzFVWlhOMElpd2liR0Z6ZEU1aGJXVWlPaUpNWVhOMGJtRnRaUzFVWlhOMEluMHNJbVJoZEdWUFprSnBjblJvSWpvaU1UazROQzB3TVMwd01TSjlmU3dpWVcxdmRXNTBJanA3SW1GdGIzVnVkQ0k2SWpFd01DSXNJbU4xY25KbGJtTjVJam9pUlZWU0luMHNJblJ5WVc1ellXTjBhVzl1Vkhsd1pTSTZleUp6WTJWdVlYSnBieUk2SWxSU1FVNVRSa1ZTSWl3aWFXNXBkR2xoZEc5eUlqb2lVRUZaUlZJaUxDSnBibWwwYVdGMGIzSlVlWEJsSWpvaVEwOU9VMVZOUlZJaWZYMAA",
"condition":"1lUfPxcBGOcCp3UORWQAuZv0p8osLCPHWQFias0DcZ4"}' --compressed

Response contains an error when using invalid dfsp name in header

{
  "url": "put /transfers/87a0409d-3a06-469a-b2c4-f97f307a53dc/error",
  "headers": {
    "content-type": "application/vnd.interoperability.transfers+json;version=1.1",
    "date": "Fri, 24 Jun 2022 03:44:34 GMT",
    "authorization": "{$inputs.TTK_BEARER_TOKEN}",
    "traceparent": "00-aabb7de40f9dbc9d82e5b5807feb6921-b699a926e988e4c8-30",
    "user-agent": "axios/0.21.4",
    "connection": "keep-alive",
    "fspiop-http-method": "PUT",
    "fspiop-uri": "/transfers/87a0409d-3a06-469a-b2c4-f97f307a53dc/error",
    "fspiop-source": "switch",
    "fspiop-destination": "testingtoolkitdfsp",
    "fspiop-signature": "{\"signature\":\"vgI-5YlGYi_Y_bVKExlMCcMj8JgrESxPnwv9-EdDOHaejvjAepU7qaDtZbGixzNOjFMTUMWPgmnSBjNHy9iR5ep9W1UWpyXoA6AQQ6TQJpWjOqJvVDGWD65_ucUwUjgmcma6gyIkFDBAbRR0nn_cxKjP9u4g5pyZNdhsHYukg40eOlkVLDl81PDGWLxkpf8Xo6u7g758W1VsQamFkofrwrsRVX8onlvPwNpkfQdmn_ZnKhe4T_z2oGANsbWuP_WFP0h1hJgium-NDRCzI7Tbgfj1j_H05CkIPrt4PPH5f4wSiExStq-JkJmKgZ62tnXEePiJzlVgtunIV1QwS1DqegAZMTdSDae68Attk_50K3b5LCTdoBkKw7TcGMOlMOULbHM6V2LP-g0kBBSN7uHCY-wcJ7UeztISWoHXx4phpOeMSG2Or31v1yBrVRpbYeDkOHjNYlWBFolQCYPN5TuotG5Pvy2HdKkUouA8QkXf-Csf9zc7OaUiVtT7FtJ3vrTQOZlPBTYXZL0NcrPXgzO-x94qXXaNODybnagl4QlhEK4SzWuwjdrshK5XRiO2rgj5yeelNsUAk8pSoAAuJMuBF__T2mK0MYncZAGR70eJmdFkAHaMa1w3YNSfgM0gZPX-7scwwF4vkjB2IPXfNLhl7zjGbHRchD3go6g2GwubX7E\",\"protectedHeader\":\"eyJhbGciOiJSUzI1NiIsIkZTUElPUC1VUkkiOiIvdHJhbnNmZXJzLzg3YTA0MDlkLTNhMDYtNDY5YS1iMmM0LWY5N2YzMDdhNTNkYy9lcnJvciIsIkZTUElPUC1IVFRQLU1ldGhvZCI6IlBVVCIsIkZTUElPUC1Tb3VyY2UiOiJzd2l0Y2giLCJGU1BJT1AtRGVzdGluYXRpb24iOiJ0ZXN0aW5ndG9vbGtpdGRmc3AiLCJEYXRlIjoiRnJpLCAyNCBKdW4gMjAyMiAwMzo0NDozNCBHTVQifQ\"}",
    "tracestate": "mojaloop=eyJzcGFuSWQiOiJiNjk5YTkyNmU5ODhlNGM4IiwidGltZUFwaVByZXBhcmUiOiIxNjU2MDQyMjc0ODAzIn0=",
    "content-length": "129",
    "host": "moja-ml-testing-toolkit-backend:5000"
  },
  "body": {
    "errorInformation": {
      "errorCode": "3100",
      "errorDescription": "Generic validation error - FSPIOP-Source header should match Payer"
    }
  }
}

Response is empty when using invalid dfsp name in body (same as in the Bulktransfer)

invalid-dfsp-name-header-body-bulk-transfer.txt

@elnyry-sam-k elnyry-sam-k added bug Something isn't working or it has wrong behavior on a Mojaloop Core service oss-core This is an issue - story or epic related to a feature on a Mojaloop core service or related to it oss-bulk Mojaloop bulk implementation and support core-dev-squad labels Jul 1, 2022
@kleyow kleyow self-assigned this Jul 21, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working or it has wrong behavior on a Mojaloop Core service core-dev-squad oss-bulk Mojaloop bulk implementation and support oss-core This is an issue - story or epic related to a feature on a Mojaloop core service or related to it
Projects
None yet
Development

No branches or pull requests

2 participants