เชื่อมต่อแอพของคุณกับ Authentication Emulator

ก่อนที่จะใช้โปรแกรมจำลองการตรวจสอบสิทธิ์กับคุณแอปให้แน่ใจว่าคุณ เข้าใจโดยรวม Firebase ท้องถิ่น Emulator สวีทเวิร์กโฟลว์ และที่คุณ ติดตั้งและกำหนด ท้องถิ่น Emulator Suite และทบทวน คำสั่ง CLI

ฉันจะทำอะไรกับโปรแกรมจำลองการตรวจสอบสิทธิ์ได้บ้าง

จำลองการตรวจสอบสิทธิ์ให้มีความเที่ยงตรงสูงจำลองท้องถิ่นของบริการ Firebase รับรองความถูกต้องให้มากของการทำงานที่พบใน การผลิต Firebase รับรองความถูกต้อง เมื่อจับคู่กับแพลตฟอร์ม Apple, Android และ Web Firebase SDK แล้ว อีมูเลเตอร์จะช่วยให้คุณ:

  • สร้าง อัปเดต และจัดการบัญชีผู้ใช้จำลองสำหรับทดสอบอีเมล/รหัสผ่าน หมายเลขโทรศัพท์/SMS และลงชื่อเข้าใช้ด้วยผู้ให้บริการข้อมูลประจำตัวบุคคลที่สาม (เช่น Google)
  • ดูและแก้ไขผู้ใช้จำลอง
  • ตรวจสอบข้อความที่เกี่ยวข้องกับการรับรองความถูกต้องในแท็บบันทึก UI ของโปรแกรมจำลอง

เลือกโปรเจ็กต์ Firebase

Firebase Local Emulator Suite จำลองผลิตภัณฑ์สำหรับโปรเจ็กต์ Firebase เดียว

ในการเลือกโครงการที่จะใช้ก่อนที่จะเริ่มการเลียนแบบใน CLI วิ่ง firebase use ในไดเรกทอรีการทำงานของคุณ หรือคุณสามารถผ่าน --project ธงแต่ละคำสั่งจำลอง

ท้องถิ่น Emulator สวีทสนับสนุนการแข่งขันของโครงการ Firebase จริงและโครงการสาธิต

ประเภทโครงการ คุณสมบัติ ใช้กับอีมูเลเตอร์
จริง

โปรเจ็กต์ Firebase จริงคือโปรเจ็กต์ที่คุณสร้างและกำหนดค่า (ส่วนใหญ่ผ่านคอนโซล Firebase)

โปรเจ็กต์จริงมีทรัพยากรจริง เช่น อินสแตนซ์ฐานข้อมูล ที่เก็บข้อมูลของพื้นที่เก็บข้อมูล ฟังก์ชัน หรือทรัพยากรอื่นๆ ที่คุณตั้งค่าสำหรับโปรเจ็กต์ Firebase นั้น

เมื่อทำงานกับโปรเจ็กต์ Firebase จริง คุณสามารถเรียกใช้โปรแกรมจำลองสำหรับผลิตภัณฑ์ที่รองรับใดๆ หรือทั้งหมดได้

สำหรับผลิตภัณฑ์ใด ๆ ที่คุณยังไม่ได้ลอกเลียนแบบปพลิเคชันและรหัสของคุณจะโต้ตอบกับทรัพยากรที่มีชีวิต (เช่นฐานข้อมูล, การจัดเก็บถัง, ฟังก์ชั่นอื่น ๆ )

การสาธิต

การสาธิตโครงการ Firebase ไม่มีการกำหนดค่า Firebase จริงและไม่มีทรัพยากรที่มีชีวิต โครงการเหล่านี้มักจะเข้าถึงได้ผ่าน codelabs หรือบทช่วยสอนอื่นๆ

รหัสโครงการสำหรับโครงการสาธิตมี demo- คำนำหน้า

เมื่อทำงานร่วมกับโครงการสาธิต Firebase ปพลิเคชันและรหัสโต้ตอบด้วยการเลียนแบบเท่านั้น หากแอปของคุณพยายามโต้ตอบกับทรัพยากรที่ไม่ได้ใช้งานโปรแกรมจำลอง โค้ดนั้นจะล้มเหลว

เราขอแนะนำให้คุณใช้โปรเจ็กต์สาธิตในทุกที่ที่ทำได้ ประโยชน์รวมถึง:

  • ตั้งค่าได้ง่ายขึ้น เนื่องจากคุณสามารถเรียกใช้อีมูเลเตอร์ได้โดยไม่ต้องสร้างโปรเจ็กต์ Firebase เลย
  • ความปลอดภัยที่เข้มงวดยิ่งขึ้น เนื่องจากหากรหัสของคุณเรียกใช้ทรัพยากรที่ไม่ได้จำลอง (การผลิต) โดยไม่ได้ตั้งใจ จะไม่มีโอกาสเปลี่ยนแปลงข้อมูล การใช้งาน และการเรียกเก็บเงิน
  • การสนับสนุนออฟไลน์ที่ดีขึ้น เนื่องจากไม่จำเป็นต้องเข้าถึงอินเทอร์เน็ตเพื่อดาวน์โหลดการกำหนดค่า SDK ของคุณ

เครื่องมือแอปของคุณเพื่อพูดคุยกับโปรแกรมจำลองการตรวจสอบสิทธิ์

SDK สำหรับ Android, iOS และเว็บ

ตั้งค่าคอนฟิกูเรชันในแอปหรือคลาสทดสอบเพื่อโต้ตอบกับโปรแกรมจำลองการตรวจสอบสิทธิ์ดังนี้

Android
FirebaseAuth.getInstance().useEmulator('10.0.2.2', 9099);
Swift
Auth.auth().useEmulator(withHost:"localhost", port:9099)

เว็บรุ่น 9

import { getAuth, connectAuthEmulator } from "firebase/auth";

const auth = getAuth();
connectAuthEmulator(auth, "http://localhost:9099");

เว็บรุ่น8

const auth = firebase.auth();
auth.useEmulator("http://localhost:9099");

ไม่จำเป็นต้องตั้งค่าเพิ่มเติมเพื่อสร้างต้นแบบและทดสอบการโต้ตอบระหว่าง Authentication และ Cloud Functions หรือ Firebase Security Rules for Cloud Firestore หรือ Realtime Database เมื่อมีการกำหนดค่าโปรแกรมจำลองการตรวจสอบสิทธิ์และโปรแกรมจำลองอื่นๆ กำลังทำงาน โปรแกรมจำลองจะทำงานร่วมกันโดยอัตโนมัติ

Admin SDK

Firebase SDK ผู้ดูแลระบบโดยอัตโนมัติเชื่อมต่อกับโปรแกรมจำลองการรับรองความถูกต้องเมื่อ FIREBASE_AUTH_EMULATOR_HOST ตัวแปรสภาพแวดล้อมเป็นชุด

export FIREBASE_AUTH_EMULATOR_HOST="localhost:9099"

โปรดทราบว่าโปรแกรมจำลอง Cloud Functions จะรับรู้ถึงโปรแกรมจำลองการตรวจสอบสิทธิ์โดยอัตโนมัติ คุณจึงข้ามขั้นตอนนี้ได้เมื่อทดสอบการผสานการทำงานระหว่าง Cloud Functions และโปรแกรมจำลองการตรวจสอบสิทธิ์ ตัวแปรสภาพแวดล้อมจะถูกตั้งค่าโดยอัตโนมัติสำหรับ Admin SDK ใน Cloud Functions

กับชุดตัวแปรสภาพแวดล้อม, Firebase ธุรการ SDKs จะยอมรับไม่ได้ลงนามรหัสสัญญาณและคุกกี้ของเซสชันที่ออกโดยจำลองการตรวจสอบสิทธิ์ (ผ่าน verifyIdToken และ createSessionCookie วิธีการตามลำดับ) เพื่ออำนวยความสะดวก developmemt ท้องถิ่นและการทดสอบ กรุณาตรวจสอบให้แน่ใจว่าจะไม่ตั้งค่าตัวแปรสภาพแวดล้อมในการผลิต

เมื่อเชื่อมต่อกับโปรแกรมจำลองการตรวจสอบสิทธิ์ คุณจะต้องระบุรหัสโปรเจ็กต์ คุณสามารถส่งผ่าน ID โครงการเพื่อ initializeApp โดยตรงหรือตั้ง GCLOUD_PROJECT ตัวแปรสภาพแวดล้อม โปรดทราบว่าคุณไม่จำเป็นต้องใช้รหัสโปรเจ็กต์ Firebase จริง ตัวจำลองการตรวจสอบสิทธิ์จะยอมรับ ID โปรเจ็กต์ใดๆ

Node.js ผู้ดูแลระบบ SDK
admin.initializeApp({ projectId: "your-project-id" });
ตัวแปรสภาพแวดล้อม
export GCLOUD_PROJECT="your-project-id"

ID Tokens

สำหรับเหตุผลด้านความปลอดภัยรับรองความถูกต้องจำลองปัญหาราชสกุล ID ที่ไม่ได้ลงชื่อซึ่งได้รับการยอมรับโดยการเลียนแบบ Firebase อื่น ๆ เท่านั้นหรือ Firebase SDK ผู้ดูแลระบบเมื่อ มีการกำหนดค่า โทเค็นเหล่านี้จะถูกปฏิเสธโดยบริการ Firebase ที่ใช้งานจริงหรือ Firebase Admin SDK ที่ทำงานในโหมดใช้งานจริง (เช่น ลักษณะการทำงานเริ่มต้นโดยไม่มีขั้นตอนการตั้งค่าที่อธิบายไว้ข้างต้น)

หากต้องการเริ่มต้นการสร้างต้นแบบแบบโต้ตอบด้วยโปรแกรมจำลองการตรวจสอบสิทธิ์และ Emulator Suite UI ให้เริ่ม Firebase Local Emulator Suite

firebase emulators:start

สำหรับการตรวจสอบที่ไม่ระบุชื่อแอปของคุณสามารถออกกำลังกายได้ลงชื่อเข้าใช้ตรรกะสำหรับแพลตฟอร์มของคุณ ( iOS , Android , เว็บ )

สำหรับการตรวจสอบอีเมล / รหัสผ่านที่คุณสามารถเริ่มต้นการสร้างต้นแบบโดยการเพิ่มบัญชีผู้ใช้ในการจำลองการตรวจสอบสิทธิ์จากการตรวจสอบของคุณโดยใช้วิธีการตรวจสอบ SDK, หรือโดยการใช้ Emulator สวีท UI

  1. ใน Emulator สวีท UI คลิกแท็บการตรวจสอบสิทธิ์
  2. ผู้ใช้คลิกที่ปุ่มเพิ่ม
  3. ทำตามวิซาร์ดการสร้างบัญชีผู้ใช้โดยกรอกข้อมูลในฟิลด์การตรวจสอบสิทธิ์อีเมล

ด้วยผู้ใช้ทดสอบที่สร้างแอปของคุณสามารถเข้าสู่ระบบของผู้ใช้ทั้งในและนอกกับตรรกะ SDK สำหรับแพลตฟอร์มของคุณ ( iOS , Android , เว็บ )

สำหรับการทดสอบยืนยันอีเมล / ลงชื่อเข้าใช้ด้วยการเชื่อมโยงอีเมลกระแสจำลองพิมพ์ URL ไปยังสถานีที่ซึ่ง firebase emulators:start ถูกประหารชีวิต

i  To verify the email address customer@ex.com, follow this link:
http://localhost:9099/emulator/action?mode=verifyEmail&lang=en&oobCode=XYZ123&apiKey=fake-api-key

วางลิงก์ลงในเบราว์เซอร์ของคุณเพื่อจำลองเหตุการณ์การยืนยัน และตรวจสอบว่าการยืนยันสำเร็จหรือไม่

{
  "authEmulator": {
    "success": "The email has been successfully verified.",
    "email": "customer@example.com"
  }
}

สำหรับการทดสอบรีเซ็ตรหัสผ่านโปรแกรมจำลองพิมพ์ URL ที่คล้ายกันรวมทั้งพารามิเตอร์ NewPassword (ซึ่งคุณอาจมีการเปลี่ยนแปลงตามความจำเป็น) ไปยังสถานี

http://localhost:9099/emulator/action?mode=resetPassword&oobCode=XYZ!23&apiKey=fake-api-key&newPassword=YOUR_NEW_PASSWORD

การทดสอบแบบไม่โต้ตอบ

แทนที่จะใช้ UI ของ Emulator Suite หรือรหัสไคลเอ็นต์เพื่อจัดการบัญชีผู้ใช้อีเมล/รหัสผ่าน คุณสามารถเขียนสคริปต์การตั้งค่าการทดสอบที่เรียกใช้ REST API เพื่อสร้างและลบบัญชีผู้ใช้ และดึงรหัสยืนยันอีเมลนอกแบนด์เพื่อเติมข้อมูลการยืนยันอีเมลของโปรแกรมจำลอง URL. สิ่งนี้ทำให้แพลตฟอร์มและโค้ดทดสอบแยกจากกัน และช่วยให้คุณทดสอบแบบไม่โต้ตอบได้

สำหรับขั้นตอนการทดสอบอีเมลและรหัสผ่านแบบไม่โต้ตอบ ลำดับโดยทั่วไปจะเป็นดังนี้

  1. สร้างผู้ใช้กับการตรวจสอบ ปลายทางสมัครใช้งานส่วนที่เหลือ
  2. ลงชื่อเข้าใช้ผู้ใช้โดยใช้อีเมลและรหัสผ่านเพื่อทำการทดสอบ
  3. หากเป็นไปได้ในการทดสอบของคุณสามารถดึงข้อมูลออกจากวงของรหัสยืนยันอีเมลพร้อมใช้งานจาก endpont REST จำลองเฉพาะ
  4. บันทึกการใช้ฟลัชกับ ปลายทาง REST จำลองเฉพาะ สำหรับข้อมูลของสำนักหักบัญชี

การยืนยันตัวตนทางโทรศัพท์/SMS จำลอง

สำหรับการตรวจสอบสิทธิ์ทางโทรศัพท์ โปรแกรมจำลอง Auth ไม่รองรับ:

  • โฟลว์ reCAPTCHA และ APN เมื่อมีการกำหนดค่าในการโต้ตอบกับโปรแกรมจำลอง, SDK ของลูกค้าปิดการใช้งานวิธีการตรวจสอบเหล่านี้ในทางที่คล้ายกับที่อธิบายไว้สำหรับการทดสอบบูรณาการ ( iOS , Android , เว็บ )
  • ทดสอบหมายเลขโทรศัพท์ด้วยรหัสที่กำหนดค่าไว้ล่วงหน้าในคอนโซล Firebase

มิฉะนั้นในแง่ของรหัสลูกค้า, การไหลของการตรวจสอบโทรศัพท์ / SMS เป็นเหมือนกับที่อธิบายไว้สำหรับการผลิต ( iOS , Android , เว็บ )

การใช้ UI ของ Emulator Suite:

  1. ใน Emulator สวีท UI คลิกแท็บการตรวจสอบสิทธิ์
  2. ผู้ใช้คลิกที่ปุ่มเพิ่ม
  3. ทำตามวิซาร์ดการสร้างบัญชีผู้ใช้โดยกรอกข้อมูลในฟิลด์การตรวจสอบสิทธิ์ทางโทรศัพท์

อย่างไรก็ตาม สำหรับขั้นตอนการตรวจสอบสิทธิ์ทางโทรศัพท์ โปรแกรมจำลองจะไม่ทริกเกอร์การส่งข้อความใดๆ เนื่องจากการติดต่อผู้ให้บริการอยู่นอกขอบเขตและไม่เหมาะสำหรับการทดสอบในพื้นที่! แต่จำลองพิมพ์ออกรหัสที่จะได้รับการส่งผ่านทาง SMS ไปยังสถานีเดียวที่คุณวิ่ง firebase emulators:start ; ป้อนรหัสนี้ลงในแอปเพื่อจำลองผู้ใช้ที่กำลังตรวจสอบข้อความ

การทดสอบแบบไม่โต้ตอบ

สำหรับการทดสอบการตรวจสอบสิทธิ์โทรศัพท์แบบไม่โต้ตอบ ให้ใช้ REST API ตัวจำลองการตรวจสอบสิทธิ์เพื่อดึงรหัส SMS ที่พร้อมใช้งาน โปรดทราบว่าโค้ดจะแตกต่างกันทุกครั้งที่คุณเริ่มโฟลว์

ลำดับทั่วไปมีดังนี้

  1. โทรแพลตฟอร์ม signInWithPhoneNumber ที่จะเริ่มต้นขั้นตอนการยืนยัน
  2. รับรหัสยืนยันโดยใช้ ปลายทาง REST จำลองเฉพาะ
  3. โทร confirmationResult.confirm(code) ตามปกติด้วยรหัสยืนยัน

การรับรองความถูกต้องของผู้ให้บริการข้อมูลประจำตัวบุคคลที่สาม (IDP) ที่จำลองขึ้น

โปรแกรมจำลองการตรวจสอบสิทธิ์ช่วยให้คุณทดสอบโฟลว์การตรวจสอบสิทธิ์บุคคลที่สามจำนวนมากใน iOS, Android หรือเว็บแอปโดยไม่มีการเปลี่ยนแปลงจากโค้ดที่ใช้งานจริง สำหรับตัวอย่างของการตรวจสอบกระแสศึกษาเอกสารต่าง ๆ รวมกันของผู้ให้บริการและแพลตฟอร์มที่คุณสามารถใช้แอปของคุณ

โดยทั่วไป คุณสามารถใช้ Firebase SDK เพื่อตรวจสอบสิทธิ์ด้วยวิธีใดวิธีหนึ่งจากสองวิธีต่อไปนี้

  • แอปของคุณอนุญาตให้ SDK จัดการกระบวนการทั้งหมดตั้งแต่ต้นจนจบ รวมถึงการโต้ตอบทั้งหมดกับผู้ให้บริการ IDP บุคคลที่สามเพื่อดึงข้อมูลรับรอง
  • แอพของคุณดึงข้อมูลประจำตัวจากผู้ให้บริการบุคคลที่สามโดยใช้ SDK ของฝ่ายนั้นและส่งข้อมูลรับรองเหล่านั้นไปยัง Authentication SDK

ตรวจสอบลิงก์เอกสารด้านบนอีกครั้ง และตรวจดูว่าคุณคุ้นเคยกับขั้นตอนใด - จัดการ Firebase SDK เทียบกับการดึงข้อมูลรับรองด้วยตนเอง - คุณต้องการใช้ ตัวจำลองการตรวจสอบสิทธิ์รองรับการทดสอบทั้งสองวิธี

การทดสอบโฟลว์ IDP ที่ขับเคลื่อนโดย Firebase SDK

หากแอปของคุณใช้ใด ๆ แบบ end-to-end ไหล Firebase SDK เช่น OAuthProvider ในการลงชื่อเข้ากับ Microsoft GitHub หรือ Yahoo, สำหรับการทดสอบการโต้ตอบและการจำลองการตรวจสอบสิทธิ์ให้บริการอาหารท้องถิ่นของคุณจากการเข้าสู่ระบบที่สอดคล้องกันหน้าในการทดสอบความช่วยเหลือคุณ การตรวจสอบจากเว็บแอพพลิเคที่โทร signinWithPopup หรือ signInWithRedirect วิธี หน้าลงชื่อเข้าใช้ที่แสดงในเครื่องนี้ยังปรากฏในแอปมือถือ ซึ่งแสดงโดยไลบรารี webview ของแพลตฟอร์มของคุณ

อีมูเลเตอร์สร้างจำลองบัญชีผู้ใช้และข้อมูลประจำตัวของบุคคลที่สามตามความจำเป็นเมื่อโฟลว์ดำเนินต่อไป

การทดสอบโฟลว์ IDP ด้วยการดึงข้อมูลรับรองด้วยตนเอง

หากคุณใช้ "คู่มือ" ลงชื่อเข้าใช้เทคนิคและเรียกแพลตฟอร์มของคุณ signInWithCredentials วิธีการแล้วตามปกติของแอปจะขอจริงของบุคคลที่สามการลงชื่อเข้าใช้และเรียกข้อมูลประจำตัวของบุคคลที่สามที่แท้จริง

โปรดทราบว่าเอาอย่างสนับสนุนเฉพาะ signInWithCredential การตรวจสอบข้อมูลประจำตัวที่ดึงมาจาก Google เข้าสู่ระบบแอปเปิ้ลและผู้ให้บริการอื่น ๆ ที่ใช้ ID โทเค็นนำมาใช้เป็น JSON เว็บโทเคน (JWTs) ไม่รองรับโทเค็นการเข้าถึง (เช่น ที่จัดหาโดย Facebook หรือ Twitter ซึ่งไม่ใช่ JWT) ส่วนถัดไปจะกล่าวถึงทางเลือกอื่นในกรณีเหล่านี้

การทดสอบแบบไม่โต้ตอบ

วิธีหนึ่งในการทดสอบแบบไม่โต้ตอบคือการทำให้ผู้ใช้คลิกบนหน้าลงชื่อเข้าใช้ที่โปรแกรมจำลองแสดงโดยอัตโนมัติ สำหรับเว็บแอป ให้ใช้อินเทอร์เฟซการควบคุม เช่น WebDriver สำหรับอุปกรณ์เคลื่อนที่ ให้ใช้เครื่องมือทดสอบ UI จากแพลตฟอร์มของคุณ เช่น Espresso หรือ Xcode

หรือคุณสามารถอัปเดตโค้ดของคุณเพื่อใช้ signInWithCredential (เช่นในสาขา code) และใช้การตรวจสอบการไหลของโทเค็นกับโทเค็นรหัสจำลองสำหรับบัญชีแทนของข้อมูลประจำตัวจริง

  1. เชื่อมต่อใหม่หรือแสดงความคิดเห็นในส่วนของรหัสของคุณที่ดึง idTokens จาก IDP สิ่งนี้ทำให้ไม่จำเป็นต้องป้อนชื่อผู้ใช้และรหัสผ่านจริงในระหว่างการทดสอบของคุณ และลดการทดสอบของคุณจากโควต้า API และขีดจำกัดอัตราที่ IDP
  2. ประการที่สองใช้สตริง JSON ตัวอักษรในสถานที่ของโทเค็นสำหรับ signInWithCredential คุณสามารถเปลี่ยนรหัสเป็น:
firebase.auth().signInWithCredential(firebase.auth.GoogleAuthProvider.credential(
  '{"sub": "abc123", "email": "foo@example.com", "email_verified": true}'
));

เมื่อใช้กับโปรแกรมจำลองรหัสนี้ประสบความสำเร็จจะตรวจสอบผู้ใช้กับอีเมล foo@example.com ที่ Google ให้คิดว่าช่องย่อยเป็นคีย์หลัก ซึ่งสามารถเปลี่ยนเป็นสตริงใดๆ ก็ได้ โดยเป็นการเยาะเย้ยการลงชื่อในผู้ใช้ที่แตกต่างกัน คุณสามารถแทนที่ firebase.auth.GoogleAuthProvider ด้วยเช่น new firebase.auth.OAuthProvider('yahoo.com') หรือรหัสผู้ให้บริการอื่น ๆ ที่คุณต้องการที่จะเยาะเย้ย

Authentication emulator แตกต่างจากการผลิตอย่างไร

โปรแกรมจำลองการตรวจสอบสิทธิ์ Firebase จำลองคุณลักษณะหลายอย่างของผลิตภัณฑ์ที่ใช้งานจริง อย่างไรก็ตาม เนื่องจากระบบการตรวจสอบสิทธิ์ใดๆ ก็ตามอาศัยการรักษาความปลอดภัยอย่างมากในหลายระดับ (อุปกรณ์ ผู้ให้บริการบุคคลที่สาม Firebase ฯลฯ) จึงเป็นเรื่องยากสำหรับโปรแกรมจำลองที่จะสร้างโฟลว์ทั้งหมดขึ้นมาใหม่อย่างถูกต้อง

คลาวด์ IAM

Firebase Emulator Suite จะไม่พยายามทำซ้ำหรือเคารพพฤติกรรมที่เกี่ยวข้องกับ IAM สำหรับการรัน อีมูเลเตอร์ปฏิบัติตามกฎความปลอดภัยของ Firebase ที่มีให้ แต่ในสถานการณ์ที่ปกติแล้ว IAM จะถูกใช้ ตัวอย่างเช่น ในการตั้งค่า Cloud Functions ที่เรียกใช้บัญชีบริการและการอนุญาต อีมูเลเตอร์จะไม่สามารถกำหนดค่าได้ และจะใช้บัญชีที่พร้อมใช้งานทั่วโลกบนเครื่องนักพัฒนาของคุณ คล้ายกับการรันสคริปต์ในเครื่องโดยตรง

เนื่องจากบนแพลตฟอร์มมือถือ การลงชื่อเข้าใช้ลิงก์อีเมลอาศัย Firebase Dynamic Links ลิงก์ดังกล่าวทั้งหมดจะเปิดขึ้นบนแพลตฟอร์มเว็บ (อุปกรณ์เคลื่อนที่) แทน

การลงชื่อเข้าใช้บุคคลที่สาม

สำหรับขั้นตอนการลงชื่อเข้าใช้ของบุคคลที่สาม การตรวจสอบสิทธิ์ Firebase จะใช้ข้อมูลรับรองที่ปลอดภัยจากผู้ให้บริการบุคคลที่สาม เช่น Twitter และ Github

ข้อมูลประจำตัวจริงจากผู้ให้บริการ OpenID Connect เช่น Google และ Apple ได้รับการยอมรับจากโปรแกรมจำลองการตรวจสอบสิทธิ์ ไม่รองรับข้อมูลรับรองจากผู้ให้บริการที่ไม่ใช่ OpenID Connect

อีเมล / SMS ลงชื่อเข้าใช้

ในแอปที่ใช้งานจริง โฟลว์การลงชื่อเข้าใช้อีเมลและ SMS เกี่ยวข้องกับการดำเนินการแบบอะซิงโครนัสซึ่งผู้ใช้ตรวจสอบข้อความที่ได้รับและป้อนรหัสล็อกอินลงในอินเทอร์เฟซการลงชื่อเข้าใช้ จำลองการตรวจสอบสิทธิ์ไม่ส่งอีเมลหรือข้อความ SMS แต่ตามที่อธิบายไว้ ข้างต้น ก็จะสร้างรหัสเข้าสู่ระบบและส่งออกไปยังสถานีที่จะใช้ในการทดสอบ

อีมูเลเตอร์ไม่รองรับความสามารถในการกำหนดหมายเลขโทรศัพท์ทดสอบด้วยรหัสล็อกอินคงที่ ซึ่งสามารถทำได้โดยใช้คอนโซล Firebase

อัตราจำกัด/ต่อต้านการละเมิด

ตัวจำลองการตรวจสอบสิทธิ์ไม่ทำซ้ำคุณสมบัติการจำกัดอัตราการผลิตหรือต่อต้านการละเมิด

อะไรต่อไป?