Skip to content

Commit 0cebbea

Browse files
authored
chore(auth): Updated the signInWithWebUI to use ASWebAuthenticationSession (#1037)
- HostedUI signIn defaults to ASWebAuthenticationSession for iOS 13.0+ - Added a new parameter in AWSAuthWebUISignInOptions called preferPrivateSession which will start the hostedUI in prefersEphemeralWebBrowserSession of ASWebAuthenticationSession. - If `preferPrivateSession` was set during signIn, signOut will invoke local only signout.
1 parent 6d6e3ca commit 0cebbea

15 files changed

+360
-34
lines changed

AmplifyPlugins/Auth/AWSCognitoAuthPlugin.xcodeproj/project.pbxproj

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,7 @@
5050
B4136E8E256D7B500011210B /* AuthDeviceFetchDevicesTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = B4136E8D256D7B500011210B /* AuthDeviceFetchDevicesTests.swift */; };
5151
B4136E94256D7B630011210B /* AuthDeviceForgetDeviceTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = B4136E93256D7B630011210B /* AuthDeviceForgetDeviceTests.swift */; };
5252
B4136E9A256D7B700011210B /* AuthDeviceRememberDeviceTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = B4136E99256D7B700011210B /* AuthDeviceRememberDeviceTests.swift */; };
53+
B415ACFE25CB2A7F0033090D /* AWSCognitoAuthPluginUserDefaultsBehavior.swift in Sources */ = {isa = PBXBuildFile; fileRef = B415ACFD25CB2A7F0033090D /* AWSCognitoAuthPluginUserDefaultsBehavior.swift */; };
5354
B41D0F8A2475A3960049D08D /* AuthHubEventHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = B41D0F2C2475A3960049D08D /* AuthHubEventHandler.swift */; };
5455
B41D0F8B2475A3960049D08D /* AuthHubEventBehavior.swift in Sources */ = {isa = PBXBuildFile; fileRef = B41D0F2D2475A3960049D08D /* AuthHubEventBehavior.swift */; };
5556
B41D0F8E2475A3960049D08D /* AuthenticationProviderAdapter+SignOut.swift in Sources */ = {isa = PBXBuildFile; fileRef = B41D0F322475A3960049D08D /* AuthenticationProviderAdapter+SignOut.swift */; };
@@ -142,13 +143,15 @@
142143
B43DC74F2410572400D40275 /* AWSCognitoAuthPlugin.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B43DC7452410572400D40275 /* AWSCognitoAuthPlugin.framework */; };
143144
B44373A1247C869100DEF43C /* AuthSessionHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = B44373A0247C869100DEF43C /* AuthSessionHelper.swift */; };
144145
B44373A4247C8CCE00DEF43C /* AuthSignOutTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = B44373A3247C8CCE00DEF43C /* AuthSignOutTests.swift */; };
146+
B458316825C8C31500414DCC /* AWSCognitoAuthPluginUserDefaults.swift in Sources */ = {isa = PBXBuildFile; fileRef = B458316725C8C31500414DCC /* AWSCognitoAuthPluginUserDefaults.swift */; };
145147
B4D5411B256F2C8A00436E5C /* BaseAuthorizationProviderTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = B4D5411A256F2C8A00436E5C /* BaseAuthorizationProviderTest.swift */; };
146148
B4F3EA47243A776800F23296 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = B4F3EA41243A776800F23296 /* Assets.xcassets */; };
147149
B4F3EA48243A776800F23296 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = B4F3EA42243A776800F23296 /* LaunchScreen.storyboard */; };
148150
B4F3EA49243A776800F23296 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = B4F3EA44243A776800F23296 /* Main.storyboard */; };
149151
B4F3EA4F243A782700F23296 /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = B4F3EA4C243A782700F23296 /* ViewController.swift */; };
150152
B4F3EA50243A782700F23296 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = B4F3EA4D243A782700F23296 /* AppDelegate.swift */; };
151153
B4F3EA51243A782700F23296 /* SceneDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = B4F3EA4E243A782700F23296 /* SceneDelegate.swift */; };
154+
B4F9F11E25CB303200742BB3 /* MockUserDefaults.swift in Sources */ = {isa = PBXBuildFile; fileRef = B4F9F11D25CB303200742BB3 /* MockUserDefaults.swift */; };
152155
D828362C2590527F0016173F /* BaseUserBehaviorTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = D828362B2590527F0016173F /* BaseUserBehaviorTest.swift */; };
153156
D87D5864257EF27E004617B3 /* BaseAuthDeviceTest.swift in Sources */ = {isa = PBXBuildFile; fileRef = D87D5863257EF27E004617B3 /* BaseAuthDeviceTest.swift */; };
154157
FA1C817D25868C46006160E9 /* AWSCognitoAuthPluginAmplifyVersionableTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FA1C817C25868C46006160E9 /* AWSCognitoAuthPluginAmplifyVersionableTests.swift */; };
@@ -237,6 +240,7 @@
237240
B4136E8D256D7B500011210B /* AuthDeviceFetchDevicesTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AuthDeviceFetchDevicesTests.swift; sourceTree = "<group>"; };
238241
B4136E93256D7B630011210B /* AuthDeviceForgetDeviceTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AuthDeviceForgetDeviceTests.swift; sourceTree = "<group>"; };
239242
B4136E99256D7B700011210B /* AuthDeviceRememberDeviceTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AuthDeviceRememberDeviceTests.swift; sourceTree = "<group>"; };
243+
B415ACFD25CB2A7F0033090D /* AWSCognitoAuthPluginUserDefaultsBehavior.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AWSCognitoAuthPluginUserDefaultsBehavior.swift; sourceTree = "<group>"; };
240244
B41D0F2C2475A3960049D08D /* AuthHubEventHandler.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AuthHubEventHandler.swift; sourceTree = "<group>"; };
241245
B41D0F2D2475A3960049D08D /* AuthHubEventBehavior.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AuthHubEventBehavior.swift; sourceTree = "<group>"; };
242246
B41D0F302475A3960049D08D /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
@@ -332,6 +336,7 @@
332336
B43DC74E2410572400D40275 /* AWSCognitoAuthPluginTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = AWSCognitoAuthPluginTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
333337
B44373A0247C869100DEF43C /* AuthSessionHelper.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AuthSessionHelper.swift; sourceTree = "<group>"; };
334338
B44373A3247C8CCE00DEF43C /* AuthSignOutTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AuthSignOutTests.swift; sourceTree = "<group>"; };
339+
B458316725C8C31500414DCC /* AWSCognitoAuthPluginUserDefaults.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AWSCognitoAuthPluginUserDefaults.swift; sourceTree = "<group>"; };
335340
B4672B5524777C7500C83E96 /* Amplify.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = Amplify.framework; sourceTree = BUILT_PRODUCTS_DIR; };
336341
B4672B5624777C7500C83E96 /* AmplifyTestCommon.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = AmplifyTestCommon.framework; sourceTree = BUILT_PRODUCTS_DIR; };
337342
B4672B5724777C7500C83E96 /* AWSAuthCore.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = AWSAuthCore.framework; sourceTree = BUILT_PRODUCTS_DIR; };
@@ -349,6 +354,7 @@
349354
B4F3EA4C243A782700F23296 /* ViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ViewController.swift; sourceTree = "<group>"; };
350355
B4F3EA4D243A782700F23296 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
351356
B4F3EA4E243A782700F23296 /* SceneDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SceneDelegate.swift; sourceTree = "<group>"; };
357+
B4F9F11D25CB303200742BB3 /* MockUserDefaults.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MockUserDefaults.swift; sourceTree = "<group>"; };
352358
C49A4C812B0F973F5536DCC8 /* Pods-AWSAuthPlugin.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-AWSAuthPlugin.release.xcconfig"; path = "Target Support Files/Pods-AWSAuthPlugin/Pods-AWSAuthPlugin.release.xcconfig"; sourceTree = "<group>"; };
353359
C5E50D8021B9740CB511898D /* Pods-AWSAuthPlugin.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-AWSAuthPlugin.debug.xcconfig"; path = "Target Support Files/Pods-AWSAuthPlugin/Pods-AWSAuthPlugin.debug.xcconfig"; sourceTree = "<group>"; };
354360
D828362B2590527F0016173F /* BaseUserBehaviorTest.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BaseUserBehaviorTest.swift; sourceTree = "<group>"; };
@@ -621,6 +627,7 @@
621627
B41D0F422475A3960049D08D /* Options */ = {
622628
isa = PBXGroup;
623629
children = (
630+
21621E0D24DE1FC300497A24 /* AWSAttributeResendConfirmationCodeOptions.swift */,
624631
B41D0F492475A3960049D08D /* AWSAuthConfirmResetPasswordOptions.swift */,
625632
B41D0F432475A3960049D08D /* AWSAuthConfirmSignInOptions.swift */,
626633
B41D0F442475A3960049D08D /* AWSAuthConfirmSignUpOptions.swift */,
@@ -629,7 +636,6 @@
629636
B41D0F462475A3960049D08D /* AWSAuthSignInOptions.swift */,
630637
B41D0F472475A3960049D08D /* AWSAuthSignUpOptions.swift */,
631638
B41D0F482475A3960049D08D /* AWSAuthWebUISignInOptions.swift */,
632-
21621E0D24DE1FC300497A24 /* AWSAttributeResendConfirmationCodeOptions.swift */,
633639
21621E1124DE2D6100497A24 /* AWSUpdateUserAttributeOptions.swift */,
634640
21621E0F24DE2D5600497A24 /* AWSUpdateUserAttributesOptions.swift */,
635641
);
@@ -704,6 +710,8 @@
704710
B41D0F762475A3960049D08D /* AuthErrorHelper.swift */,
705711
B41D0F772475A3960049D08D /* AuthProvider+AWSMobileClient.swift */,
706712
B41D0F722475A3960049D08D /* AuthUserAttributeKey+Extension.swift */,
713+
B458316725C8C31500414DCC /* AWSCognitoAuthPluginUserDefaults.swift */,
714+
B415ACFD25CB2A7F0033090D /* AWSCognitoAuthPluginUserDefaultsBehavior.swift */,
707715
B41D0F742475A3960049D08D /* AWSCredentials+Extension.swift */,
708716
B41D0F732475A3960049D08D /* AWSMobileClient+Reset.swift */,
709717
B41D0F752475A3960049D08D /* Device+Extension.swift */,
@@ -791,12 +799,13 @@
791799
B43B4DD72565E803008F345D /* Mocks */ = {
792800
isa = PBXGroup;
793801
children = (
802+
B43B4E022565E95E008F345D /* MockAuthDeviceServiceBehavior.swift */,
794803
B43B4DD82565E820008F345D /* MockAuthenticationProviderBehavior.swift */,
804+
B43B4E082565E97D008F345D /* MockAuthHubEventBehavior.swift */,
795805
B43B4DE22565E8D7008F345D /* MockAuthorizationProviderBehavior.swift */,
796806
B43B4DFC2565E941008F345D /* MockAuthUserServiceBehavior.swift */,
797-
B43B4E022565E95E008F345D /* MockAuthDeviceServiceBehavior.swift */,
798-
B43B4E082565E97D008F345D /* MockAuthHubEventBehavior.swift */,
799807
B40602A2256C230B00D23D50 /* MockAWSMobileClient.swift */,
808+
B4F9F11D25CB303200742BB3 /* MockUserDefaults.swift */,
800809
);
801810
path = Mocks;
802811
sourceTree = "<group>";
@@ -1456,12 +1465,14 @@
14561465
B41D0F8B2475A3960049D08D /* AuthHubEventBehavior.swift in Sources */,
14571466
B41D0FBE2475A3960049D08D /* AWSAuthForgetDeviceOperation.swift in Sources */,
14581467
B41D0FB42475A3960049D08D /* AWSAuthFetchUserAttributeOperation.swift in Sources */,
1468+
B458316825C8C31500414DCC /* AWSCognitoAuthPluginUserDefaults.swift in Sources */,
14591469
B41D0F9E2475A3960049D08D /* AWSAuthConfirmSignUpOptions.swift in Sources */,
14601470
21621E1224DE2D6100497A24 /* AWSUpdateUserAttributeOptions.swift in Sources */,
14611471
B41D0FB22475A3960049D08D /* AWSAuthUpdateUserAttributeOperation.swift in Sources */,
14621472
B41D0FBA2475A3960049D08D /* AWSAuthSocialWebUISignInOperation.swift in Sources */,
14631473
B41D0FC42475A3960049D08D /* UserCodeDeliveryDetails+Extension.swift in Sources */,
14641474
B41D0FCD2475A3960049D08D /* AuthCognitoSignedOutSessionHelper.swift in Sources */,
1475+
B415ACFE25CB2A7F0033090D /* AWSCognitoAuthPluginUserDefaultsBehavior.swift in Sources */,
14651476
B41D10052475AB7E0049D08D /* AWSCognitoAuthPlugin.swift in Sources */,
14661477
B41D0FB52475A3960049D08D /* AWSAuthUpdateUserAttributesOperation.swift in Sources */,
14671478
B41D0FBB2475A3960049D08D /* AWSAuthSignInOperation.swift in Sources */,
@@ -1525,6 +1536,7 @@
15251536
B4136E44256D795B0011210B /* AuthenticationProviderResetPasswordTests.swift in Sources */,
15261537
B402C916257700610020B83B /* BaseAuthenticationProviderTest.swift in Sources */,
15271538
B43B4E092565E97D008F345D /* MockAuthHubEventBehavior.swift in Sources */,
1539+
B4F9F11E25CB303200742BB3 /* MockUserDefaults.swift in Sources */,
15281540
B4060295256C21BC00D23D50 /* AuthenticationProviderSignupTests.swift in Sources */,
15291541
B41D0FE22475A3A10049D08D /* AuthUserAttributeKeyTests.swift in Sources */,
15301542
B4136E26256D76300011210B /* AuthenticationProviderConfirmSigninTests.swift in Sources */,

0 commit comments

Comments
 (0)