2015-07-03 27 views
5

Wdrażam wtyczkę, którą można osadzać w różnych witrynach, takich jak disqus. Wtyczka ma być osadzana w witrynach o różnych nazwach domen, których nie mam. Chciałbym uzyskać dostęp do statusu logowania użytkownika, jeśli użytkownik zalogował się już w innej witrynie, która używa mojej wtyczki. Nie mogę znaleźć odpowiedzi, aby to zrobić jeszcze.Automatyczne logowanie do domeny krzyżowej

Co potrzebne jest:

  • Jeśli użytkownik zalogowany w domenie domenie A.pl że przy moim wtyczki, użytkownik powinien móc automatycznie zalogować się w innej domenie B.pl. która wykorzystuje moje wtyczki. (Nie posiadam A.com i B.pl)

Jak mogę to zrobić?

Z góry dziękuję.

Odpowiedz

0

Ze względu na ochronę CORS, jeśli serwer A lub B nie zezwala na żądanie z innej domeny, nie można wywoływać ich z poziomu samej przeglądarki. To jest funkcja bezpieczeństwa.

Jeśli chcesz to zrobić i nie masz dostępu bezpośrednio do A i B, będziesz musiał użyć A i/lub B API (jeśli istnieją) lub użyć serwera C jako pośrednika dla twoich żądań.

+0

Jak rozpoznać użytkowników korzystających z serwera C jako pośrednika? –

0

Nagłówek żądania, a także mechanizm zapobiegający CROS serwera nie pozwoli zalogować się. Poniżej znajduje się jedno z rozwiązań, aby to osiągnąć.

SSO Single Sign ON, jest jednym ze sposobów, dzięki któremu możemy wymyślić ten problem. Aby uzyskać SSO wystarczy utworzyć usługę, która sprawdzi token (uwierzytelnianie oparte na tokenach, a także będziemy mogli sprawdzić nadchodzące żądanie url) i zezwolić na logowanie (nie ma miejsca związanego z Windows, uwierzytelnianie formularzy).

Jest to rodzaj mechanizmu uwierzytelniania stron trzecich, który będzie działać w oparciu o bezpieczeństwo oparte na tokenach i umożliwi logowanie.