НодеЈС

Како овластити кориснике помоћу Гоогле ОАутх-а у Ноде-у.јс

Како овластити кориснике помоћу Гоогле ОАутх-а у Ноде-у.јс

Отворена ауторизација, такође позната као ОАутх, је протокол који се користи за ауторизацију корисника на вашој веб локацији користећи неке независне услуге као што су Гоогле, Гитхуб, Фацебоок итд. Независна услуга дели неке податке (име, е-пошта, слика профила итд.) са вашом веб локацијом, а затим у њено име овлашћује корисника без управљања лозинкама и корисничким именима за вашу веб локацију, а корисницима штеди пуно додатних проблема.

Како ОАутх ради

Када корисник кликне на „Пријави се помоћу Гоогле-а“, одводи га на страницу сагласности за Гоогле ОАутх. Када корисник пристане на сагласност и потврди свој идентитет на Гоогле-у, Гоогле ће контактирати вашу веб локацију као независну услугу и у њено име овластити корисника и делити неке податке са вашом веб локацијом. На овај начин корисник може бити овлашћен без посебног управљања акредитивима за вашу веб локацију.

Примена Гоогле ОАутх-а помоћу Ноде-а.јс

Готово сви програмски језици пружају различите библиотеке за примену гоогле оаутх-а за ауторизацију корисника. Чвор.јс пружа библиотеке 'пасош' и 'пасош-гоогле-оаутх20' за примену гоогле оаутх. У овом чланку ћемо применити оаутх протокол да бисмо овластили кориснике да користе чвор.јс.

Направите пројекат на Гоогле-у

Први корак за примену Гоогле ОАутх је стварање пројекта на гоогле конзоли за програмере за вашу веб локацију. Овај пројекат се користи за добијање АПИ кључева који се користе за подношење захтева Гоогле-у за отворену потврду идентитета. Идите на следећу везу и креирајте свој пројекат.

хттпс: // цонсоле.програмери.гоогле.цом

Конфигурисање Гоогле пројекта

Након што креирате пројекат, уђите у пројекат и у левом бочном менију одаберите „Заслон сагласности за ОАутх“.

Кликните на дугме 'креирај' и наведите све детаље вашег пројекта. Кликните на „Сачувај и настави“ да бисте наставили даље.

Сада наведите обим вашег пројекта. Опсези су врсте дозвола за приступ корисничким подацима са гоогле налога. Морате да подесите дозволе за добијање одређених корисничких података са свог Гоогле налога. Кликните на „Сачувај и настави.”

Сада додајте тест кориснике у пројекат ако желите. Тест корисници су једини дозвољени корисници који могу приступити вашој веб апликацији у режиму тестирања. За сада нећемо унијети ниједног тест корисника и кликните на „Сачувај и настави“ да бисте прешли на страницу сажетка пројекта.

Прегледајте свој пројекат на страници са резимеом и сачувајте конфигурацију. Сада ћемо створити акредитиве за наш пројекат. Изаберите картицу 'Акредитиви' у левом бочном менију и кликните на дугме 'Креирај акредитиве' на врху да бисте генерисали ОАутх 2.0 ИД-а клијента.

У падајућем менију одаберите „ОАутх ИД клијента“ и наведите тип апликације као „Веб апликација“ и име своје апликације.

На истој страници морамо навести два УРИ-ја, „Овлашћени Јавасцрипт порекло“ и „Овлашћени УРИ за преусмеравање“. „Овлашћено јавасцрипт порекло“ је ХТТП порекло ваше веб апликације и не може имати путању. „Одобрени УРИ за преусмеравање“ је тачан УРИ са путањом на коју ће корисник бити преусмерен након Гоогле аутентификације.

Након уноса свих потребних уноса, кликните на 'креирај' да бисте креирали ОАутх акредитиве.

Иницирајући чвор.јс пројекат

До сада смо креирали гоогле пројекат за овлашћивање корисника за нашу апликацију помоћу гоогле-а. Сада ћемо покренути чвор.јс пројекат за примену оаутх. Направите директоријум са именом 'аутх' и покрените експресни пројекат.

[заштићена е-поштом]: ~ $ мкдир аутх
[заштићен е-поштом]: ~ $ цд аутх
[емаил заштићен]: ~ $ нпм инит -и

Инсталирање потребних нпм пакета

Да бисте применили Гоогле ОАутх помоћу чвора.јс, морамо инсталирати неке нпм пакете. Користићемо „пасош“, „експрес“, „путања“ и „пасош-гоогле-оаутх20“. Инсталирајте ове пакете користећи нпм.

[заштићена е-поштом]: ~ $ нпм инсталирајте брзи пасош пасош-гоогле-оаутх20 путања

Чвор за писање.јс код

Пре свега, написаћемо две једноставне хтмл веб странице, ону са дугметом, и овластити корисника када кликне на дугме. Друга страница ће бити овлашћена, а корисник ће након ауторизације бити преусмерен на овлашћену страницу. Направите датотеку 'публиц / индек.хтмл '.



ОАутх


Одобри овде

Сада креирајте датотеку 'јавна / успешна.хтмл 'са следећим садржајем.



ОАутх


Овлашћени



Након креирања веб страница, сада ћемо написати код да бисмо овластили кориснике да користе гоогле оаутх. Направите индекс датотеке.јс '.

// увоз потребних пакета
цонст екпресс = рекуире ('екпресс');
цонст пасош = захтевати ('пасош');
цонст патх = рекуире ('патх');
цонст ГооглеСтратеги = рекуире ('пасош-гоогле-оаутх20').Стратегија;
цонст апп = екпресс ();
// дефинисање параметара
// ИД клијента је параметар који ћемо добити са гоогле Девелопер цонсоле
ЦЛИЕНТ_ИД = ”ккккккк”;
// тајна клијента такође ће бити преузета са Гоогле Девелопер цонсоле
ЦЛИЕНТ_СЕЦРЕТ = ”ккккк”;
// корисник ће бити преусмерен на ЦАЛЛБАЦК_УРЛ након ауторизације
ЦАЛЛБАЦК_УРЛ = ”хттп: // лоцалхост: 8000 / одобрено”;
// број порта мора бити исти као што је дефинисано у конзоли за програмере
ЛУКА = 8000;
// конфигурисање међуопреме за пасош
апликација.употреба (пасош.Инитиализе ());
апликација.употреба (пасош.седница());
пасош.сериализеУсер (функција (ид, готово)
готово (нулл, ид);
);
пасош.десериализеУсер (функција (ид, готово)
готово (нулл, ид);
);
// следећи међуопреме ће се покретати кад год пасош. Позива се метода аутентификације и враћа различите параметре дефинисане у опсегу.
пасош.усе (нова ГооглеСтратеги (
цлиентИД: ЦЛИЕНТ_ИД,
цлиентСецрет: ЦЛИЕНТ_СЕЦРЕТ,
цаллбацкУРЛ: ЦАЛЛБАЦК_УРЛ
,
функција асинхронизације (аццессТокен, рефресхТокен, профил, е-пошта, цб)
ретурн цб (нулл, емаил.ид);

));
// послуживање почетне странице за апликацију
апликација.гет ('/', (рек, рес) =>

рез.сендФиле (патх.јоин (__ дирнаме + '/ публиц / индек.хтмл '));
);
// послуживање странице успеха за апликацију
апликација.гет ('/ успех', (рек, рес) =>

рез.сендФиле (патх.придружи се (__ дирнаме + '/ јавно / успех.хтмл '));
);
// корисник ће бити преусмерен на гоогле аутх страницу кад год погоди руту '/ гоогле / аутх'.
апликација.гет ('/ гоогле / аутх',
пасош.потврдити идентитет ('гоогле', сцопе: ['профиле', 'емаил'])
);
// преусмеравање неуспеха аутентификације дефинисано је у следећој рути
апликација.гет ('/ одобрено',
пасош.потврда идентитета ('гоогле', неуспехПредмет: '/'),
(рек, рес) =>

рез.преусмерење ('/ успех');

);
// покренут сервер
апликација.слушај (ПОРТ, () =>

конзола.евиденција („Сервер је покренут на порту“ + ПОРТ)
)

Тестирање Гоогле ОАутх-а

Сада је наша апликација спремна и можемо да тестирамо да ли овлашћује кориснике помоћу гоогле оаутх-а. Идите у основни директоријум и покрените апликацију.

[емаил заштићен]: ~ $ индекс чвора.јс

Сада унесите урл своје апликације у прегледач.

хттп: // лоцалхост: 8000

Приказује почетну страницу са сидреном ознаком.

Када кликнемо на „Ауторизација овде“, преусмериће се на Гоогле страницу оаутх.

Назив ваше апликације „Тест“ приказује се на Гоогле страници за потврду идентитета. Када одобрите свој налог, водиће вас до овлашћене странице.

Закључак

Управљање корисничким именима и лозинкама за различите веб апликације није сретан задатак за кориснике. Многи корисници напуштају вашу веб апликацију без регистрације налога само зато што не желе да управљају акредитивима. Поступак ауторизације на вашој веб апликацији или веб локацији може се поједноставити коришћењем независних услуга као што су Гоогле, Фацебоок итд. Ове услуге овлашћују кориснике у њихово име и корисник не мора посебно да управља акредитивима. У овом чланку смо имплементирали гоогле оаутх протокол да бисмо овластили кориснике да користе Ноде.јс.

Леви тастер миша не ради у оперативном систему Виндовс 10
Ако уз преносни рачунар или стони рачунар користите наменски миш, али тастер миша не ради у оперативном систему Виндовс 10/8/7 из неких разлога, ево н...
Курсор скаче или се насумично помера док куцате у оперативном систему Виндовс 10
Ако откријете да курсор миша скаче или се сам помера, аутоматски, насумично док куцате на Виндовс преносном рачунару или рачунару, неки од ових предло...
Како да обрнете смер померања миша и додирних табли у оперативном систему Виндовс 10
Миш и Тоуцхпадрачунарство не само да олакшава рад, већ и ефикасније и мање времена. Не можемо замислити живот без ових уређаја, али ипак је чињеница д...