I created a Cognito User Pool and used the Federated login ( to Facebook )
However when the application goes into testing I foundout that lots of Facebook user do not have "email" which cause the whole login process to fail!
Worse than that, I found out that it is not possible to remove "required attribute" after user pool creation
Also there is no way to easily migate user from one pool to another ( I am exclusively using fedarated login, so no password needed however )
Have anyone get into the same issue and came up with a solution?
As far as I know An attribute cannot be switched between required and not required after a user pool has been created.
I suggest you:
Wanna keep current Userpool -> Create a lambda function, then you can add the required attribute at the pre-sign-up step.
If all user is from Facebook -> Create a new Userpool then export, and import user again. I think no problem in this case because Facebook AppID is same
If your attribute is required, the cognito signup call will fail because of the required attribute. I'm pretty certain it won't even call out to your presignup trigger. That's been my experience at least.