Skip to content

feat: incoming message origin validation for ios - #476

Merged
tiagocandido merged 5 commits into
mainfrom
07-15-feat_incoming_message_origin_validation_for_ios
Aug 5, 2026
Merged

feat: incoming message origin validation for ios#476
tiagocandido merged 5 commits into
mainfrom
07-15-feat_incoming_message_origin_validation_for_ios

Conversation

@michaeljsXu

@michaeljsXu michaeljsXu commented Jul 15, 2026

Copy link
Copy Markdown
Contributor

What changes are you making?

Add incoming message origin validation to Swift, including exact origins, wildcard subdomains, default-port normalization, IPv6 support, and child-frame rejection. The cart origin and shop.app remain implicitly trusted when validation is enabled.

The SDK rejects non-HTTPS checkout loads and main-frame redirects and reports rejected messages through an optional onMessageRejected closure.

How to test

From platforms/swift:

./Scripts/lint
./Scripts/xcode_run test ShopifyCheckoutKit-Package

@github-actions github-actions Bot added the #gsd:50662 Rebase Checkout Kit on UCP label Jul 15, 2026

michaeljsXu commented Jul 15, 2026

Copy link
Copy Markdown
Contributor Author

Comment thread platforms/swift/Sources/ShopifyCheckoutKit/Configuration.swift
Comment thread platforms/swift/Sources/ShopifyCheckoutKit/MessageOriginValidator.swift Outdated
Comment thread platforms/swift/Sources/ShopifyCheckoutKit/CheckoutWebView.swift
@tiagocandido
tiagocandido force-pushed the 07-15-feat_incoming_message_origin_validation_for_android branch from 57afe11 to 825a6b0 Compare July 31, 2026 11:43
@tiagocandido
tiagocandido force-pushed the 07-15-feat_incoming_message_origin_validation_for_ios branch 3 times, most recently from f3cbfbc to a23236f Compare July 31, 2026 13:41
@tiagocandido
tiagocandido force-pushed the 07-15-feat_incoming_message_origin_validation_for_android branch from 1b210de to 2a954f9 Compare August 3, 2026 11:55
@tiagocandido
tiagocandido force-pushed the 07-15-feat_incoming_message_origin_validation_for_ios branch from a23236f to 7a8303d Compare August 3, 2026 11:55
@tiagocandido
tiagocandido force-pushed the 07-15-feat_incoming_message_origin_validation_for_android branch from 2a954f9 to 5ae10a2 Compare August 3, 2026 12:12
@tiagocandido
tiagocandido force-pushed the 07-15-feat_incoming_message_origin_validation_for_ios branch 2 times, most recently from 194c4cb to 9b666d9 Compare August 3, 2026 12:16
@tiagocandido
tiagocandido force-pushed the 07-15-feat_incoming_message_origin_validation_for_android branch from fb43646 to d05a9dd Compare August 3, 2026 14:42
@tiagocandido
tiagocandido force-pushed the 07-15-feat_incoming_message_origin_validation_for_ios branch from 9b666d9 to a989701 Compare August 3, 2026 14:42
@tiagocandido
tiagocandido force-pushed the 07-15-feat_incoming_message_origin_validation_for_android branch from d05a9dd to 6a1430d Compare August 3, 2026 15:40
@tiagocandido
tiagocandido force-pushed the 07-15-feat_incoming_message_origin_validation_for_ios branch from a989701 to 3f57e0a Compare August 3, 2026 15:40
@tiagocandido
tiagocandido force-pushed the 07-15-feat_incoming_message_origin_validation_for_android branch from 6a1430d to 0470e12 Compare August 3, 2026 15:43
@tiagocandido
tiagocandido force-pushed the 07-15-feat_incoming_message_origin_validation_for_ios branch from 3f57e0a to 11a49d2 Compare August 3, 2026 15:43
@tiagocandido
tiagocandido force-pushed the 07-15-feat_incoming_message_origin_validation_for_android branch from 0470e12 to bf89479 Compare August 4, 2026 11:45
@tiagocandido
tiagocandido force-pushed the 07-15-feat_incoming_message_origin_validation_for_ios branch from 11a49d2 to 3c28064 Compare August 4, 2026 11:45
Base automatically changed from 07-15-feat_incoming_message_origin_validation_for_android to main August 5, 2026 10:16
@tiagocandido
tiagocandido force-pushed the 07-15-feat_incoming_message_origin_validation_for_ios branch from 3c28064 to 2110ba0 Compare August 5, 2026 10:27
@tiagocandido
tiagocandido marked this pull request as ready for review August 5, 2026 12:00
@tiagocandido
tiagocandido requested a review from a team as a code owner August 5, 2026 12:00
@bitrise

bitrise Bot commented Aug 5, 2026

Copy link
Copy Markdown

Install this build

Open Tophat, select your target device, then click Install. Links open on the Mac running Tophat.

SDK Install
Swift Install with Tophat

Checkout Kit E2E results

Status Suite Target Platform OS version tag Device
tests/shared/launch-smoke.yaml swift ios latest iPhone 15
iOS 27 Beta

@tiagocandido
tiagocandido force-pushed the 07-15-feat_incoming_message_origin_validation_for_ios branch from 2110ba0 to c94b042 Compare August 5, 2026 12:44
@tiagocandido
tiagocandido merged commit b4e2f93 into main Aug 5, 2026
33 checks passed
@tiagocandido
tiagocandido deleted the 07-15-feat_incoming_message_origin_validation_for_ios branch August 5, 2026 13:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

#gsd:50662 Rebase Checkout Kit on UCP

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants