Cześć.
Potrzebuję paru podpowiedzi, ponieważ w gąszczu informacji o oAuth 2.0 i nie kompletnego jego zrozumienia się pogubiłem.
Piszę sobie ćwiczeniowo apkę, Spring Boot + Angular4 + Oauth 2.0 którą chcę zabezpieczyć, dołożyć różne opcje rejestracji/ logowania i zarządzanie kontem.
Opcje takie maja być:
1) Użytkownik może się rejestrować i logować natywnie, tj. formularz na stronie.
2) Użytkownik ma user panel, w którym są różne informacje nt. jego konta i może je sobie edytować.
3)Obok tego może logować się za pomocą social media: google i facebook. Ale tutaj chciałbym aby to była również "rejestracja", tj. przy pierwszym logowaniu aby tworzyło się stałe konto w bazie ze wszystkimi innymi, tak aby user miał dostęp do edycji swoich danych, podglądu etc.
4) Admin Panel- admin ma podgląd do kont użytkowników i zarządzania wszystkim kontami.

W ogólny rozrachunku idealnie by było jakby to wyglądało tak jak tutaj na 4Programmers z rejestracją i autentykacją.

Zamysł jest taki, że całą aplikację spinam OAuthem i w przypadku Frontu (klient) i Backendu(Authorization server i Resource server na jednym) używam Password grant type. Klient mój będzie tez wykorzystywał Api Fejsa/ google do logowania i po przekierowaniu i autoryzacji w jakiś sposób chyba musi pobrać maila usera, bądź jakies id i utworzyć u mnie na serwerze konto. Zależy mi, żeby to było proste rozwiązanie. Proszę o sprostowania i podpowiedź w jaki sposób mogłoby to być rozwiązane?

Pytanie czy ja w ogóle potrzebuję implementować swój Authorization Server, czy to raczej przerost formy...