Модель безопасности: вход на сторонний сайт с учетными данными пользователя

Я разрабатываю сервис (Сервис), который автоматизирует определенные действия, которые пользователи могут выполнять на стороннем сайте (Сторонний сайт).

Мой сервис предоставляет следующие функциональные возможности для пользователей:

пользователь регистрируется на Сервисе

Пользователь предоставляет свое имя пользователя / пароль для Стороннего сайта СервисуСервис использует эти учетные данные для входа на Сторонний сайт пользователяот имениСервис сохраняет файлы cookie, выпущенные Сторонним сайтом, в своей базе данных.с этого момента Сервис начинает регулярно заходить на Сторонний сайт (cron) на пользователяОт имени пользователя, используя ранее сохраненный файл cookie (имя пользователя / пароль для Стороннего сайта нигде не сохраняется), и выполняет некоторые действия от имени пользователя на Стороннем сайте.

Заметки:

перед регистрацией в Сервисе пользователю предоставляется полная информация, описывающая взаимодействие между Сервисом и Сторонним сайтом.есть определенная ценность в автоматизации пользователяs вход на Сторонний сайт, и пользователи заинтересованы в автоматизации своих входов в систему и определенных действий на Стороннем сайте, то есть они заинтересованы в том, чтобы Сервис выполнял для них какую-либо работу на Стороннем сайте.на стороннем сайте нет функции OAuthна стороннем сайте нет никакой функциональности токена аутентификации пользователя

Я провел исследование здесь, в Stack Exchange, и я не нашел никаких решений:

https://security.stackexchange.com/questions/1335/storing-third-party-auth-info-securelyКак сохранить пароль стороннего приложения в моем приложении для использования с API?Как безопасно хранить пароли, используемые для входа на сторонние сайтыРельсы для хранения сторонних учетных данных. Кто-нибудь знает лучшие практики?http://12factor.net/confighttps://security.stackexchange.com/questions/31535/need-to-ephemerally-store-third-party-passwordя * должен * хранить сторонние учетные данные в моей базе данных. лучший способ?как безопасно хранить пароль для стороннего сервиса в django?Каков наилучший способ хранения пароля в базе данных, когда вызов API требует отправки пароля в виде простого текста?Джанго & Facebook: безопасность и дизайн для веб-приложения facebook, которое выполняет сторонний вход в систему от имени пользователя

Более того, прочитав предоставленные вопросы и ответы, я склонен думать, что нет способа обезопасить пользователя ».s данные для входа (пароли или файлы cookie сторонних сайтов). То есть если злоумышленник получает доступ к Сервисус сервера злоумышленник получает доступ к учетные записи на сторонних сайтах.

Если я попытаюсь сохранить сторонний сайт »куки в СервисеЕсли база данных зашифрована, то они будут полезны только для сценария, который их расшифровывает. Поэтому, чтобы получить доступ к учетной записи пользователя Стороннего сайта, злоумышленнику потребуется не только получить доступ к Сервису ».с машиной, но для изменения сценария (шаг 4).

Хранение cookie для Стороннего сайта в Сервисе действительно похоже на OAuth, но в этом случае вместо токена используется cookie (пароли не сохраняются).

Как разработать модель / архитектуру безопасности для безопасного хранения пользователя?s данные для входа в службу, чтобы служба могла войти на сторонний сайт пользователя 'регулярно, без ручного взаимодействия с пользователем?

Постскриптум Я использую Django, но полагаю, что модель / архитектура безопасности не зависит от определенного стека технологий.

Ответы на вопрос(2)

Ваш ответ на вопрос