Ch 6 sa vyžaduje prihlásenie pomocou mena. Bezpečnosť používateľských údajov. Riešenia problému „Hops, vyskytla sa chyba“ na Instagrame

Uverejnené 23. októbra o 23:15.

Používanie overenia používateľského mena na zvýšenie bezpečnosti účtu

Ako dodatočné bezpečnostné opatrenie vám poskytujeme systém overovania používateľského mena na zvýšenie bezpečnosti účtu na určitých stránkach EA vrátane stránky vášho účtu EA.

  • Pozor hráči FIFA: túto funkciu potrebné na prístup k serverom FIFA Ultimate Team a partnerským aplikáciám.

Toto bezpečnostné opatrenie je navrhnuté tak, aby zabránilo ľuďom prihlásiť sa do vášho účtu EA z neznámych zariadení bez hesla a overenia vášho používateľského mena. Oznámenia budú odoslané na váš mobilný telefón alebo e-mail podľa vášho výberu. Počas procesu overovania používateľského mena dočasné digitálnych kódov prístup pre každého konkrétneho používateľa potrebný na prihlásenie do účtu z neznámeho zariadenia.


Povoliť overenie používateľského mena

1. Prejdite na ea.com a prihláste sa.

2. Kliknite na svoje používateľské meno a potom vyberte „Môj účet“.

3. Vyberte kartu Zabezpečenie, kde nájdete časť Overenie používateľského mena.

4. Kliknite na Povoliť, aby ste povolili overenie používateľského mena, zadajte svoju bezpečnostnú otázku a vyberte jednu z možností: e-mail, aplikácia identity alebo SMS na prijatie overovacieho kódu.

  • Ak vyberiete možnosť " Email“ namiesto SMS sa uistite, že e-mailová adresa poskytnutá pre váš účet je platná a funkčná adresa, ktorú pravidelne kontrolujete, či nemáte nové správy.
  • Identifikačná aplikácia pre tablety a mobilné telefóny vám umožňuje na týchto zariadeniach vygenerovať overovacie kódy na prihlásenie sa do vášho účtu.
  • Z rozbaľovacieho zoznamu vyberte typ zariadenia a stiahnite si aplikáciu Google Authenticator pre zariadenia Apple a Android alebo Authenticator pre zariadenia používajúce operačný systém Windows.
  • Hráči hry FIFA 15 na PlayStation 3 a Xbox 360 nebudú musieť pri overovaní svojho používateľského mena pomocou overovacej aplikácie prijímať ďalšie bezpečnostné opatrenia.

5. Teraz dostanete overovací kód, keď sa pokúsite prihlásiť z neznámeho zariadenia. Každých 90 dní dostanete overovací kód, keď sa prihlásite do svojho účtu z dôveryhodných zariadení. Týmto spôsobom budete mať prístup k svojmu účtu EA iba vy pomocou jedinečného kódu.


V prípade potreby môžete overenie používateľského mena zakázať tak, že sa vrátite na stránku správy účtu a vyberiete možnosť Zakázať.*

Poznámka

  • *Nezakazujte overenie používateľského mena, ak hráte FIFA Ultimate Team, inak vám bude zamietnutý prístup.
  • Nezabudnite tiež vytvoriť a potvrdiť bezpečnostnú otázku a odpoveď pre tím FIFA Ultimate Team.

Nastavte si aplikáciu na identifikáciu

Aplikácia na identifikáciu je najviac rýchly spôsob bezpečne overte svoju totožnosť. Nastavte si na svojom zariadení identifikačnú aplikáciu mobilné zariadenie na prihlásenie pomocou kódu, ktorý vygeneruje na dvojkrokovú identifikáciu.

1. Otvorte kartu Zabezpečenie na stránke Môj účet a nájdite časť Overenie používateľského mena.

2. Kliknite na Povoliť, aby ste povolili overenie používateľského mena, odpovedzte na bezpečnostnú otázku, vyberte Aplikácia identity a kliknite na Pokračovať.

3. Z rozbaľovacieho zoznamu vyberte operačný systém telefónu, ktorý potrebujete, a naskenujte QR kód pomocou aplikácie na čítanie čiarových kódov alebo vyhľadajte v obchode s aplikáciami pre svoj telefón autentifikátor pre príslušnú aplikáciu: Google Authenticator pre Android a iOS alebo Authenticator pre Windows Telefón.

4. Otvorte aplikáciu identifikácie a vyberte možnosť manuálneho pridania účtu.

5. Naskenujte QR kód alebo zadajte tajný kód na prepojenie aplikácie identity s vaším účtom EA.

6. Dokončite nastavenie identifikačnej aplikácie zadaním kódu, ktorý vygenerovala pre váš účet Electronic Arts, a kliknutím na „Povoliť overenie používateľského mena“.

Keď budete v budúcnosti potrebovať overiť svoje používateľské meno:

1. Otvorte aplikáciu identifikácie.

2. Zadajte šesťmiestny kód vášho účtu Electronic Arts.

Vygenerovaný kód má obmedzenú platnosť. Ak platnosť vášho aktuálneho kódu už čoskoro vyprší, počkajte, kým aplikácia vygeneruje nový kód, aby ste mali dostatok času na jeho zadanie.

Čo mám robiť, ak ho nemôžem použiť? mobilný telefón alebo e-mail, keď potrebujem kód? Je možné vygenerovať pomocné kódy?

Ak váš telefón, ID resp e-mailom nie sú vám k dispozícii, jediná cesta Prihlásenie do účtu EA z neznámeho počítača - použitie asistenčných kódov. Nezabudnite ich uložiť na bezpečné a dostupné miesto. Tieto kódy si môžete zobraziť a aktualizovať vo svojom účte EA v časti Nastavenia ochrany osobných údajov v klientovi Origin alebo online.

  • Kliknite na „Zabezpečenie“, potom na „Zobraziť“ a „Kódy pomoci“.*
  • Môžete tiež použiť funkciu „Vyžiadať nový kód po prihlásení do FIFA Ultimate Team“.

*Ak sa vám minú podporné kódy, môžete si vygenerovať nové na stránke Správa účtu.

Potvrďte kontaktné informácie aby ste sa uistili, že kód je správny.

Ak máte problémy s overovacím kódom svojho používateľského mena, uistite sa, že je vaša e-mailová adresa alebo telefónne číslo zadané správne. Pri používaní identifikátora sa uistite, že je program správne nainštalovaný.

  • Ak ste sa rozhodli poslať kód na váš e-mail pri aktivácii overenia používateľského mena, môžete skontrolovať a aktualizovať svoju e-mailovú adresu v sekcii O mne na stránke Správa účtu alebo prostredníctvom klienta Origin.
  • Ak vyberiete aplikáciu Identity App, môžete pomocou čiarového kódu alebo QR kódu naskenovať a vyhľadať kód medzi ?secret= a &.
  • Ak ste si pri aktivácii overenia používateľského mena vybrali možnosť zaslania kódu cez SMS, svoje telefónne číslo si môžete skontrolovať a aktualizovať v sekcii Zabezpečenie na stránke správy účtu alebo prostredníctvom klienta Origin.
  • Vytvorte alebo potvrďte bezpečnostnú otázku a odpoveď.

Po potvrdení kontaktných údajov budete mať možnosť povoliť overenie používateľského mena, aby ste dostali nový kód.

Prečo som dostal tento formulár?

Na vašej stránke momentálne prebieha útok hrubou silou. Útok hrubou silou je útok na uhádnutie hesla. IN v tomto prípade je vybraté heslo pre administratívny panel vašej lokality.

Aby sme zabránili napadnutiu vašej stránky a zvýšili jej bezpečnosť, nainštalovali sme dodatočnú ochranu.

Ako sa teraz dostanem na panel správcu stránky?

Teraz, keď vstúpite na administratívny panel vašej stránky (na Joomla alebo WordPress), zobrazí sa ďalšie okno na zadanie vášho prihlasovacieho mena a hesla s nápisom „použite heslo ovládacieho panela“. Ako prihlasovacie meno musíte zadať prihlasovacie meno vašej hostingovej služby, vyzerá to tak "u1234567". Heslo je aktuálne heslo pre vašu hostingovú službu.

Po absolvovaní základnej HTTP autentifikácie sa vám v administračnom paneli vášho webu zobrazí štandardné prihlasovacie pole. Teraz budete musieť zadať prihlasovacie meno a heslo správcu stránky.

Ako funguje základná autentifikácia HTTP

Pri zadávaní prihlasovacieho hesla v okne základnej autentifikácie sa hodnota prihlásenia a hash hesla budú porovnávané s hodnotami v špeciálnom súbore ~/etc/users, k dispozícii na ovládacom paneli vášho hostingu. Obsah súboru vyzerá asi takto: "u1234567:dm48bspxIO3rg". Kde „u1234567“ je prihlasovacie meno a „dm48bspxIO3rg“ je hash hesla(poznámka: iba hash, nie samotné heslo!). Hash hesla je výsledkom konverzie hesla pomocou špecifického algoritmu.

Keď teda zadáte svoje prihlasovacie meno a heslo do okna základnej autentifikácie, zadané heslo sa prevezme hash a porovná sa s hodnotou hash v súbore ~/etc/users. Ak sa hodnoty zhodujú, ste overení.

Nemôžem prejsť základnou autentifikáciou

Pravdepodobne zadávate nesprávne heslo. Nastavte nové heslo pre základnú autentifikáciu:

Ak ste prešli základnou autentifikáciou, ale nemôžete sa prihlásiť priamo do administračného panela vašej stránky Joomla alebo WordPress, použite pomocníka:

Ako zvýšiť ochranu vášho webu pred útokmi Brute-force?

Ak chcete zvýšiť bezpečnosť stránok:

  • zmeniť prihlásenie superužívateľa na jedinečnejšie. Nepoužívajte krátke mená, je lepšie, ak použijete krstné meno spolu s priezviskom. Na internete je veľa zdrojov, kde sa zhromažďujú najobľúbenejšie prihlasovacie údaje. Zoznámte sa s nimi a nikdy ich nepoužívajte;
  • Nastavte zložité heslo správcu lokality. Zložité heslo musí obsahovať veľké a malé písmená, čísla a ďalšie znaky, ako napríklad "* - _ #:" atď. Dĺžka hesla nie je kratšia ako 6 znakov. Výhodne 10 a viac.

Ako odstrániť formulár HTTP Basic Authentication?

Ak chcete odstrániť formulár základného overenia HTTP:

AuthType Basic AuthName "použite heslo ovládacieho panela" AuthUserFile .../users Vyžadovať platného používateľa

Ak chcete komentovať riadok, vložte na začiatok riadku symbol hash („#“), ako je tento.

Budeme potrebovať nasledujúce stránky:

  • Registračná stránka s registračným formulárom
  • Stránka aktivácie účtu
  • Stránka na obnovenie hesla
  • Stránka na obnovenie hesla

Prihlasovací formulár lokality bude umiestnený na všetkých stránkach lokality (napríklad v hlavičke).

Toto je registračná stránka, ktorú chceme získať:

Tu typ účtu určí, do ktorej skupiny používateľa zaregistrujeme. Identifikačné pole (používateľské meno) bude tiež e-mail.

Pridajte na stránku volanie úryvku Registrovať:

[[!Registrovať? &submitVar=`register-btn` &activationResourceId=`27` &activationEmailTpl=`Email.Activation` &activationEmailSubject=`Ste zaregistrovaný na example.com` &placeholderPrefix=`reg.` &successMsg=`

Ďakujeme za registráciu. Na Váš email [[!+reg.email]] Bol odoslaný e-mail s odkazom na aktiváciu vášho účtu. Registráciu dokončíte kliknutím na tento odkaz.
` &usernameField=`email` &usergroupsField=`reg_type` &customValidators=`valueIn` &validate=`používateľské meno:prázdne, reg_type:valueIn=^Čitatelia;Spisovatelia;Idlers ^, celé meno:povinné:minDĺžka=^6^,vyžadované heslo =^6^, password_confirm:password_confirm=^password^, email:required:email` ]] [[!+error.message:default=`[[!$Register.Form]]`]]

Upozorňujeme, že všetky značky súvisiace s registráciou sú povinné Nevyhnutne hovor neuložený do vyrovnávacej pamäte. Rovnaké pravidlá platia pri spracovaní formulárov s útržkom FormIt.

Pozrime sa na parametre hovoru:

&submitVar=`register-btn`- určuje atribút názvu značky vstup. To znamená, že úryvok bude fungovať iba vtedy, ak sa formulár odošle s tlačidlom s konkrétnym názvom.

&activationResourceId=`42`- pri pohľade dopredu je 42 identifikátor stránky, na ktorej používateľa aktivujeme.

&activationEmailTpl=`E-mail.Aktivácia`- kus s aktivačným listom, o tom neskôr.

&placeholderPrefix=`reg.`- označuje, že všetky zástupné symboly, so zriedkavými výnimkami (viac o tom neskôr), ktoré sú vytvorené v tomto úryvku, musia začínať „reg.“

&úspechSpráva– správa, ktorá sa zobrazí po úspešnom odoslaní formulára. Všimnite si, že môže obsahovať hodnoty z formulára a akékoľvek iné značky. Táto správa zaregistrujte sa na zástupný symbol [[!+error.message]]. Dosť zvláštny názov a v dokumentácii pre tento moment chyba. Je to tam napísané [[!+reg.error.message]], ale z kódu komponentu vyplýva, že to tak nie je.

&usernameField=`e-mail`- určuje, že pole e-mailu sa použije ako používateľské meno.

&usergroupsField=`reg_type`- definuje pole, ktoré určuje skupinu, do ktorej bude nový používateľ pridaný.

&customValidators=`valueIn`- určuje ďalšie validátory, ktoré je potrebné vytvoriť manuálne.

&potvrdiť– validátory sú špecifikované oddelené čiarkami pre každé pole a ak je pre jedno pole vyžadovaných viacero validátorov, sú oddelené aj dvojbodkou. Pozrime sa na ne samostatne:

užívateľské meno: prázdne– jednoduchá pasca na spam, to znamená, že pole používateľského mena by malo zostať prázdne.

reg_type:valueIn=^Čitatelia;Spisovatelia;Lenči^- možné skupiny obmedzíme na tri uvedené. V prvotnej distribúcii nič také nie je a zlí hackeri sa môžu zaregistrovať napríklad pod skupinou Administrators (ak ste ju nepremenovali).

celé meno:požadované:minDĺžka=^6^- pole pre celé meno nesmie byť prázdne a obsahovať aspoň 6 znakov.

password:required:minLength=^6^- podobné pre heslo.

password_confirm:password_confirm=^heslo^- heslá sa musia zhodovať.

email:required:email– e-mail nesmie byť prázdny a musí ísť o skutočnú poštu.

Dizajn [[!+error.message:default=`[[!$Register.Form]]`]] zobrazí správu o úspešnom odoslaní formulára alebo časti formulára, ak ste práve navštívili stránku alebo ju vyplnili nesprávne.

Vytvorme vyššie uvedený validátor valueIn. Ak to chcete urobiť, vytvorte úryvok s názvom valueIn a nasledujúci kód:

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

Teraz musíte vytvoriť kúsok Registračný formulár . V tomto prípade to bude nasledovné (použije sa Bootstrap 3):

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

Všetky polia sú povinné

V tejto forme uvediem niekoľko vecí týkajúcich sa MODX:


– formulár sa spracuje na tej istej stránke, na ktorej je zobrazený.

Nastavenie hodnoty z tých prijatých z formulára tak, aby v prípade zlyhania nemusel užívateľ zadávať všetko znova.

[[!+reg.error.email:notempty=`[[!+reg.error.email]]`]]– opäť v prípade poruchy sa pod poľom zobrazí chybové hlásenie.

– nezabudnite uviesť názov tlačidla, ak ste predtým nastavili vlastnosť &submitVar.


Teraz už zostáva len vytvoriť kúsok Email.Aktivácia s listom, ktorý stránka odošle používateľovi:

Ďakujeme za registráciu! Ak chcete aktivovať svoj účet, kliknite na nasledujúci odkaz:

Aktivujte si svoj účet na example.com

Po aktivácii sa budete môcť prihlásiť pomocou svojho e-mailu a hesla:

Prihlásiť sa:[[+e-mail]]

heslo:[[+heslo]]


Tu môžete použiť zástupné symboly s názvami polí formulára. Upozorňujeme, že sú napísané bez „reg.“ Pridá sa aj zástupný symbol [[+confirmUrl]], v ktorej už bol vygenerovaný aktivačný odkaz, nemusíte ani nič robiť.


Dokončenie umenia registrácie nového účtu pomocou komponentu Prihlásiť sa vytvorí sa aktivačná stránka. Pre túto stránku používame prázdnu šablónu a v obsahu stránky stačí zadať volanie značky:

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

kde 1 je identifikátor stránky, na ktorú bude používateľ presmerovaný v prípade úspešnej aktivácie. V tomto prípade už bude prihlásený.


Začnime nastavovať prihlásenie do užívateľského profilu. Autorizačný formulár bude jednoduchý:

Pridajme to tak, že to zavoláme na správne miesto:

[[!Prihlásiť sa? &loginTpl=`Auth.Login` &logoutTpl=`Auth.Logout` &errTpl=`Auth.Login.Error` &actionKey=`action` &loginKey=`login` &redirectToPrior=`1` &logoutResourceId=`1`]]

Tu špecifikujeme časť s prihlasovacím formulárom nakresleným vyššie ( &loginTpl=`Auth.Login`), kus s kódom zobrazeným oprávneným používateľom ( &logoutTpl=`Auth.Logout`), malý kúsok s výstupom chyby prihlásenia ( &errTpl=`Auth.Login.Error`). Nasledujúce parametre sú:

&actionKey=`akcia` A &loginKey=`prihlásenie`- hlavné identifikátory na spracovanie žiadosti. Prvý znamená názov parametra v požiadavke POST a druhý znamená jeho hodnotu. To znamená, že formulár musí odovzdať hodnotu $_POST["action"]="login", aby úryvok Prihlásiť sa spracoval to.

&redirectToPrior=`1`- znamená, že po prihlásení sa presunieme na tú istú stránku, z ktorej sme vstúpili.

&logoutResourceId=`1`- pri odchode z profilu prejdeme na stránku s ID 1.


Chunk Auth.Login :

[[!+chyby]]

Formulár sa spracováva na tej istej stránke. Ak sa vyskytne chyba, zobrazí sa pod formulárom v zástupnom symbole [[!+chyby]]. Musíte si tiež zapamätať odkazy na zdroje s registráciou a obnovením hesla. Upozorňujeme, že v poli email name = „username“ – práve v tomto poli úryvok duplikoval email Registrovať a je jedinečný pre používateľov.


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":("group_name": "modUserGroup.name"))` ]]

Ukončiť profil

Táto časť nie je potrebná, ak sú všetci používatelia v rovnakej skupine. Na zobrazenie skupiny používateľov však štandardné úryvky zahrnuté v komponente Login nestačia. Ak chcete získať názov skupiny, môžete napísať jednoduchý úryvok xPDO, alebo môžete použiť hotový úryvok pdoUsers súčasťou balenia pdoTools. Parametre špecifikované v tomto úryvku:

&users=`[[+modx.user.id]]`- vyberte iba aktuálneho oprávneného používateľa.

&tpl=`User.HeaderBadge`- kus, v ktorom zobrazíme stručné informácie o používateľovi.

&vnútornéPripojiť sa– JSON so spojeními tabuliek skupín používateľov, popis je nad rámec článku. Hlavné je, že to funguje J.

&vybrať– JSON, ktorý do výberu pridá pole modUserGroup.name s aliasom názov_skupiny.


Kus s odznakom používateľa User.HeaderBadge :

Ste prihlásený ako [[+group_name]][[+fullname]] Osobný účet

Ak by sme nepotrebovali skupinu používateľov, obsah tohto bloku by sa dal vložiť priamo do bloku Auth.Logout . Tu môžete zobraziť zástupné symboly s ľubovoľnými poľami modUser a modUserProfile plus pomocou pdoUsers pole pridané názov skupiny.


V kúsku Auth.Login.Error jednoduchý chybový výstup:

[[+msg]]

S prihlásením sme skončili. V tomto bode sa používateľ môže zaregistrovať a úspešne sa prihlásiť. Ale čo ak zabudol heslo? V tomto prípade klikne na odkaz „Zabudli ste heslo? a prejde na stránku na obnovenie hesla, ktorú najprv vytvoríme a zavoláme tam:

[[!Zabudol si heslo? &tpl=`Auth.ForgotPass.Form` &submitVar=`forgotpass` &errTpl=`Auth.Login.Error` &sentTpl=`Auth.ForgotPass.Sent` &emailTpl=`Email.ForgotPass` &emailSubject=`Obnovenie prístupu k vášmu účtu webová stránka Com` &resetResourceId=`29`]].

Pozrime sa na parametre tohto hovoru:

&tpl=`Auth.ForgotPass.Form`- časť formulára, do ktorého používateľ zadá svoj e-mail.

&submitVar=`zabudnuté heslo`- v prípade úryvku ForgotPassword stačí, aby bol serveru odovzdaný parameter s rovnakým názvom a bez ohľadu na to, s akou neprázdnou hodnotou.

&errTpl=`Auth.Login.Error` - chybový výstup podobný útržku prihlásenia

&sentTpl=`Auth.ForgotPass.Sent`- tento blok obsahuje obsah, ktorý sa zobrazí, ak bude e-mail na zmenu hesla úspešne odoslaný.

&emailTpl=`Email.ForgotPass`- samotný list je obsiahnutý tu.

&predmet emailu=`Obnovenie prístupu k vášmu účtu na webovej stránke Example.Com` – názov listu.

&resetResourceId=`29`- identifikátor zdroja, na ktorom bude heslo resetované na nové.


Chunk Auth.ForgotPass.Form:

[[+loginfp.errors]]

Jedinou novinkou je tu odlišný spôsob zobrazenia chýb v zástupnom symbole [[+loginfp.errors]] a odovzdaním parametra, že tento konkrétny formulár resetuje heslo: .

Auth.ForgotPass.Sent:

Informácie na obnovenie účtu boli odoslané na zadaný e-mail: [[+e-mail]].

Tu môžete použiť údaje z vyššie uvedeného formulára.


Email.ForgotPass:

[[+celé meno]],

Ak chcete aktivovať svoje nové heslo, kliknite na nasledujúci odkaz:

Chcem nové heslo

Ak všetko prebehlo v poriadku, budete sa môcť prihlásiť do svojho profilu pomocou nasledujúcich údajov:

Prihlásiť sa:[[+používateľské meno]]

heslo:[[+heslo]]

Ďakujem,
Správa stránky Example.Com

Všetko je veľmi podobné kúsku aktivačného listu, iba heslo sa tu vygeneruje v úryvku.


Posledným krokom je vytvorenie zdroja, na ktorý používateľ prejde z e-mailu, aby aktualizoval heslo. V tomto zdroji potrebujeme hovor:

[[!ResetPassword:empty=`

Neobjednali ste si obnovenie hesla. Možno máte nesprávnu adresu. Môžete prejsť na hlavnú stránku webu alebo použiť ponuku vyššie.

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

Tento kód zobrazí správu, ak niekto náhle znova navštívi túto stránku alebo len náhodou. A ak je heslo úspešne resetované, zobrazí sa správa z bloku Auth.ForgotPass.Reset:

Vaše heslo bolo úspešne obnovené na heslo uvedené v e-maile. Teraz sa môžete prihlásiť pomocou tohto hesla. Nezabudnite si to zmeniť vo svojom profile.

Teraz máme plne funkčný systém autorizácie a registrácie používateľov. Zmena profilu oprávnených používateľov bude ponechaná mimo rozsahu tohto článku.


1. Vytvorte registračnú stránku a pridajte na ňu úryvok Registrovať.

2. Vytvorte kúsky pomocou registračného formulára Registračný formulár a aktivačný list Email.Aktivácia.

3. Vytvorte stránku s potvrdením registrácie a umiestnite na ňu úryvok Potvrdiť registráciu.

4. Pridajte úryvok hovoru Prihlásiť sa kde chceme umiestniť prihlasovací formulár a odznak oprávneného používateľa.

5. Vytvorte blok pomocou prihlasovacieho formulára Auth.Login , kus s informáciami o oprávnenom používateľovi Auth.Logout , kus s chybovým hlásením Auth.Login.Error .

6. Vytvorte stránku na obnovenie hesla a umiestnite na ňu úryvok Zabudol si heslo.

7. Vytvorte kus Auth.ForgotPass.Form s formulárom na obnovenie hesla, chunk Auth.ForgotPass.Sent so správou o úspešnom odoslaní listu, kus Email.ForgotPass s e-mailom na obnovenie hesla.

8. Vytvorte zdroj s konečným resetovaním hesla a umiestnite do neho úryvok Obnoviť heslo.

9. Vytvorte kus Auth.ForgotPass.Reset so správou oznamujúcou, že heslo bolo úspešne resetované.

To je všetko. Budem rád za akékoľvek doplnenia a pripomienky.

Pri vytváraní webových aplikácií je dôležité brať bezpečnosť vážne, najmä keď musíte riešiť získavanie údajov od používateľov.

Všeobecným bezpečnostným pravidlom je nedôverovať nikomu, takže sa nemôžete spoliehať na to, že používatelia budú do formulárov vždy zadávať správne hodnoty. Napríklad namiesto zadania správnej e-mailovej adresy do poľa môže používateľ zadať nesprávnu adresu alebo dokonca nejaké škodlivé údaje.

Pokiaľ ide o overenie používateľských údajov, môže to byť vykonané buď na strane klienta (vo webovom prehliadači) alebo na strane servera.

Predtým bolo možné overenie na strane klienta vykonávať iba pomocou JavaScriptu. Všetko sa však zmenilo (alebo takmer zmenilo), keďže pomocou HTML5 je možné overenie vykonať v prehliadači bez nutnosti písať zložité overovacie skripty v JavaScripte.

Overenie formulára pomocou HTML5

HTML5 poskytuje pomerne robustný mechanizmus založený na nasledujúcich atribútoch značiek : typ , vzor a požadované . Pomocou týchto nových atribútov môžete presunúť niektoré funkcie overovania údajov na prehliadač.

Pozrime sa na tieto atribúty, aby sme pochopili, ako môžu pomôcť pri overovaní formulárov.

atribút typu

Tento atribút hovorí, ktoré vstupné pole sa má zobraziť na spracovanie údajov, napríklad známe pole

Niektoré vstupné polia už poskytujú štandardné metódy overenia bez potreby písať ďalší kód. Napríklad, skontroluje pole, aby sa uistil, že zadaná hodnota sa zhoduje so šablónou platnej e-mailovej adresy. Ak je do poľa zadaný nesprávny znak, formulár nemožno odoslať, kým sa hodnota neopraví.

Skúste sa pohrať s hodnotami e-mailových polí v ukážke nižšie.

Existujú aj iné štandardné typy polí, napr , A na overenie čísel, adries URL a telefónnych čísel.

Poznámka: Formáty telefónnych čísel sa v jednotlivých krajinách líšia v dôsledku rozdielov v počte číslic v telefónnych číslach a rozdieloch vo formátoch. Výsledkom je, že špecifikácia nedefinuje algoritmus na kontrolu telefónnych čísel, takže v čase písania je táto funkcia prehliadačmi nedostatočne podporovaná.

Našťastie pre nás je možné overenie telefónneho čísla vykonať pomocou atribútu vzor, ​​ktorý berie ako argument regulárny výraz, na ktorý sa pozrieme ďalej.

atribút vzoru

Atribút vzor pravdepodobne spôsobí, že mnohí vývojári front-endu budú skákať od radosti. Tento atribút akceptuje regulárny výraz (podobný formátu regulárneho výrazu JavaScript), ktorý sa použije na kontrolu správnosti údajov zadaných do poľa.

Regulárne výrazy sú jazyk používaný na analýzu a manipuláciu s textom. Často sa používajú na zložité operácie vyhľadávania a nahrádzania, ako aj na kontrolu správnosti zadaných údajov.

Dnes sú regulárne výrazy zahrnuté vo väčšine populárnych programovacích jazykov, ako aj v mnohých skriptovacích jazykoch, editoroch, aplikáciách, databázach a pomôckach príkazového riadku.

Regulárne výrazy (RegEX) sú výkonný, stručný a flexibilný nástroj na porovnávanie reťazca textu, ako sú jednotlivé znaky, slová alebo vzory znakov.

Odovzdaním regulárneho výrazu ako hodnoty atribútu vzor môžete určiť, aké hodnoty sú prijateľné pre dané vstupné pole, ako aj informovať používateľa o chybách.

Pozrime sa na niekoľko príkladov použitia regulárnych výrazov na overenie hodnoty vstupných polí.

Telefónne čísla

Ako už bolo spomenuté, typ poľa tel nie je plne podporovaný prehliadačmi z dôvodu nezrovnalostí vo formátoch telefónnych čísel v rôznych krajinách.

Napríklad v niektorých krajinách je formát telefónnych čísel reprezentovaný ako xxxx-xxx-xxxx a samotné telefónne číslo bude vyzerať takto: 0803-555-8205 .

Regulárny výraz, s ktorým sa tento vzor zhoduje, je: ^\d(4)-\d(3)-\d(4)$ . V kóde to možno zapísať takto:

Alfanumerické hodnoty

povinný atribút

Toto je boolovský atribút používaný na označenie toho, že na odoslanie formulára musí byť vyplnená hodnota daného poľa. Keď pridáte tento atribút do poľa, prehliadač bude vyžadovať, aby používateľ toto pole pred odoslaním formulára vyplnil.

To nás šetrí od implementácie overovania polí pomocou JavaScriptu, čo môže vývojárom ušetriť čas.

Napríklad: alebo (pre kompatibilitu s XHTML)

Všetky ukážky, ktoré ste videli vyššie, používajú požadovaný atribút, takže si ho môžete vyskúšať v akcii tak, že sa pokúsite odoslať formulár bez vyplnenia akýchkoľvek polí.

Záver

Podpora prehliadača na overenie formulárov je celkom dobrá a pre staršie prehliadače môžete použiť polyfilly.

Stojí za zmienku, že spoliehanie sa iba na overenie na strane prehliadača je nebezpečné, pretože tieto kontroly môžu útočníci alebo roboti ľahko obísť.

Nie všetky prehliadače podporujú HTML5 a nie všetky údaje odoslané do vášho skriptu budú pochádzať z vášho formulára. To znamená, že pred konečným prijatím údajov od používateľa je potrebné skontrolovať ich správnosť na strane servera.

„Ochrana bláznov“ je súbor opatrení, ktoré majú zabrániť zadávaniu nesprávnych informácií do formulára. Napríklad, ak pole vyžaduje zadanie kladného čísla od 0 do 10, potom by ste mali skontrolovať, či používateľ nezadáva text alebo číslo, ktoré neleží v určenom rozsahu, t.j. číslo by nemalo byť menšie ako nula a väčšie ako desať.

Prečo sa zadávajú nesprávne informácie? Deje sa tak hlavne z troch dôvodov.

  1. Používateľ sa omylom pomýlil, napríklad si nepozorne prečítal, čo mal uviesť.
  2. Webová stránka požaduje údaje nejednoznačným spôsobom, takže používateľ môže hádať a hádať, čo skutočne chce. Názory vývojára a používateľa sa však nie vždy zhodujú.
  3. Existuje množstvo ľudí, ktorí inštrukcie vnímajú ako výzvu a snažia sa o opak. Takíto používatelia uvažujú asi takto: „Áno, žiadajú ma, aby som zadal číslo. Čo sa stane, ak označím písmená?" Potom sa pýtajú zjavne nesprávne informácie a vidia, k čomu to vedie.

Malo by sa chápať, že presné a správne znenie, aj keď znižuje pravdepodobnosť chýb, vás ich v žiadnom prípade nezachráni. Iba technické prostriedky na strane servera vám umožnia získať požadovaný výsledok a vyhnúť sa zadávaniu nesprávnych informácií. Revízia alebo, ako sa tiež nazýva, validácia na strane klienta vám však umožňuje rýchlo skontrolovať správnosť údajov zadaných používateľom bez odoslania formulára na server. To šetrí čas používateľa a znižuje zaťaženie servera. Z hľadiska použiteľnosti sú tu aj výhody – používateľ okamžite dostane správu o tom, aké informácie zadal nesprávne a môže svoju chybu opraviť.

Povinné pole

Niektoré polia formulára musia byť pred odoslaním na server vyplnené. Týka sa to napríklad registračného formulára, kde je potrebné zadať prihlasovacie meno a heslo. Ak chcete zadať povinné polia, použite požadovaný atribút, ako je uvedené v príklade 1.

Príklad 1. Požadovaný atribút

HTML5 IE 10+ Cr Op Sa Fx

Povinné pole

Prihlásiť sa:

heslo:

Pred odoslaním formulára je potrebné vyplniť povinné polia, inak sa formulár neodošle na server a prehliadač na to vydá upozornenie. Typ správy závisí od prehliadača, napríklad Chrome zobrazí popis, ako je znázornené na obr. 1.

Ryža. 1. Povinné pole nie je vyplnené

Správnosť údajov

Na začiatku sú dve polia, v ktorých sa vstup používateľa kontroluje automaticky. Toto je webová adresa a e-mailová adresa. Prehliadač Chrome tiež kontroluje platnosť poľa kalendára, ale len preto, že nemá rozhranie pre kliknutie na kalendár. Pre tieto prvky platia nasledujúce pravidlá.

  • Webová adresa ( ) musí obsahovať protokol (http://, https://, ftp://).
  • Emailová adresa ( ) musí obsahovať písmená alebo čísla pred symbolom @, za ním, potom bodku a doménu prvej úrovne.

Prehliadače majú mierne odlišné pravidlá na overovanie používateľských údajov. Opera napríklad automaticky vloží pred zadaný text protokol http://, zatiaľ čo ostatné prehliadače naň od používateľa čakajú. Chrome a Opera vyžadujú bodku v e-mailovej adrese, Firefox ju nevyžaduje.

Príklad 2 ukazuje formulár s povinnými poľami, v ktorom sú dve polia overené prehliadačom.

Príklad 2: Správnosť údajov

HTML5 IE 10+ Cr Op Sa Fx

Správnosť údajov

Vyplňte formulár (všetky polia sú povinné)

Názov:

Email:

Webstránka:

Opera kontroluje prvok formulára iba vtedy, ak má atribút name.

Čo sa stane v Opere, keď zadáte nesprávne údaje, je znázornené na obr. 2.

Ryža. 2. Upozornenie na nesprávne údaje

Šablóna vstupu

Niektoré údaje nie je možné klasifikovať do jedného z typov prvkov formulára, takže pre ne musíte použiť textové pole. Zároveň sa zadávajú podľa určitého štandardu. IP adresa teda obsahuje štyri čísla oddelené bodkou (192.168.0.1), poštové smerovacie číslo Ruska je obmedzené na šesť číslic (124007), telefónne číslo obsahuje smerové číslo oblasti a špecifický počet číslic, často oddelených znakom pomlčka (391 555-341-42) atď. Prehliadač potrebuje špecifikovať vstupnú šablónu, aby podľa nej kontroloval údaje zadané používateľom. Na tento účel sa používa atribút vzor a jeho hodnota je regulárny výraz. Niektoré typické hodnoty sú uvedené v tabuľke. 1.

Príklad 3 vás požiada o zadanie hexadecimálnej hodnoty farby (#ffcc00) a ak nie je v tomto rozsahu, prehliadač zobrazí chybové hlásenie.

Príklad 3. Šablóna vstupu

HTML5 IE 10+ Cr Op Sa Fx

Farebný vstup

Zadajte hexadecimálnu hodnotu farby (musí začínať znakom #)

Na obr. Obrázok 3 zobrazuje varovanie v prehliadači Chrome.

Ryža. 3. Zadané údaje sa nezhodujú so šablónou

Zrušenie platnosti

Overenie nie je vždy potrebné pre formulár, napríklad vývojár bude chcieť použiť univerzálne riešenie JavaScript a už nebude potrebovať kontrolu duplikátov zo strany prehliadača. V takýchto prípadoch musíte vypnúť vstavané overenie. Ak to chcete urobiť, použite atribút novalidate značky

. Príklad 4 ukazuje použitie tohto atribútu.

Príklad 4: Zrušenie platnosti

HTML5 IE 10+ Cr Op Sa Fx

novalidate atribút

Na podobný účel slúži atribút formnovalidate, ktorý sa pridáva k tlačidlu na odoslanie formulára, v tomto prípade k značke . V tomto prípade bude formulár z príkladu 4 vyzerať takto.