Я же говорю, что все работает, пока что только в идентификации инициатора запроса проблема, стоит реализовать подписывание запросов и все, а пока что через реферер работает, но я считаю это ненадежным
Дак на одном Ip целая страна может крутиться — это раз, а во вторых я считаю, что головной сервер не должен рассылать что то второстепенным, он в идеале о них даже знать не должен, чтобы в любой момент можно было подключить еще один-другой второстепенный сервер
Моя задача — сделать так, чтобы авторизовавшись на головном проекте пользователь а автоматическом режиме получал токен и на всех второстепенных сайтах, про openid пойду повнимательнее еще почитаю
Все практически так и реализовано, но проблема в том, что кука основной авторизации хранится на определенном поддомене головного сайта, и подписать токен для стороннего сайта может только запрос на данный поддомен, который должен выполнить именно пользователь, т.к. эта кука стоит у него в броузере, а сервер второго домена о ней ничего не знает =)
Попробую на головном создать таблицу всех возможных второстепенных серверов, у каждого задать открытый ключ, а на данные сервера соответственно поместить закрытые ключи, и каждый запрос на авторизацию к головной системе подписывать
Спасибо, я тоже так считаю. Пока не могу представить полную модель подобной системы, просто у меня еще есть задача ставить куку на более низкий домен, нежели запрашивающий ее, сейчас вся проверка только на реферере идет, но это так — наброски. Меня он смущает и вы подтвердили мои опасения, если подводить вопрос к концу, то скажем так — в пределах сессии среднестатистического пользователя рефереру доверять можно, но и то не на 100 процентов, ведь была возможность в свое время его подменить, следовательно она может сложиться и при определенной конфигурации в будущем. Вы согласны?
Паяльник в задницу можно засунуть одному-двум пользователям, а XSRF можно провести массово. И паяльник в жопу скажем крайне проблематично засунуть администратору, а вот XSRF…
Основной проект авторизует сторонний сайт, сайт проверяет, что запрос на установку куки авторизации пришел от головного проекта по рефереру, буду переделывать на токен
Спасибо, к этому и склонялся, но что, если злоумышленник выполнит запрос под собой, а пользователь посредством какой либо уязвимости выполнит его запрос с его токеном? Привязка токена к ip? А если у злоумышленника и пользователя один и тот же ip?