הצגת דומיין מותאם אישית במהלך הכניסה
במאמר הזה מוסבר איך להתאים אישית את אמצעי הטיפול באימות של Identity Platform כדי שהמשתמשים יראו את הדומיין שלכם כשהם נכנסים לחשבון.
הסבר על handler ברירת המחדל לאימות
כשמפעילים את Identity Platform בפרויקט, נוצר באופן אוטומטי תת-דומיין ייחודי שמבוסס על אירוח ב-Firebase.
הדומיין הוא בתבנית https://[PROJECT-ID].firebaseapp.com.
כברירת מחדל, Identity Platform משתמש בדומיין הזה כדי לטפל בכל ההפניות האוטומטיות לכניסה באמצעות OAuth, OIDC ו-SAML.
לשימוש בדומיין ברירת המחדל יש כמה יתרונות:
שימוש בכמה דומיינים עם אותם ספקי זהויות מאוחדים
שיתוף כתובת URL אחת להתקשרות חזרה בין שירותים ודומיינים שונים
התכונה פועלת עם ספקים שתומכים רק בכתובת URL אחת להתקשרות חזרה לכל אפליקציה
החיסרון של ה-handler שמוגדר כברירת מחדל הוא שהמשתמשים יראו לזמן קצר את כתובת ה-URL של https://[PROJECT-ID].firebaseapp.com כשהם ייכנסו לחשבון.
התאמה אישית של אמצעי הטיפול באימות
כדי להחליף את ה-handler שמוגדר כברירת מחדל ב-handler מותאם אישית, מבצעים את הפעולות הבאות:
במסוף Firebase, מקשרים את הפרויקט לדומיין בהתאמה אישית.
במסוף Google Cloud , נכנסים לדף Identity Platform > ספקי זהויות.
כניסה לדף 'ספקי זהויות'בוחרים את ספק הזהויות.
בחלונית הצדדית הגדרות הפרויקט, לוחצים על הוספת דומיין ומוסיפים את הדומיין המותאם אישית.
לוחצים על Save.
בהגדרת האפליקציה, מעדכנים את כתובת ה-URL של הקריאה החוזרת עם הדומיין המותאם אישית במקום דומיין ברירת המחדל. לדוגמה, שינוי של
https://myproject.firebaseapp.com/__/auth/handlerל-https://auth.mycustomdomain.com/__/auth/handler.
עדכון ההגדרה של ה-SDK של הלקוח
אינטרנט
אפשר להעתיק את קוד האתחול של ה-SDK של הלקוח מGoogle Cloud המסוף. אם אתם מתאימים אישית את ה-handler של האימות, תצטרכו לעדכן את השדה authDomain לדומיין המותאם אישית שלכם:
גרסה 9 לאינטרנט
import { initializeApp } from "firebase/app"; const firebaseConfig = { apiKey: "...", // By default, authDomain is '[YOUR_APP].firebaseapp.com'. // You may replace it with a custom domain. authDomain: '[YOUR_CUSTOM_DOMAIN]' }; const firebaseApp = initializeApp(firebaseConfig);
גרסה 8 לאינטרנט
firebase.initializeApp({ apiKey: '...', // By default, authDomain is '[YOUR_APP].firebaseapp.com'. // You may replace it with a custom domain. authDomain: '[YOUR_CUSTOM_DOMAIN]' });
Android ו-iOS
כדי להתאים אישית את אמצעי הטיפול באימות, משתמשים בקוד הבא:
Java
FirebaseAuth.getInstance().setCustomAuthDomain("[YOUR_CUSTOM_DOMAIN]");
Kotlin+KTX
Firebase.auth.setCustomAuthDomain("[YOUR_CUSTOM_DOMAIN]")
Swift
let auth = Auth.auth()
auth.customAuthDomain = "[YOUR_CUSTOM_DOMAIN]"
Objective-C
FIRAuth *auth = [FIRAuth auth];
auth.customAuthDomain("[YOUR_CUSTOM_DOMAIN]");