问题
We are testing the new Sign in with Apple feature with our application, and on the initial request we are provided with the users full name and email address (if the user enabled these options).
However on subsequent requests, this data is not provided only the identityToken and accessToken are provided.
This has made testing this service difficult as each time we want to test the sign up of a new user, we need a new user account.
Is there a way to revoke which app(s) are using Sign in with Apple for a certain Apple ID?
回答1:
You can do this from the iPhone Settings. Open the Settings app then tap on your name at the top. Then press "Password & Security", then "Apple ID logins". They should all be listed there and can be deleted.
回答2:
We have found a manual way to achieve this which has helped tremendously with testing so I thought it would be good to share here:
Go to https://appleid.apple.com and sign in
Scroll to down Security > APPS & WEBSITES USING APPLE ID > Manage
Click the appropriate app > Stop Using Apple ID
And then after clicking on the right app:
回答3:
If you have the JWT id token, you should be able to decode it and retrieve the user info (name / email) from that directly.
For example, you can visit a site like https://jwt.ms/ and paste the id token there to see user-related data.
Edit: After doing some testing, it looks like the first/last name of the user is not in the decoded JWT token subsequent login requests. But, the email field is there, even though it is null in the apple id credential.
来源:https://stackoverflow.com/questions/58018184/how-to-revoke-sign-in-with-apple-credentials-for-a-specific-app