Bug:  [FEATURE] : [NMI] mask pii information in connector request and response



### Feature Description

Mask pii information passed and received in the connector request and response

### Possible Implementation

Refactor all sensitive response and request fields secret

### Have you spent some time checking if this feature request has been raised before?

- [X] I checked and didn't find a similar issue

### Have you read the Contributing Guidelines?

- [X] I have read the [Contributing Guidelines](https://github.com/juspay/hyperswitch/blob/main/docs/CONTRIBUTING.md)

### Are you willing to submit a PR?

Yes, I am willing to submit a PR!
diff --git a/crates/router/src/connector/nmi/transformers.rs b/crates/router/src/connector/nmi/transformers.rs
index 2f8505522b2..efde37d8715 100644
--- a/crates/router/src/connector/nmi/transformers.rs
+++ b/crates/router/src/connector/nmi/transformers.rs
@@ -258,7 +258,7 @@ pub struct NmiCompleteRequest {
     transaction_type: TransactionType,
     security_key: Secret<String>,
     orderid: Option<String>,
-    customer_vault_id: String,
+    customer_vault_id: Secret<String>,
     email: Option<Email>,
     cardholder_auth: Option<String>,
     cavv: Option<String>,
@@ -266,8 +266,9 @@ pub struct NmiCompleteRequest {
     eci: Option<String>,
     cvv: Secret<String>,
     three_ds_version: Option<String>,
-    directory_server_id: Option<String>,
+    directory_server_id: Option<Secret<String>>,
 }
+
 #[derive(Debug, Deserialize)]
 #[serde(rename_all = "camelCase")]
 #[serde(untagged)]
@@ -292,8 +293,8 @@ pub struct NmiRedirectResponseData {
     card_holder_auth: Option<String>,
     three_ds_version: Option<String>,
     order_id: Option<String>,
-    directory_server_id: Option<String>,
-    customer_vault_id: String,
+    directory_server_id: Option<Secret<String>>,
+    customer_vault_id: Secret<String>,
 }
 
 impl TryFrom<&NmiRouterData<&types::PaymentsCompleteAuthorizeRouterData>> for NmiCompleteRequest {

## Type of Change
<!-- Put an `x` in the boxes that apply -->

- [ ] Bugfix
- [ ] New feature
- [x] Enhancement
- [x] Refactoring
- [ ] Dependency updates
- [ ] Documentation
- [ ] CI/CD

## Description
<!-- Describe your changes in detail -->
Mask pii information passed and received in the connector request and response for NMI.


## Test Case
1. Create a NMI 3ds payment
```
curl --location 'http://localhost:8080/payments' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'api-key: dev_IjTXpFN88jjlzCgq9fDoJQkxPlxCFLrX2YcbkN1XMD29aEuzJK8ew3rtsEfC1Fp6' \
--data-raw '{
  "amount": 6540,
  "currency": "PLN",
  "confirm": true,
  "business_country": "US",
  "business_label": "default",
  "amount_to_capture": 6540,
  "capture_method": "automatic",
  "customer_id": "AKS1",
  "capture_on": "2022-09-10T10:11:12Z",
  "authentication_type": "three_ds",
  "return_url": "https://hs-payments-test.netlify.app/payments",
  "email": "arjun.karthik@juspay.in",
  "name": "John Doe",
  "phone": "999999999",
  "phone_country_code": "+65",
  "description": "Its my first payment request",
  "statement_descriptor_name": "Juspay",
  "statement_descriptor_suffix": "Router",
  "payment_method": "card",
  "payment_method_type": "credit",
  "payment_method_data": {
    "card": {
      "card_number": "4111111111111111",
      "card_exp_month": "12",
      "card_exp_year": "2030",
      "card_holder_name": "joseph Doe",
      "card_cvc": "838"
    }
  },
  "billing": {
    "address": {
      "line1": "1467",
      "line2": "CA",
      "line3": "Harrison Street",
      "city": "San Fransico",
      "state": "New York",
      "zip": "94122",
      "country": "US",
      "first_name": "joseph",
      "last_name": "Doe"
    },
    "phone": {
      "number": "8056594427",
      "country_code": "+91"
    }
  },
  "browser_info": {
    "user_agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.110 Safari/537.36",
    "accept_header": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8",
    "language": "nl-NL",
    "color_depth": 24,
    "screen_height": 723,
    "screen_width": 1536,
    "time_zone": 0,
    "java_enabled": true,
    "java_script_enabled": true,
    "ip_address": "125.0.0.1"
  },
  "metadata": {
    "order_details": {
      "product_name": "Apple iphone 15",
      "quantity": 1,
      "amount": 3200,
      "account_name": "transaction_processing"
    }
  }
}'
```

2. Check if `apple_pay_payment_token`  in the `masked_response` is masked

```
curl --location '{{base_url}}/analytics/v1/connector_event_logs?type=Payment&payment_id={{payment_id}}' \
--header 'sec-ch-ua: "Not A(Brand";v="99", "Google Chrome";v="121", "Chromium";v="121"' \
--header 'sec-ch-ua-mobile: ?0' \
--header 'authorization: Bearer JWT_token' \
--header 'User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/121.0.0.0 Safari/537.36' \
--header 'Content-Type: application/json' \
--header 'Referer: https://integ.hyperswitch.io/' \
--header 'api-key: {{api-key}}' \
--header 'sec-ch-ua-platform: "macOS"'
```

Response
```
request\":\"{\\\"security_key\\\":\\\"*** alloc::string::String ***\\\",\\\"ccnumber\\\":\\\"411111**********\\\",\\\"ccexp\\\":\\\"*** alloc::string::String ***\\\",\\\"cvv\\\":\\\"*** alloc::string::String ***\\\",\\\"first_name\\\":\\\"*** alloc::string::String ***\\\",\\\"last_name\\\":\\\"*** alloc::string::String ***\\\",\\\"address1\\\":\\\"*** alloc::string::String ***\\\",\\\"address2\\\":\\\"*** alloc::string::String ***\\\",\\\"city\\\":\\\"San Fransico\\\",\\\"state\\\":\\\"*** alloc::string::String ***\\\",\\\"zip\\\":\\\"*** alloc::string::String ***\\\",\\\"country\\\":\\\"US\\\",\\\"customer_vault\\\":\\\"add_customer\\\"}\",
"masked_response\":\"{\\\"response\\\":\\\"Approved\\\",\\\"responsetext\\\":\\\"Customer Added\\\",\\\"customer_vault_id\\\":\\\"*** alloc::string::String ***\\\",\\\"response_code\\\":\\\"100\\\",\\\"transactionid\\\":\\\"\\\"}
```


## Checklist
<!-- Put an `x` in the boxes that apply -->

- [x] I formatted the code `cargo +nightly fmt --all`
- [x] I addressed lints thrown by `cargo clippy`
- [x] I reviewed the submitted code
- [ ] I added unit tests for my changes where possible
- [ ] I added a [CHANGELOG](/CHANGELOG.md) entry if applicable
