OAuth влез
HandyCafe го поддржува социјалниот/OAuth влез за клиентите кои користат Грант за овластување на уредот (RFC 8628).
Доставчици на поддршка
| Доставник | Крајна точка |
|---|---|
| oauth2.googleapis.com | |
| Фејсбук | graph.facebook.com/v21.0 |
| Јаболка | appleid.apple.com |
| X (Твитер) | api.x.com/2/oauth2 |
| Discord | discord.com/api/oauth2 |
Секој провајдер може индивидуално да биде вклучен или деактивиран воПоставки > OAuth.
Проток на аутентификација
Протокот на овластувања за уредот оди низ следниве чекори:
- Клиентот избира провајдер- на екранот на клиентот, клиентот притиска на копчето за провајдер (на пример, Google, Discord).
- Клиентот испраќа барање на серверот- клиентот го известува серверот на HandyCafe дека се започната пријавата на OAuth.
- Серверот побара код на уредот- серверот се контактира со крајната точка за овластување на уредот на избраниот провајдер и добива код на уредот, кориснички код и УРИ за проверка.
- Клиентот го прикажува кодот- клиентот го прикажува
user_codeиverification_uriна клиентот, обично прикажани како QR код за лесно сканирање. - Клиентот се аутентизира на својот телефон- клиентот го сканира кодот QR со својот личен уред (телефон или таблет) и ја завршува аутентификацијата на веб-страницата на провајдерот.
- Серверни анкети за токен- серверот периодично ја анкетира провајдерот за токен.
- Очекувано- клиентот уште не ја заврши аутентификацијата.
- SlowDown - анкетирање премногу често; серверот се повлекува.
- Успех - заверена аутентификација; добиен знак.
- Изтекнал- кодот на уредот истекол пред аутентификацијата.
- Грешка- се случи неочекувана грешка.
- Серверот ги добива корисничките информации- на успехот, серверот го користи токенот за да го добие профилот на клиентот од провајдерот, вклучувајќи ги
provider_uid,email,nameиavatar_url. - Администратор го одобрува или го одбива- барањето за влез се појавува на Страницата за барања. admin или касиер ги прегледува и го одобрува или го одбива барањето.
- Член создаден или поврзан- ако е одобрен, се создава нова сметка за член или идентитетот OAuth е поврзан со постоечки член.
- Сесија на клиентот започнува- клиентот добива потврда и сесијата на клиентот започнува.
Разгледи за безбедност
- **Кредитенцијалите никогаш не се допираат до споделената PC.**Клиентите се автентикуваат само на нивните лични уреди.
- **Административната порта за одобрување.**Секој запит за влез во OAuth мора да биде одобрен од admin или касиер пред почетокот на сесијата, со што се спречува неовластен пристап.
- **Конфигурирани кредитни барања.**Опцијата "дозволете влез без кредит" може да биде вклучена или деактивирана, контролирајќи дали клиентите имаат потреба од позитивен баланс за влез преку OAuth.
Конфигурација
Доставниците на OAuth се конфигурирани воПоставки > OAuth. Секој доставник бара свои акредитиви за клиентите (клиентот ID и тајната на клиентот) добиени од конзолата на програмерите на доставникот. Обезбедувајте само доставниците кои сакате да ги понудите на вашите клиенти.