Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [Plugin/API] Zdalne logowanie - jak to ugryźć
Forum PHP.pl > Forum > PHP
Mackos
Witajcie,
Aktualnie tworzę sobie w głowie taki projekt, w którym chcę wykorzystać system zdalnego logowania - w skrócie taki plugin jak logowanie przez facebooka.
I szczerze zastanawiam się jak teoretycznie i technicznie byłoby najlepiej to rozwiązać.
Najbardziej zależy mi na tym żeby plugin był łatwy w integracji dla ewentualnego webmastera - więc możliwie jak najmniej jego pracy i kodu do wstawienia na stronę. Teraz jestem ciekaw co byście proponowali jako najlepsze i najbezpieczniejsze rozwiązanie?
Ja myślałem żeby po `zalogowaniu` zwracać użytkownika do wskazanej strony wraz z doklejonymi parametrami GET w tym hash klucza głównego dla zabezpieczenia danych, ale czy to jest rozwiązanie?
buliq
o parametrach get zapomnij, zbyt łatwo podmienić. W takim pluginie potrzebna jest chyba komunikacja bezpośrednia między serwerami, w kontekście wymiany danych o zalogowanym, autoryzacji. User końcowy nie powinien mieć żadnego wpływu na taki proces
Mackos
I jaką wizję takiej komunikacji byś proponował? Miej na uwadze to że nie może być sytuacji w której parametry post (dane logowania do mojego systemu) przechodzą przez serwer webmastera.
A co do get to nie byłbym aż tak sceptyczny, wydaję mi się że wysyłanie dodatkowo parametru w którym będzie hash wszystkich danych odebranych + klucz prywatny który zna tylko webmaster mogłoby weryfikować sprawę. Czyli:
  1. Dane odbierane:
  2. $a =array('name' => "imie" , 'email' => "jan@kowalski.pl", 'hash' => 'f52378e14237225a6f6c7d802dc6abbd');

Webmaster wtedy porównywałby to z otrzymanymi danymi, jeśli klucz i ip requestu by się zgadzały to akceptowałby takie info.
Bo szczerze to nie widzę innej opcji w jaki sposób możnaby połączyć sesje na dwóch serwisach.
Crozin
OpenID albo OAuth - w zależności od konkretnych potrzeb. Nie ma sensu wymyślać koła na nowo.
Mackos
No właśnie chcę stworzyć w pewnym stopniu kopię tych systemów a przynajmniej stworzyć coś prostszego w implementacji.
Crozin
W jakim celu, skoro spełniają one wymagania jakie stawiasz?
Mackos
Przyznam że jeszcze się nie zagłębiłem w dokumentację Oauth, ale czy jest on w pełni otwartym i modyfikowalnym oprogramowaniem?
Jestem w stanie zmieniać jego kod źródłowy wedle własnych potrzeb?
matix
Ja ze swojego doswiadczenia polecam implementację serwera CAS:


Jak go dobrze napiszesz, CAS-Client można zrobić jako komponent dla wielu serwisów, reużywalny i w miarę prosty w implementacji.
Crozin
1. OpenID i OAuth to nie oprogramowanie, a specyfikacje.
2. Tak, możesz pełną kontrolę nad kodem.
Mackos
Dzięki Crozin! Znalazłem tyle modułów dla OAuth, które są niemal 100% rozwiązaniem dla mojego problemu.
Dzięki też wszystkim którzy dorzucili swoje 3 grosze do tej dyskusji.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.