Շատ սկսնակներ authentication բառը լսելիս մտածում են, թե դա պարզապես ևս մեկ տեխնիկական անվտանգության տերմին է։
Բայց գաղափարի հիմքը շատ պարզ է։ Authentication-ը այն գործընթացն է, որով ապացուցվում է, որ դուք իսկապես այն մարդն եք, ում անունից մուտք եք գործում։ Մինչև համակարգը ձեզ թույլ տա հասնել անձնական տվյալների, հաշվի կարգավորումների, հաղորդագրությունների, վճարումների կամ ադմին գործիքների, այն պետք է ինչ-որ հիմք ունենա հավատալու, որ դա իսկապես դուք եք։
Սա ավելի հեշտ հասկանալու համար պատկերացրեք, որ մտնում եք փակ գրասենյակային շենք։ Դուք մոտենում եք մուտքին և ասում եք ձեր անունը։ Բայց անուն ասելը բավարար չէ։ Անվտանգության աշխատակիցը կարող է խնդրել ID քարտ, անցաթուղթ կամ ձեր հեռախոսին ուղարկված կոդ։ Ինչո՞ւ։ Որովհետև շենքին միայն անունը պետք չէ։ Այն ապացույց է ուզում։ Ծրագրերում authentication-ը հենց այս դերն է կատարում։
Authentication-ը վստահության ստուգման կետ է
Authentication-ը հասկանալու ամենապարզ ձևը սա է․ համակարգը կանգ է առնում և հարցնում է՝ «կարո՞ղ ես ապացուցել, որ իսկապես այս օգտատերն ես»։ Եթե պատասխանը համոզիչ է, մուտքը շարունակվում է։ Եթե ոչ, մուտքը փակվում է։
Սա կարևոր է, որովհետև ծրագրային համակարգերը հաճախ պահում են զգայուն բաներ՝ անձնական հաղորդագրություններ, պահպանված ֆայլեր, վճարումների տվյալներ, ներքին վահանակներ, հաճախորդների գրառումներ կամ անձնական կարգավորումներ։ Առանց authentication-ի ցանկացած մարդ կարող էր ներկայանալ ուրիշի անունից։
Միայն օգտանունը բավարար չէ
Սկսնակների տարածված սխալ պատկերացումն այն է, որ եթե համակարգը գիտի օգտանունը կամ email-ը, ուրեմն գիտի նաև օգտատիրոջը։ Այդպես չէ։ Անունը պարզապես նույնականացուցիչ է։ Authentication-ը պահանջում է ապացույց։
Այդ ապացույցը կարող է գալ տարբեր ձևերով՝
- մի բան, որ դուք գիտեք՝ օրինակ գաղտնաբառ կամ PIN
- մի բան, որ դուք ունեք՝ օրինակ հեռախոս կամ անվտանգության token
- մի բան, որ դուք եք՝ օրինակ մատնահետք կամ դեմքի սկան
Սրանք բոլորը նույն հարցի տարբեր պատասխաններն են՝ «ինչո՞ւ համակարգը պետք է հավատա, որ դա իրոք դուք եք»։
Պարզ օրինակ
Պատկերացրեք, որ բացում եք բանկային հավելվածը։ Հավելվածն արդեն գիտի, թե որ հաշիվն եք ուզում բացել, քանի որ մուտքագրել եք email-ը կամ ընտրել եք ձեր պրոֆիլը։ Բայց մինչև այն ցույց տա մնացորդը, փոխանցումները կամ քարտի տվյալները, հավելվածը խնդրում է գաղտնաբառ, դեմքի սկան կամ մեկանգամյա կոդ։
Այդ լրացուցիչ քայլը authentication-ն է։ Համակարգը չի հարցնում՝ «ո՞ր հաշիվն ես ուզում բացել»։ Այն հարցնում է՝ «կարո՞ղ ես ապացուցել, որ այս հաշվի սեփականատերն ես»։
Ինչու է authentication-ը այդքան կարևոր
Authentication-ը թվային վստահության հիմքերից մեկն է։ Առանց դրա օնլայն համակարգերը վտանգավոր և քաոսային կդառնային։ Email հաշիվները, բանկային հավելվածները, ամպային պահոցները, սոցիալական ցանցերը, ադմին վահանակները և աշխատանքային գործիքները բոլորը authentication-ի վրա են հենվում, որպեսզի տարբեր օգտատերերի անվտանգ բաժանեն իրարից։
Այլ կերպ ասած՝ authentication-ն է, որ համակարգում ինքնությունը դարձնում է իմաստալից։ Այն պաշտպանում է սահմանը «սա քո հաշիվն է» և «սա ուրիշի հաշիվն է» գաղափարների միջև։
Authentication-ն ու authorization-ը նույնը չեն
Այս երկու բառերը հաճախ իրար հետ խառնվում են։ Authentication-ը հարցնում է՝ «ո՞վ ես դու»։ Authorization-ը հարցնում է՝ «ի՞նչ իրավունք ունես անել»։
Օրինակ՝ երբ մուտք եք գործում ընկերության համակարգ, ծրագիրը կարող է հաստատել, որ դուք իսկապես աշխատակից եք։ Դա authentication է։ Հետո այն կարող է որոշել՝ իրավունք ունե՞ք տեսնել հաշվետվությունները, փոխել billing-ը կամ կառավարել այլ օգտատերերի։ Դա authorization է։
Մեկը ապացուցում է ինքնությունը։ Մյուսը որոշում է թույլտվությունները։
Ինչու գաղտնաբառը ամբողջ պատմությունը չէ
Շատ մարդիկ authentication-ը կապում են միայն գաղտնաբառի հետ, բայց ժամանակակից համակարգերը հաճախ դրանից ավելին են օգտագործում։ Գաղտնաբառերը կարող են թույլ լինել, կրկնվել տարբեր կայքերում, գուշակվել, գողացվել կամ արտահոսել։ Այդ պատճառով շատ հարթակներ ավելացնում են լրացուցիչ շերտեր՝ երկքայլ նույնականացում, email հաստատում, սարքի ճանաչում կամ բիոմետրիկ ստուգում։
Նպատակը մուտքն անհարմար դարձնելը չէ։ Նպատակը կեղծ ինքնության պնդումները շատ ավելի դժվար դարձնելն է։
Ինչու իրական համակարգերում authentication-ը բարդ է դառնում
Authentication-ը պարզ է թվում, մինչև իրական կյանքի փոխզիջումները չեն հայտնվում։ Համակարգը պետք է լինի անվտանգ, բայց նաև օգտագործելի։ Եթե մուտքը չափազանց թույլ է, հաշիվները խոցելի են դառնում։ Եթե չափազանց բարդ է, օգտատերերը նյարդայնանում են և հեռանում։ Այդ պատճառով authentication-ի դիզայնը և անվտանգության խնդիր է, և պրոդուկտի խնդիր։
Ծրագրավորողներն ու պրոդուկտ թիմերը մշտապես հավասարակշռում են հարմարավետությունը և պաշտպանությունը։
Ինչու սա կարևոր է նույնիսկ եթե անվտանգության ինժեներ չեք
Այս գաղափարից օգտվելու համար պետք չէ cybersecurity-ում աշխատել։ Հիմնադիրները, պրոդուկտ մենեջերները, դիզայներները, մարքեթոլոգները և նույնիսկ support թիմերը անընդհատ առնչվում են հաշիվների հասանելիության, verification հոսքերի, login friction-ի և օգտատիրոջ վստահության հետ։ Երբ հասկանում եք հիմնական գաղափարը, շատ պրոդուկտային որոշումներ ավելի հեշտ են դառնում հասկանալու համար։
Դուք authentication-ին այլևս չեք նայում որպես պատահական login form-ի, այլ որպես համակարգի միջոց՝ պաշտպանելու ինքնությունը։
Եզրակացություն
Authentication-ը ինքնությունը ապացուցելու գործընթացն է՝ մինչև հասանելիությունը տրամադրվի։ Այդպես համակարգերը որոշում են՝ վստահե՞լ արդյոք, որ դուք իսկապես հաշվի հետևում կանգնած մարդն եք։ Երբ սա հասկանում եք, authentication-ը դադարում է թվալ շփոթեցնող տեխնիկական տերմին և սկսում է թվալ շատ գործնական թվային ստուգման կետ։