#angular #wordpress #authentication #local-storage #cross-domain
#угловатый #wordpress #аутентификация #локальное хранилище #междоменный
Вопрос:
У меня есть 2 сайта с разными доменами. Давайте назовем это сайтом A и сайтом B. Вы можете войти на сайт A, и информация о пользователе была сохранена в localStorage. Чего я пытаюсь добиться, так это того, что если вы уже вошли в систему на сайте A, сайт B попытается получить доступ к информации для входа с сайта A (в основном только имя пользователя) из того же сеанса, чтобы вы могли сказать, что вы уже вошли в систему на сайте A.
Я попытался сохранить IP и user agent на сервере сайта A, поэтому, когда кто-то обращается к сайту B, он попытается найти совпадение с помощью IP и user agent, но это не работает, потому что кто-то с тем же публичным адресом и user agent может ложно сообщить, что они уже вошли в систему, в то время как на самом деле это не так.
Есть ли какой-нибудь другой подход, который я могу попробовать?
Я создал сайт A с помощью Angular, а сайт B — с помощью WordPress.
Ответ №1:
Звучит подозрительно, как будто вы, возможно, захотите узнать об использовании токенов? Что-то простое, например, JWTs?
Это обеспечило бы лучший подписанный механизм для записи информации о входе (пользователе) для сайта B, чтобы он мог читать о сайте A. Сайт B сможет проверить и подтвердить, что сайт A был эмитентом и что он действителен, что, по-видимому, вас беспокоит (как и должно быть).).
Редактировать: кажется, есть пара пакетов для подключения хранилища между доменами. Я не использовал их, поэтому не могу их комментировать, но, по сути, это похоже на то, что вы хотите, я думаю?
Кажется, что после входа на сайт A вы можете сохранить … что-то, какой-то флаг, маркер или имя пользователя, я думаю, для вашего варианта использования. Затем сайт B может прочитать это — или ничего не прочитать в тех случаях, когда пользователи фактически не вошли в систему.
Очевидное предупреждение: обработка вышедших из системы пользователей (бездействие по времени, а также нажатие кнопки выхода).
Комментарии:
1. хотите уточнить? для сайта B нет механизма входа в систему, поэтому я не знаю, действительно ли здесь имеет место токен. чего я пытаюсь добиться, так это того, что сайту B нужно знать, в том же браузере кто-то уже вошел в систему на сайте A или нет. сайт B — это обычная целевая страница