Hey all! I was trying to implement 'Sign in with Apple' in my native iOS app. Enabling Apple as an OAuth provider right now involves redirecting the user to a apple sign in page based on a Return URL. The SignInWithAppleButton available for SwiftUI takes in a request and returns an authentication result with the user credentials such as name and email and assigns a user ID. This method doesn't redirect the user outside the app. Instead, uses the user's Apple ID for details and biometrics or passkey for authentication in the app itself.
Is there a way to implement this button currently in auth so that it creates a new user in the Users table of the Appwrite project based on the result and credentials received?
SignInWithAppleButton(.signIn) { request in
request.requestedScopes = [.email, .fullName]
} onCompletion: { result in
switch result {
case .success(let auth):
switch auth.credential {
case let authCredential as ASAuthorizationAppleIDCredential:
// Crete a new user with the received credentials.
let name = authCredential.fullName
default:
break
}
case .failure(let error):
print(error.localizedDescription)
}
}
Any ideas as to how I could make this work? Would love to contribute too if anything is in the works π
To use our oauth integration with apple, you'll have to authenticate via our flow.
You can π this related issue: https://github.com/appwrite/appwrite/issues/2611
Thanks for the reference! I'm just thinking out loud here, but would creating a manual users table where users are added manually and then adding document level rules for it be a good idea? Would love to know your opinion on this. Thanks for your response π
I don't think you can create document level rules like that.
Have you tried using Appwrite's oauth instead of the apple sign in button?
Yes, I am using email as an option for authentication. Was just wondering about sign in with apple as including any social logins on iOS requires having an sign in with apple option as well.
That would just be styling it to look the same
Ahhh. Okay thank you so much for your help! I'll look into it this way
Recommended threads
- Quota not resetting
hi, im using appwrite's free tier plani hit my read limts last month and the billing cycle said it would reset on june 4th but that is today, the billing cycle ...
- Realtime Error Invalid query: Syntax err...
I was test driving Self-Hosted Appwrite for my use with Swift IOS apps as a backend while back and after successful trials, I started to move to incorporate int...
- TSL Certificate Issues
Hi Appwrite Discord Community, I got a problem with my Self-Hosted instance. I only want, that I can use my programm with the Appwrite Backend without .selfSig...