Bezpieczeństwo i codzienna praca - Google, GitHub i Facebook
Na tej stronie Kolejność rozstrzygania
Kolejność rozstrzygania
Przy każdym logowaniu dostawcą DockRay sprawdza kolejno trzy rzeczy: czy istnieje już powiązanie z tym identyfikatorem u tego dostawcy - jeśli tak, loguje od razu; jeśli nie, czy istnieje użytkownik o zwróconym adresie e-mail - jeśli tak i dostawca potwierdza adresy, dopina powiązanie do tego konta; jeśli nic z tego, zakłada nowe konto najemcy. Powiązanie jest szukane po identyfikatorze u dostawcy, nie po adresie e-mail - adres człowiek może u siebie zmienić, identyfikator nigdy się nie zmienia.
Nie każdy dostawca potwierdza adres
Dopięcie po adresie e-mail do istniejącego konta jest dozwolone tylko dostawcy, który adresy faktycznie potwierdza. Google i GitHub to robią - GitHub oddaje adres główny konta. Facebook nie: jego dokumentacja tego nie gwarantuje, a adres da się wpisać w profil bez dowodu dostępu do skrzynki. Gdyby DockRay mimo to dopinał po adresie z Facebooka, wystarczyłoby założyć tam profil z cudzym adresem, żeby wejść na cudze konto. Dlatego logowanie Facebookiem, które trafia na istniejący adres, kończy się komunikatem proszącym o zalogowanie hasłem, a nie cichym dopięciem - a nowe konto założone tą drogą przechodzi zwykłą weryfikację e-mailem, bo adres nie jest jeszcze potwierdzony.
Co dostaje konto założone tą drogą
Hasło konta założonego logowaniem społecznościowym jest losowe i nigdzie nieprzekazywane - droga do własnego hasła prowadzi przez reset, czyli przez tę samą skrzynkę pocztową. Adres e-mail jest potwierdzony od razu, jeśli dostawca potwierdza adresy (Google, GitHub); logowanie takim dostawcą potwierdza też adres komuś, kto założył konto formularzem i nigdy nie kliknął linku z maila weryfikacyjnego.
Logowanie społecznościowe i druga weryfikacja
Jeśli konto ma włączoną weryfikację dwuskładnikową, logowanie dostawcą jej nie omija - po powrocie z Google, GitHuba czy Facebooka DockRay pyta o drugi składnik dokładnie tak samo, jak po zalogowaniu hasłem. Dostawca dowodzi tożsamości; o dostępie do panelu decyduje wyłącznie DockRay.
Dezaktywowany użytkownik i rotacja kluczy
Dezaktywowane konto nie zaloguje się tą drogą, choćby dostawca poprawnie potwierdził tożsamość - status konta jest sprawdzany niezależnie od sposobu logowania. Jeśli podejrzewasz wyciek Client Secret danego dostawcy, wygeneruj nowy w jego konsoli deweloperskiej i wklej go w ustawieniach platformy - istniejące powiązania kont nie ucierpią, bo są przypisane do identyfikatora użytkownika u dostawcy, nie do samego sekretu aplikacji.