-
Notifications
You must be signed in to change notification settings - Fork 4.6k
feat(authentication): add domain models for authentication and support kafka filters in dashboard #10446
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
Open
sahkal
wants to merge
15
commits into
main
Choose a base branch
from
12194-add-domain-models-for-authentication-and-support-kafka-filters
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
feat(authentication): add domain models for authentication and support kafka filters in dashboard #10446
sahkal
wants to merge
15
commits into
main
from
12194-add-domain-models-for-authentication-and-support-kafka-filters
+2,097
−526
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #10446 +/- ##
=======================================
Coverage ? 6.44%
=======================================
Files ? 1252
Lines ? 313428
Branches ? 0
=======================================
Hits ? 20205
Misses ? 293223
Partials ? 0 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
…fka event log push
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
A-Analytics
A-core
Area: Core flows
authentication
C-feature
Category: Feature request or enhancement
M-api-contract-changes
Metadata: This PR involves API contract changes
M-database-changes
Metadata: This PR involves database schema changes
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Type of Change
Description
add domain models for authentication and support kafka filters in dashboard
Additional Changes
Motivation and Context
Currently when we are doing external authentication we are not pushing event to kafka since domain_models for authentication was missing
Added
DeviceDetailstoSdkInformationpub struct SdkInformation { /// Unique ID created on installations of the 3DS Requestor App on a Consumer Device pub sdk_app_id: String, /// JWE Object containing data encrypted by the SDK for the DS to decrypt pub sdk_enc_data: String, /// Public key component of the ephemeral key pair generated by the 3DS SDK pub sdk_ephem_pub_key: HashMap<String, String>, /// Unique transaction identifier assigned by the 3DS SDK pub sdk_trans_id: String, /// Identifies the vendor and version for the 3DS SDK that is integrated in a 3DS Requestor App pub sdk_reference_number: String, /// Indicates maximum amount of time in minutes pub sdk_max_timeout: u8, /// Indicates the type of 3DS SDK pub sdk_type: Option<SdkType>, /// Device details for collecting Device information pub device_details: Option<DeviceDetails>, } /// Device details for collecting Device information #[derive(Serialize, Deserialize, Debug, Clone, ToSchema)] pub struct DeviceDetails { /// Device type pub device_type: Option<String>, /// Device brand pub device_brand: Option<String>, /// Device OS pub device_os: Option<String>, /// Device display pub device_display: Option<String>, }Added
error_messagetoPaymentsExternalAuthenticationResponsepub struct PaymentsExternalAuthenticationResponse { /// Indicates the transaction status #[serde(rename = "trans_status")] #[schema(value_type = TransactionStatus)] pub transaction_status: common_enums::TransactionStatus, /// Access Server URL to be used for challenge submission pub acs_url: Option<String>, /// Challenge request which should be sent to acs_url pub challenge_request: Option<String>, /// Challenge request key which should be set as form field name for creq pub challenge_request_key: Option<String>, /// Unique identifier assigned by the EMVCo(Europay, Mastercard and Visa) pub acs_reference_number: Option<String>, /// Unique identifier assigned by the ACS to identify a single transaction pub acs_trans_id: Option<String>, /// Unique identifier assigned by the 3DS Server to identify a single transaction pub three_dsserver_trans_id: Option<String>, /// Contains the JWS object created by the ACS for the ARes(Authentication Response) message pub acs_signed_content: Option<String>, /// Three DS Requestor URL pub three_ds_requestor_url: String, /// Merchant app declaring their URL within the CReq message so that the Authentication app can call the Merchant app after OOB authentication has occurred pub three_ds_requestor_app_url: Option<String>, /// Error message if any pub error_message: Option<String>, }How did you test it?
Configure JuspayThreeds server
Configure Payment Processor
Update business profile
Create Payment
Do Payments Confirm
Do Authenticate Call
Data added to clickHouse
FOR SANITY PURPOSE CHECK ALL THREE_DS CONNECTOR TRANSACTIONS AND FLOWS
such as NETCETERA, CARDINAL, JUSPAYTHREEDS SERVER, 3DSECURE.IO
Checklist
cargo +nightly fmt --allcargo clippy