this is my code, I want to verify the email before the user can login, but unable to do in createAccount part, how to do that and prevent unauthorized user from login
TypeScript
export const useAuth = () => {
// login user
const loginUser = async (auth) => {
try {
return await account.createEmailSession(auth.email, auth.password)
} catch (error) {
console.log(error)
throw error
}
}
// register user
const register = async (auth) => {
try {
const newAccount = await account.create(ID.unique(), auth.email, auth.password, auth.firstName+" "+auth.lastName)
if (!newAccount) {
throw Error
}
const avatarUrl = avatars.getInitials(auth.firstName + " " + auth.lastName, 200, 200)
return await saveUserToDB({
user_id: newAccount.$id,
email: newAccount.email,
first_name: auth.firstName,
last_name: auth.lastName,
avatar_url: avatarUrl,
bodhi_points: 0
})
} catch (e) {
console.log(e)
throw e
}
}
// save user to database
const saveUserToDB = async ( user) => {
try {
return await databases.createDocument(
appwriteConfig.databaseId,
appwriteConfig.userCollectionId,
ID.unique(),
user,
)
} catch (e) {
console.log(e)
throw e
}
}
return {
loginUser,
register,
saveUserToDB,
}
}
TL;DR
Developers want to verify user email before login but are facing issues with the process. To prevent unauthorized access, implement email verification during the account creation step before allowing login.Recommended threads
- TEAM INVITE
There is a problem with the team invitation. When a user invites other users, that time, the newly created email address they don't get the invite link and old ...
- education plan not activated
Hi I have an edu id 13103046@iubat.edu but when I am trying to claim my plan and trying to logging with github where education student plan active. the appwrite...
- 500 simultaneous OAuth logins from the s...
Hi, I'd like to ask about rate limiting around Google OAuth login on Appwrite Cloud. **OVERVIEW** Service type: A PWA (web app) for members of a university clu...