คุณลักษณะนี้ใช้ Google Firebase และอนุญาตให้เข้าสู่ระบบด้วย Google, อีเมลและรหัสผ่าน Firebase, Facebook และ Github
การติดตั้ง
จำเป็นต้องมีโปรเจ็กต์ Firebase จากนั้นเราจะกำหนดค่า Disciple.Tools.
การกำหนดค่าแอป Firebase
สร้างโปรเจ็กต์ Firebase บน https://console.firebase.google.com ด้วยชื่อใดก็ได้ ไม่จำเป็นต้องมีการวิเคราะห์
เว็บแอป
จากแดชบอร์ดคลิกเพื่อเข้าสู่เว็บ เลือกชื่อเล่นใดก็ได้ บันทึกการตั้งค่าที่มีลักษณะเช่นนี้ เราจะต้องการพวกเขาในภายหลัง
const firebaseConfig = {
apiKey: "AIza-***",
authDomain: "disciple-tools-auth.firebaseapp.com",
projectId: "disciple-tools-auth",
storageBucket: "disciple-tools-auth.appspot.com",
messagingSenderId: "*********",
appId: "******"
};
การยืนยันตัวตน
จากเมนูด้านซ้ายเลือก Build จากนั้นเลือก Authentication
บนแท็บการรับรองความถูกต้อง ให้เพิ่มผู้ให้บริการที่คุณต้องการเปิดใช้งาน (Google, Email and Pass, Facebook ฯลฯ)
ตัวอย่างของ Google:
คลิกเพิ่มผู้ให้บริการใหม่ แล้วก็กูเกิ้ล เปิดใช้งานผู้ให้บริการ เลือกชื่อที่ผู้ใช้จะเห็น เช่น “disciple-tools-auth”
โดเมนที่ได้รับอนุญาต
ไปที่แท็บการตั้งค่า ภายใต้โดเมนที่ได้รับอนุญาต ให้เพิ่มโดเมนของอินสแตนซ์ DT ของคุณ ตัวอย่าง: "disciple.tools" หรือ "*.disciple.tools"
การตั้งค่าดีที
ตรงไปที่การตั้งค่า (DT) > เข้าสู่ระบบ SSO บนหลายไซต์ ด้วยปลั๊กอิน DT multisite ให้ไปที่ Network Admin > Disciple.Tools > เข้าสู่ระบบ SSO
เปิดแท็บ Firebase
สร้าง firebaseConfig ด้านบน เพิ่มค่า apiKey AIza... ให้กับ Firebase API Key, ค่า projectId ให้กับ Firebase Project ID และ appId ให้กับ Firebase App ID คลิกบันทึก
บนแท็บทั่วไป ตั้งค่าเปิดใช้งานหน้าเข้าสู่ระบบแบบกำหนดเองเป็น "เปิด" และบันทึก
บนแท็บผู้ให้บริการข้อมูลประจำตัว ให้ตั้งค่าผู้ให้บริการ "Google" เป็น "เปิด" และบันทึก
ออกจากระบบและลองดูสิ!
การแก้ไขปัญหา
- ข้อความแสดงข้อผิดพลาด “ไม่พบคลาส “Firebase\JWT\Key” อาจบ่งชี้ว่ามีการใช้ปลั๊กอินแอปมือถือเวอร์ชันเก่าอยู่