Zahtevana je prijava v Ch 6 z imenom. Varnost uporabniških podatkov. Rešitve za težavo »Ups, prišlo je do napake« na Instagramu

Objavljeno 23. oktobra ob 23.15.

Uporaba preverjanja uporabniškega imena za večjo varnost račun

Kot dodaten varnostni ukrep vam nudimo sistem za preverjanje uporabniškega imena za izboljšanje varnosti računa na določenih straneh EA, vključno z vašo stranjo računa EA.

  • Pozor igralci FIFA: to funkcijo potrebni za dostop do strežnikov FIFA Ultimate Team in partnerskih aplikacij.

Ta varnostni ukrep je zasnovan tako, da ljudem prepreči prijavo v vaš račun EA iz neznanih naprav brez gesla in potrditve vašega uporabniškega imena. Obvestila bodo poslana na vaš mobilni telefon ali e-pošto po vaši izbiri. Med postopkom preverjanja uporabniškega imena začasno digitalne kode dostop za vsakega posameznega uporabnika, ki je potreben za prijavo v račun iz neznane naprave.


Omogoči preverjanje uporabniškega imena

1. Pojdite na ea.com in se prijavite.

2. Kliknite svoje uporabniško ime in izberite »Moj račun«.

3. Izberite zavihek Varnost, kjer najdete razdelek Preverjanje uporabniškega imena.

4. Kliknite Omogoči, da omogočite preverjanje uporabniškega imena, vnesite svoje varnostno vprašanje in izberite eno od možnosti: e-pošta, aplikacija za identifikacijo ali SMS za prejem kode za preverjanje.

  • Če izberete možnost " E-naslov” namesto SMS-a poskrbite, da je e-poštni naslov, naveden za vaš račun, veljaven in delujoč naslov, ki ga redno preverjate glede novih sporočil.
  • Aplikacija za identifikacijo za tablične računalnike in mobilne telefone vam omogoča, da na teh napravah ustvarite potrditvene kode za prijavo v svoj račun.
  • Na spustnem seznamu izberite vrsto naprave in prenesite Google Authenticator za naprave Apple in Android ali Authenticator za naprave, ki uporabljajo operacijski sistem Windows.
  • Igralcem igre FIFA 15 na PlayStation 3 in Xbox 360 ne bo treba sprejeti dodatnih varnostnih ukrepov pri preverjanju uporabniškega imena z aplikacijo za preverjanje pristnosti.

5. Zdaj boste prejeli potrditveno kodo, ko se boste poskušali prijaviti iz neznane naprave. Vsakih 90 dni boste prejeli potrditveno kodo, ko se prijavite v svoj račun iz zaupanja vrednih naprav. Na ta način lahko samo vi dostopate do svojega računa EA z uporabo edinstvene kode.


Po potrebi lahko onemogočite preverjanje uporabniškega imena tako, da se vrnete na stran za upravljanje računa in izberete Onemogoči.*

Opomba

  • *Če igrate FIFA Ultimate Team, ne onemogočite preverjanja uporabniškega imena, sicer vam bo dostop onemogočen.
  • Ustvarite in potrdite tudi varnostno vprašanje in odgovor za FIFA Ultimate Team.

Nastavite svojo identifikacijsko aplikacijo

Aplikacija za identifikacijo je najbolj hiter način varno preverite svojo identiteto. Nastavite identifikacijsko aplikacijo na svojem Mobilna naprava za prijavo s kodo, ki jo ustvari za identifikacijo v dveh korakih.

1. Odprite zavihek Varnost na strani Moj račun in poiščite razdelek Preverjanje uporabniškega imena.

2. Kliknite Omogoči, da omogočite preverjanje uporabniškega imena, odgovorite na varnostno vprašanje, izberite Identity Application in kliknite Continue.

3. Na spustnem seznamu izberite operacijski sistem telefona, ki ga potrebujete, in skenirajte kodo QR z aplikacijo za branje črtne kode ali v trgovini z aplikacijami za svoj telefon poiščite overitelj za ustrezno aplikacijo: Google Authenticator v sistemih Android in iOS ali Authenticator v sistemu Windows Telefon.

4. Odprite aplikacijo za identifikacijo in izberite možnost ročnega dodajanja računa.

5. Skenirajte kodo QR ali vnesite tajna koda za povezavo vaše aplikacije za identiteto z vašim računom EA.

6. Dokončajte nastavitev aplikacije za identifikacijo tako, da vnesete kodo, ki jo je ustvarila za vaš račun Electronic Arts, in kliknete »Omogoči preverjanje uporabniškega imena«.

Ko boste morali v prihodnosti potrditi svoje uporabniško ime:

1. Odprite aplikacijo za identifikacijo.

2. Vnesite šestmestno kodo za svoj račun Electronic Arts.

Ustvarjena koda je veljavna omejen čas. Če bo vaša trenutna koda že kmalu potekla, počakajte, da aplikacija ustvari novo kodo, da boste imeli dovolj časa, da jo vnesete.

Kaj naj storim, če ga ne morem uporabiti? mobilni telefon ali po e-pošti, ko potrebujem kodo? Ali je mogoče ustvariti kode za pomoč?

Če vaš telefon, ID oz E-naslov vam niso na voljo, edina pot Prijava v račun EA iz neznanega računalnika - uporaba pomožnih kod. Poskrbite, da jih shranite na varnem in dostopnem mestu. Te kode si lahko ogledate in posodobite v svojem računu EA v nastavitvah zasebnosti v odjemalcu Origin ali na spletu.

  • Kliknite »Varnost«, nato »Pogled« in »Kode pomoči«.*
  • Uporabite lahko tudi funkcijo »Zahtevaj novo kodo po prijavi v FIFA Ultimate Team«.

*Če vam zmanjka podpornih kod, lahko ustvarite nove na strani za upravljanje računa.

Potrdi Kontaktni podatki da se prepričate, da je koda pravilna.

Če imate težave s kodo za preverjanje uporabniškega imena, se prepričajte, da je vaš e-poštni naslov ali telefonska številka pravilno vnesena. Pri uporabi identifikatorja se prepričajte, da je program pravilno nameščen.

  • Če ste se odločili poslati kodo na vaš e-poštni naslov, ko ste aktivirali preverjanje uporabniškega imena, lahko preverite in posodobite svoj e-poštni naslov v razdelku O meni na strani za upravljanje računa ali prek odjemalca Origin.
  • Če izberete aplikacijo Identity App, lahko uporabite črtno kodo ali kodo QR za skeniranje in iskanje kode med ?secret= in &.
  • Če ste ob aktiviranju preverjanja uporabniškega imena izbrali možnost pošiljanja kode prek SMS-a, lahko svojo telefonsko številko preverite in posodobite v razdelku Varnost na strani za upravljanje računa ali prek odjemalca Origin.
  • Ustvarite ali potrdite varnostno vprašanje in odgovorite.

Ko potrdite svoje kontaktne podatke, boste imeli možnost omogočiti preverjanje uporabniškega imena za prejem nove kode.

Zakaj sem dobil ta obrazec?

Na vašem spletnem mestu je trenutno napad s surovo silo. Napad s surovo silo je napad z ugibanjem gesla. V tem primeru je izbrano geslo za skrbniško ploščo vašega spletnega mesta.

Da bi preprečili vdor v vašo spletno stran in povečali njeno varnost, smo namestili dodatno zaščito.

Kako lahko zdaj dostopam do skrbniške plošče spletnega mesta?

Zdaj, ko dostopate do skrbniške plošče vašega spletnega mesta (v Joomli ali WordPressu), se prikaže dodatno okno za vnos vaše prijave in gesla z napisom "prosimo, uporabite geslo nadzorne plošče". Kot prijavo morate vnesti prijavo vaše storitve gostovanja, izgleda "u1234567". Geslo je trenutno geslo za vašo storitev gostovanja.

Po opravljenem osnovnem preverjanju pristnosti HTTP boste na skrbniški plošči svojega spletnega mesta videli standardno polje za prijavo. Zdaj boste morali vnesti prijavo in geslo skrbnika spletnega mesta.

Kako deluje osnovna avtentikacija HTTP

Pri vnosu prijavnega gesla v osnovno okno za preverjanje pristnosti se prijavna vrednost in geslo hash bodo primerjane z vrednostmi v posebni datoteki ~/etc/uporabniki, ki je na voljo na nadzorni plošči vašega gostovanja. Vsebina datoteke izgleda nekako takole: "u1234567:dm48bspxIO3rg". Kjer je »u1234567« prijava, »dm48bspxIO3rg« pa geslo hash(opomba: samo zgoščena vrednost, ne samo geslo!). Zgoščena vrednost gesla je rezultat pretvorbe gesla z uporabo določenega algoritma.

Tako se ob vnosu vaše prijave in gesla v okno za osnovno preverjanje pristnosti vneseno geslo prevzame iz hash in primerja z zgoščeno vrednostjo v datoteki ~/etc/uporabniki. Če se vrednosti ujemajo, ste overjeni.

Ne morem opraviti osnovne avtentikacije

Verjetno vnašate napačno geslo. Nastavite novo geslo za osnovno preverjanje pristnosti:

Če ste opravili osnovno avtentikacijo, vendar se ne morete prijaviti neposredno v skrbniško ploščo vašega mesta Joomla ali WordPress, uporabite pomoč:

Kako povečati zaščito vaše spletne strani pred napadi Brute-force?

Če želite povečati varnost spletnega mesta:

  • spremenite prijavo superuporabnika v bolj edinstveno. Ne uporabljajte kratkih imen, bolje je, če poleg priimka uporabite tudi ime. Na internetu je veliko virov, kjer so zbrane najbolj priljubljene prijave. Seznanite se z njimi in jih nikoli ne uporabljajte;
  • Nastavite zapleteno skrbniško geslo spletnega mesta. Kompleksno geslo mora vsebovati velike in male črke, številke in dodatne simbole, kot je "* - _ # :" itd. Dolžina gesla ni manjša od 6 znakov. Po možnosti 10 in več.

Kako odstraniti obrazec za osnovno preverjanje pristnosti HTTP?

Če želite odstraniti obrazec za osnovno preverjanje pristnosti HTTP:

AuthType Basic AuthName "prosimo, uporabite geslo nadzorne plošče" AuthUserFile .../users Zahtevaj valid-user

Če želite komentirati vrstico, na začetek vrstice vstavite simbol zrezka (»#«), kot je ta.

Potrebovali bomo naslednje strani:

  • Stran za registracijo z obrazcem za registracijo
  • Stran za aktivacijo računa
  • Stran za obnovitev gesla
  • Stran za ponastavitev gesla

Obrazec za prijavo na spletno mesto bo nameščen na vseh straneh spletnega mesta (na primer v glavi).

To je registracijska stran, ki jo želimo dobiti:

Tu bo vrsta računa določila, v katero skupino bomo uporabnika prijavili. Prav tako bo identifikacijsko polje (uporabniško ime) e-pošta.

Na stran dodajte klic izrezka Registrirajte se:

[[!Registracija? &submitVar=`register-btn` &activationResourceId=`27` &activationEmailTpl=`Email.Activation` &activationEmailSubject=`Registrirani ste na example.com` &placeholderPrefix=`reg.` &successMsg=`

Hvala za registracijo. Na vaš email [[!+reg.email]] Poslano je bilo e-poštno sporočilo s povezavo za aktivacijo vašega računa. Za dokončanje registracije sledite tej povezavi.
` &usernameField=`email` &usergroupsField=`reg_type` &customValidators=`valueIn` &validate=`uporabniško ime:blank, reg_type:valueIn=^Bralci;Pisatelji;Lenilci ^, polno ime:potrebno:minLength=^6^, geslo:potrebno:minLength =^6^, password_confirm:password_confirm=^geslo^, email:required:email` ]] [[!+error.message:default=`[[!$Register.Form]]`]]

Upoštevajte, da so obvezne vse oznake, povezane z registracijo Nujno klic brez predpomnilnika. Ista pravila veljajo za obdelavo obrazcev z izrezkom FormIt.

Poglejmo parametre klica:

&submitVar=`register-btn`- določa atribut imena oznake vnos. To pomeni, da bo delček deloval le, če je obrazec oddan z gumbom z določenim imenom.

&activationResourceId=`42`- za naprej je 42 identifikator strani, na kateri bomo aktivirali uporabnika.

&activationEmailTpl=`Email.Activation`- kos z aktivacijskim pismom, več o tem kasneje.

&placeholderPrefix=`reg.`- označuje, da se morajo vsi nadomestni znaki, z redkimi izjemami (več o tem kasneje), ki so ustvarjeni v tem delčku, začeti z »reg.«

&uspeh Sporočilo– sporočilo, ki se izpiše ob uspešni oddaji obrazca. Upoštevajte, da lahko vsebuje vrednosti iz obrazca in katere koli druge oznake. To sporočilo prijavite se za nadomestni znak [[!+sporočilo o napaki]]. Precej nenavadno ime, pri čemer v dokumentaciji za ta trenutek napaka. Tam piše [[!+reg.error.message]], vendar iz kode komponente sledi, da temu ni tako.

&usernameField=`email`- določa, da bo polje elektronske pošte uporabljeno kot uporabniško ime.

&usergroupsField=`reg_type`- definira polje, ki določa skupino, v katero bo dodan nov uporabnik.

&customValidators=`valueIn`- določa dodatne validatorje, ki jih je treba ustvariti ročno.

&potrdi– validatorji so za posamezno polje podani ločeni z vejicami, če pa je za eno polje potrebnih več validatorjev, so le-ti ločeni tudi z dvopičjem. Oglejmo si jih ločeno:

uporabniško ime: prazno– preprosta past za neželeno pošto, pomeni, da je treba polje za uporabniško ime pustiti prazno.

reg_type:valueIn=^Bralci;Pisci;Lenilci^- omejimo možne skupine na tri navedene. Tega v začetni distribuciji ni in zlobni hekerji se lahko registrirajo na primer pod skupino Administrator (če je niste preimenovali).

fullname:required:minLength=^6^- polje za polno ime ne sme biti prazno in mora vsebovati najmanj 6 znakov.

geslo:obvezno:minLength=^6^- podobno za geslo.

password_confirm:password_confirm=^geslo^- Geslo se mora ujemati.

e-pošta:obvezno:e-pošta– e-pošta ne sme biti prazna in mora biti dejanska pošta.

Oblikovanje [[!+error.message:default=`[[!$Register.Form]]`]] prikaže sporočilo o uspešni oddaji obrazca ali dela obrazca, če ste pravkar obiskali stran ali jo nepravilno izpolnili.

Ustvarimo zgornji validator valueIn. Če želite to narediti, ustvarite delček z imenom valueIn in naslednjo kodo:

$valueIn = explode(";", $param); return in_array($value, $valueIn);

Zdaj morate ustvariti kos Registracija.Obrazec . V tem primeru bo tako (uporabljen je Bootstrap 3):

[[!+reg.error.fullname:notempty=`
[[!+reg.error.polno ime]]
`]]
[[!+reg.error.email:notempty=`
[[!+reg.error.email]]
`]]
[[!+reg.error.password:notempty=`
[[!+reg.error.password]]
`]]
[[!+reg.error.password_confirm:notempty=`
[[!+reg.error.password_confirm]]
`]]

Vsa polja so obvezna

V tem obrazcu bom omenil nekaj stvari v zvezi z MODX:


– se obrazec obdeluje na isti strani, na kateri je prikazan.

Nastavitev vrednosti izmed prejetih iz obrazca, tako da v primeru napake uporabniku ni treba znova vnašati vsega.

[[!+reg.error.email:notempty=`[[!+reg.error.email]]`]]– v primeru napake se pod poljem ponovno prikaže sporočilo o napaki.

– ne pozabite navesti imena gumba, če ste lastnost že nastavili &submitVar.


Zdaj ostane le še ustvariti kos E-pošta. Aktivacija s pismom, ki ga spletno mesto pošlje uporabniku:

Hvala za registracijo! Če želite aktivirati svoj račun, obiščite naslednjo povezavo:

Aktivirajte svoj račun na Example.Com

Po aktivaciji se boste lahko prijavili s svojim e-poštnim naslovom in geslom:

Vpiši se:[[+email]]

geslo:[[+geslo]]


Tukaj lahko uporabite ogradne oznake z imeni polj obrazca. Upoštevajte, da so napisani brez »reg.« Dodan je tudi nadomestni znak [[+confirmUrl]], v katerem je aktivacijska povezava že ustvarjena, vam sploh ni treba storiti ničesar.


Končni dotik umetnosti registracije novega računa z uporabo komponente Vpiši se ustvarjena bo aktivacijska stran. Za to stran uporabljamo prazno predlogo, v vsebini strani pa morate samo določiti klic oznake:

[[!ConfirmRegister? &redirectTo=`1`]]

kjer je 1 identifikator strani, na katero bo uporabnik preusmerjen, če je aktivacija uspešna. V tem primeru bo že prijavljen.


Začnimo z nastavljanjem prijave v uporabniški profil. Obrazec za avtorizacijo bo preprost:

Dodajmo ga tako, da ga pokličemo na pravo mesto:

[[!Vpiši se? &loginTpl=`Auth.Login` &logoutTpl=`Auth.Logout` &errTpl=`Auth.Login.Error` &actionKey=`dejanje` &loginKey=`prijava` &redirectToPrior=`1` &logoutResourceId=`1`]]

Tukaj določimo kos z zgoraj narisanim obrazcem za prijavo ( &loginTpl=`Auth.Login`), kos s kodo, prikazan pooblaščenim uporabnikom ( &logoutTpl=`Auth.Logout`), majhen kos z izhodom napake pri prijavi ( &errTpl=`Auth.Login.Error`). Sledijo parametri:

&actionKey=`dejanje` in &loginKey=`prijava`- glavni identifikatorji za obdelavo zahtevka. Prvi pomeni ime parametra v zahtevi POST, drugi pa njegovo vrednost. To pomeni, da mora obrazec posredovati vrednost $_POST["action"]="login", tako da delček Vpiši se ga obdelal.

&redirectToPrior=`1`- pomeni, da bomo po prijavi premaknjeni na isto stran, s katere smo vstopili.

&logoutResourceId=`1`- ko zapustimo profil, gremo na stran z ID 1.


Chunk Auth.Login :

[[!+napake]]

Obrazec se obdeluje na isti strani. Če pride do napake, bo prikazana pod obrazcem v označbi mesta [[!+napake]]. Zapomniti si morate tudi povezave do virov z registracijo in obnovitvijo gesla. Upoštevajte, da je v e-poštnem polju ime = “uporabniško ime” - v tem polju je delček podvojil e-poštno sporočilo Registrirajte se, in je edinstven za uporabnike.


Chunk Auth.Logout:

[]` &tpl=`User.HeaderBadge` &innerJoin=`("modUserGroupMember":("alias":"modUserGroupMember","on":"modUser.id = modUserGroupMember.member"), "modUserGroup":("alias" :"modUserGroup", "on":"modUserGroupMember.user_group = modUserGroup.id"))` &select=`("modUserGroup":("ime_skupine": "modUserGroup.name"))` ]]

Izhod iz profila

Ta del ni potreben, če so vsi uporabniki v isti skupini. Toda za prikaz uporabniške skupine standardni delčki, vključeni v komponento Login, niso dovolj. Napišete lahko preprost delček, da dobite ime skupine xPDO, lahko pa uporabite že pripravljen delček pdoUsers vključeno v paket pdoTools. Parametri, navedeni v tem delčku:

&users=`[[+modx.user.id]]`- izberite samo trenutno pooblaščenega uporabnika.

&tpl=`User.HeaderBadge`- kos, v katerem bomo prikazali kratke podatke o uporabniku.

¬ranjeJoin– JSON z združitvami tabel uporabniških skupin, opis presega obseg članka. Glavno da deluje J.

&izberi– JSON, ki izboru doda polje modUserGroup.name z vzdevkom group_name.


Kos z uporabniško značko User.HeaderBadge :

Prijavljeni ste kot [[+ime_skupine]][[+polno ime]] Osebni račun

Če ne bi potrebovali uporabniške skupine, bi lahko vsebino tega kosa vstavili neposredno v kos Auth.Logout . Tukaj lahko prikažete ogradne oznake s poljubnimi polji modUser in modUserProfile ter uporabo pdoUsers dodano polje ime_skupine.


V koščku Auth.Login.Error preprost izpis napake:

[[+sporočilo]]

Končali smo s prijavo. Na tej točki se lahko uporabnik uspešno registrira in prijavi. Kaj pa, če je pozabil geslo? V tem primeru klikne na povezavo "Ste pozabili geslo?" in gre na stran za obnovitev gesla, ki jo najprej ustvarimo in tam izvedemo klic:

[[!Ste pozabili geslo? &tpl=`Auth.ForgotPass.Form` &submitVar=`forgotpass` &errTpl=`Auth.Login.Error` &sentTpl=`Auth.ForgotPass.Sent` &emailTpl=`Email.ForgotPass` &emailSubject=`Obnovitev dostopa do vašega računa na primeru spletno mesto Com` &resetResourceId=`29`]]

Poglejmo parametre tega klica:

&tpl=`Auth.ForgotPass.Form`- kos obrazca, v katerega bo uporabnik vnesel svojo e-pošto.

&submitVar=`pozabljeno geslo`- v primeru izrezka ForgotPassword je dovolj, da se strežniku posreduje parameter z istim imenom in ne glede na to, s kakšno neprazno vrednostjo.

&errTpl=`Auth.Login.Error` - izpis napake, podoben delčku prijave

&sentTpl=`Auth.ForgotPass.Sent`- ta kos vsebuje vsebino, ki bo prikazana, če je e-poštno sporočilo za spremembo gesla uspešno poslano.

&emailTpl=`Email.ForgotPass`- samo pismo je tukaj.

&emailSubject=`Obnovitev dostopa do vašega računa na spletni strani Example.Com` - naslov pisma.

&resetResourceId=`29`- identifikator vira, na katerem bo geslo ponastavljeno na novo.


Kos Auth.ForgotPass.Form:

[[+loginfp.errors]]

Edina novost tukaj je drugačen način prikaza napak v označbi mesta [[+loginfp.errors]] in posredovanje parametra, da ta obrazec ponastavi geslo: .

Auth.ForgotPass.Sent:

Podatki o obnovitvi računa so bili poslani na navedeni e-poštni naslov: [[+email]].

Podatke iz zgornjega obrazca lahko uporabite tukaj.


Email.ForgotPass:

[[+polno ime]],

Če želite aktivirati svoje novo geslo, obiščite naslednjo povezavo:

Želim novo geslo

Če je šlo vse v redu, se boste lahko prijavili v svoj profil z naslednjimi podatki:

Vpiši se:[[+uporabniško ime]]

geslo:[[+geslo]]

Hvala vam,
Uprava spletnega mesta Primer.Com

Vse je zelo podobno delu aktivacijskega pisma, le geslo je tukaj ustvarjeno v delčku.


Zadnji korak je ustvariti vir, na katerega bo uporabnik šel iz e-pošte, da posodobi geslo. V tem viru potrebujemo klic:

[[!ResetPassword:empty=`

Niste naročili ponastavitve gesla. Morda imate napačen naslov. Lahko greste na glavno stran spletnega mesta ali uporabite zgornji meni.

`? &tpl=`Auth.ForgotPass.Reset`]]

Ta koda bo prikazala sporočilo, če nekdo nenadoma znova ali po nesreči obišče to stran. In če je geslo uspešno ponastavljeno, bo prikazano sporočilo iz kosa Auth.ForgotPass.Reset:

Vaše geslo je bilo uspešno ponastavljeno na tisto, ki je navedeno v e-poštnem sporočilu. Zdaj se lahko prijavite s tem geslom. Ne pozabite ga spremeniti v svojem profilu.

Zdaj imamo popolnoma delujoč sistem avtorizacije in registracije uporabnikov. Spreminjanje profila pooblaščenih uporabnikov bo izven obsega tega članka.


1. Ustvarite stran za registracijo in ji dodajte klic izrezka Registrirajte se.

2. Ustvarite kose z obrazcem za registracijo Registracija.Obrazec in aktivacijsko pismo E-pošta. Aktivacija.

3. Ustvarite stran za potrditev registracije in nanjo postavite klic izrezka PotrdiRegistracija.

4. Dodajte klic izrezka Vpiši se kamor želimo postaviti obrazec za prijavo in značko pooblaščenega uporabnika.

5. Ustvarite kos s prijavnim obrazcem Auth.Login , kos s podatki o pooblaščenem uporabniku Auth.Logout , kos s sporočilom o napaki Auth.Login.Error .

6. Ustvarite stran za obnovitev gesla in nanjo pokličite delček Ste pozabili geslo.

7. Ustvarite kos Auth.ForgotPass.Form z obrazcem za obnovitev gesla, kos Auth.ForgotPass.Sent s sporočilom o uspešnem pošiljanju pisma, kos Email.ForgotPass z e-pošto za ponastavitev gesla.

8. Ustvarite vir s končno ponastavitvijo gesla in vanj postavite klic izrezka Ponastavitev gesla.

9. Ustvarite kos Auth.ForgotPass.Reset s sporočilom, ki nakazuje, da je bilo geslo uspešno ponastavljeno.

To je vse. Vesela bom vsakršnih dopolnitev in komentarjev.

Pri izdelavi spletnih aplikacij je pomembno, da varnost jemljete resno, še posebej, ko se morate ukvarjati s pridobivanjem podatkov od uporabnikov.

Splošno varnostno pravilo je, da ne zaupate nikomur, zato se ne morete zanesti na uporabnike, da bodo v obrazce vedno vnesli pravilne vrednosti. Na primer, namesto pravilnega e-poštnega naslova v polje lahko uporabnik vnese napačen naslov ali celo zlonamerne podatke.

Ko gre za preverjanje uporabniških podatkov, se to lahko izvede na strani odjemalca (v spletnem brskalniku) ali na strani strežnika.

Prej je bilo preverjanje na strani odjemalca mogoče izvesti samo z uporabo JavaScripta. Toda vse se je spremenilo (ali skoraj spremenilo), saj je s pomočjo HTML5 mogoče preverjanje opraviti v brskalniku, ne da bi bilo treba pisati zapletene validacijske skripte v JavaScriptu.

Preverjanje obrazca z uporabo HTML5

HTML5 zagotavlja dokaj robusten mehanizem, ki temelji na naslednjih atributih oznak : vrsta , vzorec in zahteva . S temi novimi atributi lahko nekatere funkcije preverjanja podatkov prenesete v brskalnik.

Oglejmo si te atribute, da bomo razumeli, kako lahko pomagajo pri preverjanju obrazca.

atribut vrste

Ta atribut pove, katero vnosno polje prikazati za obdelavo podatkov, na primer znano polje, kot je

Nekatera vnosna polja že ponujajo standardne metode preverjanja brez potrebe po pisanju dodatne kode. na primer preveri polje in zagotovi, da se vnesena vrednost ujema s predlogo veljavnega e-poštnega naslova. Če v polje vnesete napačen znak, obrazca ni mogoče oddati, dokler vrednost ni popravljena.

Poskusite se poigrati z vrednostmi e-poštnih polj v spodnji predstavitvi.

Obstajajo tudi druge standardne vrste polj, npr , in za preverjanje številk, URL-jev in telefonskih številk.

Opomba: Formati telefonskih številk se od države do države razlikujejo zaradi razlik v številu števk v telefonskih številkah in razlik v formatih. Zaradi tega specifikacija ne določa algoritma za preverjanje telefonskih številk, zato brskalniki v času pisanja te funkcije slabo podpirajo.

Na našo srečo je mogoče preverjanje telefonske številke opraviti z atributom vzorca, ki kot argument vzame regularni izraz, ki si ga bomo ogledali v nadaljevanju.

atribut vzorca

Atribut vzorca bo verjetno poskrbel, da bodo številni razvijalci sprednjega dela poskočili od veselja. Ta atribut sprejme regularni izraz (podoben obliki regularnega izraza JavaScript), ki bo uporabljen za preverjanje pravilnosti podatkov, vnesenih v polje.

Regularni izrazi so jezik, ki se uporablja za razčlenjevanje in obdelavo besedila. Pogosto se uporabljajo za kompleksne operacije iskanja in zamenjave ter za preverjanje pravilnosti vnesenih podatkov.

Danes so regularni izrazi vključeni v večino priljubljenih programskih jezikov, pa tudi v številne skriptne jezike, urejevalnike, aplikacije, zbirke podatkov in pripomočke ukazne vrstice.

Regularni izrazi (RegEX) so zmogljivo, jedrnato in prilagodljivo orodje za ujemanje niza besedila, kot so posamezni znaki, besede ali vzorci znakov.

Če posredujete regularni izraz kot vrednost atributa vzorca, lahko določite, katere vrednosti so sprejemljive za dano vnosno polje, in uporabnika obvestite o napakah.

Oglejmo si nekaj primerov uporabe regularnih izrazov za preverjanje vrednosti vnosnih polj.

Telefonske številke

Kot smo že omenili, brskalniki ne podpirajo v celoti polja tel zaradi nedoslednosti v formatih telefonskih številk v različnih državah.

Na primer, v nekaterih državah je oblika za telefonske številke predstavljena kot xxxx-xxx-xxxx, sama telefonska številka pa bo približno takšna: 0803-555-8205 .

Regularni izraz, s katerim se ta vzorec ujema, je: ^\d(4)-\d(3)-\d(4)$ . V kodi se to lahko zapiše takole:

Alfanumerične vrednosti

zahtevan atribut

To je logični atribut, ki se uporablja za označevanje, da je treba za oddajo obrazca izpolniti vrednost danega polja. Ko dodate ta atribut v polje, bo brskalnik zahteval, da uporabnik izpolni to polje, preden odda obrazec.

To nam prihrani izvajanje preverjanja polja z uporabo JavaScripta, kar lahko razvijalcem prihrani nekaj časa.

Na primer: oz (za združljivost XHTML)

Vse predstavitve, ki ste jih videli zgoraj, uporabljajo obvezni atribut, zato ga lahko preizkusite tako, da poskusite oddati obrazec, ne da bi izpolnili katero koli polje.

Zaključek

Podpora brskalnika za preverjanje obrazcev je precej dobra, pri starejših brskalnikih pa lahko uporabite polifile.

Treba je omeniti, da je zanašanje samo na preverjanje na strani brskalnika nevarno, saj lahko napadalci ali roboti ta preverjanja zlahka zaobidejo.

Vsi brskalniki ne podpirajo HTML5 in vsi podatki, poslani v vaš skript, ne bodo prišli iz vašega obrazca. To pomeni, da je treba pred dokončnim sprejemom podatkov od uporabnika preveriti njihovo pravilnost na strani strežnika.

»Zaščita pred norci« je nabor ukrepov za preprečevanje vnosa napačnih podatkov v obrazec. Na primer, če morate v polje vnesti pozitivno število od 0 do 10, morate preveriti, da uporabnik ne vnese besedila ali števila, ki ni v navedenem obsegu, tj. število ne sme biti manjše od nič in večje od deset.

Zakaj so vneseni napačni podatki? To se izvaja predvsem iz treh razlogov.

  1. Uporabnik se je pomotoma zmotil, na primer, nepozorno je prebral, kar je moral navesti.
  2. Spletna stran sprašuje po podatkih na dvoumen način, tako da uporabnik ugiba in ugiba, kaj pravzaprav želi. Vendar se mnenja razvijalca in uporabnika ne ujemajo vedno.
  3. Obstaja veliko ljudi, ki navodila dojemajo kot izziv in poskušajo narediti nasprotno. Takšni uporabniki razmišljajo nekako takole: »Ja, prosijo me, da vnesem številko. Kaj se bo zgodilo, če označim črke?« Potem vprašajo očitno napačne informacije in vidijo, do česa to vodi.

Treba je razumeti, da natančno in pravilno besedilo, čeprav zmanjšuje verjetnost napak, vas nikakor ne reši pred njimi. Samo tehnična sredstva na strani strežnika vam omogočajo, da dobite zahtevani rezultat in se izognete vnosu napačnih podatkov. Vendar pa revizija ali, kot se imenuje tudi validacija na strani odjemalca, omogoča hitro preverjanje pravilnosti podatkov, ki jih vnese uporabnik, brez pošiljanja obrazca na strežnik. To uporabniku prihrani čas in zmanjša obremenitev strežnika. Z vidika uporabnosti so tudi prednosti - uporabnik takoj prejme sporočilo o tem, kateri podatek je napačno vnesel in lahko svojo napako popravi.

Obvezno polje

Nekatera polja obrazca je treba izpolniti, preden so poslana na strežnik. To na primer velja za obrazec za registracijo, kjer morate vnesti prijavo in geslo. Če želite določiti zahtevana polja, uporabite obvezni atribut, kot je prikazano v 1. primeru.

Primer 1. Zahtevani atribut

HTML5 IE 10+ Cr Op Sa Fx

Obvezno polje

Vpiši se:

geslo:

Obvezna polja morate izpolniti pred oddajo obrazca, sicer obrazec ne bo poslan na strežnik in bo brskalnik o tem opozoril. Vrsta sporočila je odvisna od brskalnika, Chrome na primer prikaže opis orodja, kot je prikazano na sl. 1.

riž. 1. Zahtevano polje ni izpolnjeno

Pravilnost podatkov

Na začetku sta dve polji, v katerih se samodejno preveri uporabniški vnos. To sta spletni naslov in e-poštni naslov. Chrome preveri tudi veljavnost polja koledarja, vendar le zato, ker nima vmesnika za klikni za koledar. Za te elemente veljajo naslednja pravila.

  • Spletni naslov ( ) mora vsebovati protokol (http://, https://, ftp://).
  • Email naslov ( ) mora vsebovati črke ali številke pred simbolom @, za njim, nato piko in domeno prve ravni.

Brskalniki imajo nekoliko drugačna pravila za preverjanje uporabniških podatkov. Na primer, Opera samodejno vstavi protokol http:// pred vneseno besedilo, medtem ko drugi brskalniki čakajo na to od uporabnika. Chrome in Opera zahtevata piko v e-poštnem naslovu; Firefox je ne zahteva.

2. primer prikazuje obrazec z zahtevanimi polji, v katerem dve polji potrdi brskalnik.

Primer 2: Pravilnost podatkov

HTML5 IE 10+ Cr Op Sa Fx

Pravilnost podatkov

Izpolnite obrazec (vsa polja so obvezna)

ime:

E-naslov:

Spletna stran:

Opera element obrazca preveri le, če ima atribut imena.

Kaj se zgodi v Operi, ko vnesete napačne podatke, je prikazano na sl. 2.

riž. 2. Opozorilo o nepravilnih podatkih

Predloga za vnos

Nekaterih podatkov ni mogoče razvrstiti v enega od tipov elementov obrazca, zato morate zanje uporabiti besedilno polje. Hkrati se vnašajo po določenem standardu. Tako naslov IP vsebuje štiri številke, ločene s piko (192.168.0.1), poštna številka Rusije je omejena na šest mest (124007), telefonska številka vsebuje območno kodo in določeno število števk, pogosto ločenih z vezaj (391 555-341-42) itd. Brskalnik mora določiti vnosno predlogo, tako da po njej preverja podatke, ki jih vnese uporabnik. Za to se uporabi atribut vzorec, njegova vrednost pa je regularni izraz. Nekatere tipične vrednosti so navedene v tabeli. 1.

Primer 3 od vas zahteva, da vnesete šestnajstiško vrednost barve (#ffcc00) in če ni v tem obsegu, brskalnik prikaže sporočilo o napaki.

Primer 3. Vnosna predloga

HTML5 IE 10+ Cr Op Sa Fx

Barvni vnos

Vnesite šestnajstiško barvno vrednost (začeti se mora z #)

Na sl. Slika 3 prikazuje opozorilo v brskalniku Chrome.

riž. 3. Vneseni podatki se ne ujemajo s predlogo

Razveljavitev veljavnosti

Validacija ni vedno potrebna za obrazec; razvijalec bo na primer želel uporabiti univerzalno rešitev JavaScript in ne bo več potreboval podvojenega preverjanja v brskalniku. V takih primerih morate onemogočiti vgrajeno preverjanje veljavnosti. Če želite to narediti, uporabite atribut novalidate oznake

. Primer 4 prikazuje uporabo tega atributa.

Primer 4: Razveljavitev veljavnosti

HTML5 IE 10+ Cr Op Sa Fx

atribut novalidate

Za podoben namen se uporablja atribut formnovalidate, ki je dodan gumbu za oddajo obrazca, v tem primeru oznaki . V tem primeru bo obrazec iz primera 4 izgledal takole.