אתם יכולים להשתמש באימות ב-Firebase כדי לאפשר למשתמשים לבצע אימות ב-Firebase באמצעות כתובות אימייל וסיסמאות.
לפני שמתחילים
אם עדיין לא עשיתם זאת, יש לפעול לפי השלבים המפורטים במדריך תחילת העבודה.
הפעלת כניסה לחשבון באמצעות אימייל או סיסמה:
- בקטע Authentication (אימות) במסוף Firebase, פותחים את שיטת כניסה הדף הזה.
- בדף Sign in method, מפעילים את השיטה Email/password sign-in ולוחצים על Save.
יצירת חשבון שמבוסס על סיסמה
כדי ליצור חשבון משתמש חדש עם סיסמה, צריך להפעיל את השיטה createUserWithEmailAndPassword()
:
try {
final credential = await FirebaseAuth.instance.createUserWithEmailAndPassword(
email: emailAddress,
password: password,
);
} on FirebaseAuthException catch (e) {
if (e.code == 'weak-password') {
print('The password provided is too weak.');
} else if (e.code == 'email-already-in-use') {
print('The account already exists for that email.');
}
} catch (e) {
print(e);
}
בדרך כלל, עושים זאת במסך ההרשמה של האפליקציה. כשמשתמש חדש נרשמים באמצעות טופס ההרשמה של האפליקציה, משלימים כל אימות חשבון חדש פעולות שנדרשות לאפליקציה, כמו אימות הסיסמה של החשבון החדש הוקלד בצורה נכונה ועומד בדרישות המורכבות שלך.
אם החשבון החדש נוצר בהצלחה, המשתמש גם יתחבר. אם מאזינים לשינויים במצב האימות, האירוע יישלח למאזינים שלך.
לאחר יצירת חשבון חדש, תוכלו לאמת את כתובת האימייל של המשתמש.
כניסה של משתמש באמצעות כתובת אימייל וסיסמה
השלבים לכניסה של משתמש באמצעות סיסמה דומים לשלבים של
יצירת חשבון חדש. במסך הכניסה של האפליקציה, התקשר
signInWithEmailAndPassword()
:
try {
final credential = await FirebaseAuth.instance.signInWithEmailAndPassword(
email: emailAddress,
password: password
);
} on FirebaseAuthException catch (e) {
if (e.code == 'user-not-found') {
print('No user found for that email.');
} else if (e.code == 'wrong-password') {
print('Wrong password provided for that user.');
}
}
השלבים הבאים
אחרי שמשתמש יוצר חשבון חדש, החשבון הזה נשמר כחלק מהפרויקט ב-Firebase, וניתן להשתמש בו כדי לזהות משתמש בכל האפליקציות בפרויקט, ללא קשר לשיטת הכניסה שבה המשתמש השתמש.
באפליקציות שלכם, תוכלו לקבל את פרטי הפרופיל הבסיסיים של המשתמש דרך
אובייקט User
. ניהול משתמשים
באמצעות מסד הנתונים בזמן אמת ב-Firebase וכללי האבטחה של Cloud Storage, אתם יכולים
מקבלים את מזהה המשתמש הייחודי של המשתמש המחובר מהמשתנה auth
, ומשתמשים בו כדי
לקבוע לאילו נתונים המשתמש יכול לגשת.
אתם יכולים לאפשר למשתמשים להיכנס לאפליקציה באמצעות כמה ספקי אימות על ידי קישור פרטי הכניסה של ספק האימות לחשבון משתמש קיים.
כדי לצאת ממשתמש, צריך להתקשר אל signOut()
:
await FirebaseAuth.instance.signOut();