Zanim zaczniesz
- Dodaj Firebase do swojego projektu JavaScript .
- Zdobądź klucze serwera swojego projektu:
- Przejdź do strony Konta usług w ustawieniach swojego projektu.
- Kliknij Wygeneruj nowy klucz prywatny u dołu sekcji Firebase Admin SDK na stronie Konta usługi .
- Para kluczy publiczny/prywatny nowego konta usługi jest automatycznie zapisywana na komputerze. Skopiuj ten plik na swój serwer uwierzytelniający.
Uwierzytelnij w Firebase
- Gdy użytkownicy logują się do Twojej aplikacji, wyślij ich dane logowania (na przykład nazwę użytkownika i hasło) do serwera uwierzytelniania. Twój serwer sprawdza poświadczenia i zwraca niestandardowy token, jeśli są one prawidłowe.
- Po otrzymaniu niestandardowego tokena z serwera uwierzytelniania przekaż go do
signInWithCustomToken
, aby zalogować użytkownika:Web modular API
import { getAuth, signInWithCustomToken } from "firebase/auth"; const auth = getAuth(); signInWithCustomToken(auth, token) .then((userCredential) => { // Signed in const user = userCredential.user; // ... }) .catch((error) => { const errorCode = error.code; const errorMessage = error.message; // ... });
Web namespaced API
firebase.auth().signInWithCustomToken(token) .then((userCredential) => { // Signed in var user = userCredential.user; // ... }) .catch((error) => { var errorCode = error.code; var errorMessage = error.message; // ... });
Następne kroki
Gdy użytkownik zaloguje się po raz pierwszy, tworzone jest nowe konto użytkownika, które jest łączone z poświadczeniami — czyli nazwą użytkownika i hasłem, numerem telefonu lub informacjami o dostawcy uwierzytelniania — za pomocą których użytkownik się logował. To nowe konto jest przechowywane jako część Twojego projektu Firebase i może służyć do identyfikacji użytkownika w każdej aplikacji w Twoim projekcie, niezależnie od tego, jak użytkownik się loguje.
W twoich aplikacjach zalecanym sposobem poznania statusu autoryzacji użytkownika jest ustawienie obserwatora na obiekcie
Auth
. Następnie można uzyskać podstawowe informacje o profilu użytkownika z obiektuUser
. Zobacz Zarządzanie użytkownikami .W regułach bezpieczeństwa Firebase Realtime Database i Cloud Storage możesz uzyskać unikalny identyfikator zalogowanego użytkownika ze zmiennej
auth
i użyć go do kontrolowania, do jakich danych użytkownik ma dostęp.
Możesz zezwolić użytkownikom na logowanie się do Twojej aplikacji przy użyciu wielu dostawców uwierzytelniania, łącząc poświadczenia dostawcy uwierzytelniania z istniejącym kontem użytkownika.
Aby wylogować użytkownika, wywołaj signOut
:
Web modular API
import { getAuth, signOut } from "firebase/auth"; const auth = getAuth(); signOut(auth).then(() => { // Sign-out successful. }).catch((error) => { // An error happened. });
Web namespaced API
firebase.auth().signOut().then(() => { // Sign-out successful. }).catch((error) => { // An error happened. });