Vodiči

Kako dodati prijavu u svoju aplikaciju: lozinke, magične poveznice, Google i uloge

Da biste dodali prijavu aplikaciji, odaberite način: e-poštu i lozinku, magične poveznice (jednokratnu poveznicu za prijavu poslanu e-poštom) ili „Prijava putem Googlea“, i implementirajte ga provjerenom bibliotekom za autentikaciju ili hostiranim pružateljem, a ne od nule. Zatim odredite što svaka vrsta korisnika smije raditi (uloge) i provodite to na poslužitelju za svaku stranicu i svaki API zahtjev. Sesije trebaju koristiti sigurne kolačiće, isteći i ispravno završiti pri odjavi.

Ovaj vodič prolazi kroz svaki izbor i pojedinosti koje razdvajaju radnu prijavu od sigurne. Za pojmove iza toga pogledajte što je autentikacija.

Prvo odlučite: trebate li uopće prijavu?

Prijava dodaje trenje i odgovornost. Trebate je kada:

  • Korisnici imaju privatne podatke (svoje rezervacije, dokumente, račune)
  • Korisnici mogu mijenjati stvari koje će drugi vidjeti
  • Naplaćujete pristup
  • Različiti ljudi trebaju različita dopuštenja (vlasnik naspram osoblja naspram kupca)

Vjerojatno vam ne treba za stranicu marketinga, javni imenik ili obrazac koji vam samo šalje e-poštu. Lista čekanja ne treba račune; polje za e-poštu je dovoljno.

Četiri uobičajene metode prijave

MetodaKako radiPrednostiNedostaci
E-pošta i lozinkaKorisnik stvori lozinku; vi spremate njezin hashPoznato, radi bez e-pošteResetiranje lozinki, ponovna upotreba, curenja; lozinke morate sigurno pohraniti
Magična poveznicaKorisnik unese e-poštu, klikne poveznicu koju mu pošaljeteNema lozinki za pohranu ni zaboravljanjeOvisi o dostavi e-pošte; prijava je sporija
Jednokratni kodKorisnik unese e-poštu, upiše 6-znamenkasti kodRadi kada se poveznice otvore u krivom preglednikuIsta ovisnost o e-pošti
Društvena / OAuth (Google, Apple, GitHub, Microsoft)Drugi pružatelj potvrđuje tko je korisnikNajbrže za korisnike; nema lozinke za vas da je pohranjujeteKorisnici moraju imati taj račun; postavljanje kod pružatelja

Mnoge aplikacije kombiniraju dvije: prijava putem Googlea plus magične poveznice e-poštom popularan je par koji pokriva većinu ljudi bez pohrane ijedne lozinke.

E-pošta i lozinka

Ako nudite lozinke, ovo su neopozivi zahtjevi:

  • Hashirajte lozinke sporim algoritmom za hashiranje lozinki. OWASP-ove smjernice za pohranu lozinki preporučuju Argon2id, a kao alternative scrypt, bcrypt ili PBKDF2. Nikada ne spremajte lozinke u običnom tekstu ni s brzim općim hashom.
  • Resetiranja lozinki koriste nasumičnu poveznicu za jednokratnu uporabu koja istječe, poslanu na provjerenu e-poštu.
  • Ne otkrivajte koje e-adrese imaju račune. „Ako je ova e-pošta registrirana, poslali smo poveznicu za resetiranje“ bolje je od „Račun nije pronađen“.
  • Ograničite broj pokušaja prijave i resetiranja da usporite pogađanje lozinki.
  • Dopustite duge lozinke i upravitelje lozinki; izbjegavajte pravila koja traže čudne kombinacije znakova.

Magične poveznice i jednokratni kodovi

Magična poveznica je poveznica za prijavu poslana korisniku e-poštom. Klikom na nju korisnik se prijavljuje. Jednokratni kod je ista ideja, samo se upisuje umjesto da se klikne.

  • Poveznice i kodovi brzo istječu i rade samo jednom.
  • Poveznica treba prijaviti korisnika na uređaju na kojem je kliknuo, a token ne smije ostati u zapisnicima ili alatima za analitiku.
  • Potrebna vam je pouzdana dostava e-pošte; pogledajte kako slati e-poštu iz aplikacije. Testirajte s Gmailom i Outlookom te provjeravajte mapu neželjene pošte.

Prijava putem Googlea (i drugi OAuth pružatelji)

„Prijava putem Googlea“ koristi OAuth i OpenID Connect: Google potvrđuje tko je korisnik i govori vašoj aplikaciji njegovu e-poštu i ime. Postavljanje se od rujna 2026. odvija u odjeljku Google Auth Platform u Google Cloud konzoli:

  1. Stvorite ili odaberite projekt i ispunite stranicu Branding: što korisnici vide na zaslonu pristanka (naziv aplikacije, e-pošta za podršku, logotip).
  2. Na stranici Clients stvorite klijenta vrste „Web application“.
  3. Dodajte authorized JavaScript origins i redirect URI-je: točne adrese na kojima vaša aplikacija radi i na koje Google vraća korisnike nakon prijave.
  4. Spremite ID klijenta i tajnu klijenta u tajne vrijednosti aplikacije.

Stvari koje se često pokvare, prema Googleovoj OAuth dokumentaciji:

  • redirect_uri_mismatch: adresa za preusmjeravanje mora se točno podudarati, uključujući http naspram https, velika i mala slova i eventualnu kosu crtu na kraju. Dodajte jednu za adresu pregleda i jednu za svoju živu domenu.
  • Potreban HTTPS: redirect URI-ji moraju koristiti HTTPS, osim localhost tijekom razvoja.
  • Parametar state treba provjeriti pri povratku kako bi se zaštitili od cross-site request forgery napada. Dobre biblioteke to rade za vas.

Ako tražite samo osnovne podatke za prijavu (ime, e-poštu, profil), Google kaže da provjera aplikacije nije obavezna. Traženje pristupa Gmailu, Driveu ili Kalendaru korisnika je drugačije i zahtijeva provjeru.

Izgraditi sami ili koristiti pružatelja?

PristupPrimjeriKada odgovara
Hostirani pružatelj autentikacijeUsluge koje hostiraju prijavu, upravljanje korisnicima i sesije umjesto vasŽelite da prijava brzo radi uz manje sigurnosne odgovornosti
Biblioteka za autentikaciju u vašoj aplikacijiBiblioteke otvorenog koda za vaš okvirŽelite korisnike u vlastitoj bazi i bez naknade po korisniku
Napisati sami—Gotovo nikada. Previše suptilnih detalja

Oba prva pristupa su razumna. Hostirani pružatelji rade više umjesto vas, ali dodaju ovisnost i ponekad naplaćuju po aktivnom korisniku; aktualne cijene provjerite na njihovim stranicama. Biblioteke sve drže u vašoj bazi, ali vam ostavljaju više za ispravno konfiguriranje. Što god odaberete, zamolite AI da koristi to umjesto da ručno piše logiku lozinki ili sesija.

Uloge i dopuštenja

Prijava vam govori tko je netko. Dopuštenja odlučuju što smije raditi. U početku držite stvari jednostavnima:

UlogaTipična dopuštenja
PosjetiteljVidi javne stranice
Član / kupacVidi i uređuje samo svoje zapise
OsobljeVidi sve zapise svog tima ili poslovanja; ne može mijenjati postavke ni naplatu
Vlasnik / administratorSve, uključujući korisnike i naplatu

Pravila koja su važnija od naziva uloga:

  • Provjeravajte na poslužitelju, svaki put. Skrivanje gumba na stranici ne sprječava nikoga da izravno pozove API.
  • Ograničite prema vlasniku. Član koji dohvaća „rezervaciju 123“ treba je dobiti samo ako je njegova.
  • Korisnici ne mogu sami sebe unaprijediti. Ignorirajte polja uloga poslana iz preglednika pri ažuriranju profila.
  • Zadano bez pristupa. Nove rute trebaju tražiti prijavu, osim ako ne odlučite drukčije.

Testirajte s dva računa: prijavite se kao jedan, zabilježite ID zapisa, zatim se prijavite kao drugi i pokušajte ga otvoriti. Naš sigurnosni kontrolni popis sadrži cijeli test.

Sigurnost sesije

Nakon prijave aplikacija pamti korisnika kroz sesiju, obično kolačić. OWASP-ove smjernice za upravljanje sesijama preporučuju:

  • Kolačići sesije postavljeni s Secure (samo HTTPS), HttpOnly (nečitljivi za skripte stranice) i SameSite
  • Novi ID sesije izdan pri prijavi i ponovno pri promjeni privilegija
  • Vremensko ograničenje neaktivnosti i maksimalni rok trajanja, provedeni na poslužitelju
  • Odjava koja završava sesiju na poslužitelju, a ne samo briše kolačić
  • Sesije poništene kada korisnik promijeni lozinku

Spremanje tokena za prijavu u lokalnu pohranu preglednika uobičajeno je u udžbenicima, ali izlaže ih svakoj skripti koja radi na stranici; sigurni kolačići obično su bolji zadani izbor za web-aplikacije.

Prompt koji pokriva bitno

Dodaj korisničke račune u ovu aplikaciju. Korisnici se mogu registrirati i prijaviti s e-poštom i lozinkom ili putem Googlea. Koristi [biblioteku ili pružatelja] umjesto prilagođenog koda za autentikaciju. Hashiraj lozinke pomoću Argon2id ili bcrypt. Dodaj resetiranje lozinke e-poštom s jednokratnom poveznicom koja istječe za sat vremena. Čuvaj sesije u sigurnim HttpOnly kolačićima. Zaštiti /dashboard i svaku /api rutu tako da ih mogu koristiti samo prijavljeni korisnici te osiguraj da korisnici vide samo vlastite projekte. Dodaj ulogu „admin“ koja može vidjeti sve korisnike; samo administratori smiju doći do /admin, provjereno na poslužitelju.

Zatim testirajte: registrirajte se, odjavite, prijavite, resetirajte lozinku, pokušajte privatnu adresu dok niste prijavljeni i pokušajte tuđi zapis.

Česte greške u prijavi izrađenoj AI alatima

  • Zaštita samo na stranici. Stranica preusmjerava odjavljene korisnike, ali API vraća podatke svakome.
  • Tajne u pregledniku. Tajne klijenata OAuth-a i administratorski ključevi pružatelja autentikacije pripadaju poslužitelju.
  • Zamijenjene adrese pregleda i žive adrese. Googleov redirect URI ili poveznica za reset lozinke pokazuje na pregled, pa prijava pukne nakon objave.
  • Nema provjere e-pošte. Netko se može registrirati kao anyone@company.com. Provjerite e-poštu prije nego dodijelite bilo što vezano uz tu adresu.
  • Testiranje samo sretnog puta. Isprobajte pogrešne lozinke, istekle poveznice i drugi račun.

Dodavanje prijave u Mythexu

Na Mythexu je prijava za korisnike vaše aplikacije nešto što dodajete u svoju aplikaciju. Odvojena je od vašeg vlastitog Mythex računa. Mythex ne pruža ugrađeni proizvod za autentikaciju, pa donosite vlastitu biblioteku ili pružatelja i njihove ključeve:

  1. Odaberite pristup, na primjer e-poštu i lozinku spremljenu u vlastitoj bazi ili SDK hostiranog pružatelja.
  2. Ako korisnike spremate sami, aplikaciji treba baza podataka; zatražite je u chatu ili upotrijebite /database.
  3. Stavite ključeve pružatelja u tajne vrijednosti projekta (/secrets ili postavke projekta).
  4. Koristite prompt kao gore, zatim testirajte u Previewu. Za prijavu putem Googlea dodajte redirect URI-je i za svoj pregled i za objavljenu adresu.

Pogledajte Dodavanje prijave u vašu aplikaciju u dokumentaciji. Ako gradite plaćeni proizvod, kako izraditi SaaS MVP pokriva račune i naplatu zajedno.

Pitanja

Koja je najlakša prijava za dodati aplikaciji?

Korištenje hostiranog pružatelja autentikacije ili dobro održavane biblioteke za autentikaciju obično je najlakše i najsigurnije, jer su sesije, pohrana lozinki i resetiranje već riješeni. Prijava putem Googlea najmanje je zahtjevna opcija za korisnike koji imaju Google račun.

Jesu li magične poveznice sigurnije od lozinki?

Uklanjaju ponovnu upotrebu lozinki i slabe lozinke, ali rizik prebacuju na e-poštu korisnika. Poveznice trebaju brzo isteći i raditi samo jednom. Za većinu malih aplikacija razuman su izbor, često ponuđen uz prijavu putem Googlea.

Trebam li Googleovo odobrenje za dodavanje prijave putem Googlea?

Ako tražite samo osnovne podatke za prijavu (ime, e-poštu i profil), Google kaže da provjera aplikacije nije obavezna, iako i dalje konfigurirate zaslon pristanka i OAuth klijent. Traženje pristupa osjetljivim podacima poput Gmaila ili Drivea zahtijeva Googleovu provjeru aplikacije.

Koja je razlika između prijave i dopuštenja?

Prijava (autentikacija) potvrđuje tko je korisnik. Dopuštenja (autorizacija) određuju što taj korisnik smije vidjeti i raditi. Aplikaciji trebaju oboje, a dopuštenja se moraju provjeravati na poslužitelju pri svakom zahtjevu.

Mythex · Pricing · Izradite bilo što uz AI · Predlošci za web stranice i aplikacije · Mythex u usporedbi · Rječnik izrade aplikacija uz AI · Besplatni alati za izradu aplikacija uz AI · English

English አማርኛ العربية Български বাংলা Bosanski Català Čeština Dansk Deutsch Ελληνικά Español Español (España) Eesti فارسی Suomi Français Français (Canada) ગુજરાતી हिन्दी Magyar Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული Қазақ тілі ಕನ್ನಡ 한국어 Lietuvių Latviešu Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål Nederlands ਪੰਜਾਬੀ Polski Português (Brasil) Português (Portugal) Română Русский Slovenčina Slovenščina Soomaali Shqip Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)