Безопасные покупки между разными сайтами - PullRequest
0 голосов
/ 01 июля 2011

Есть веб-сайт А, с его пулом пользователей.Существует отдельный веб-сайт B, который продает цифровые товары.

Я хочу разрешить пользователям веб-сайта A совершать покупки на веб-сайте B, не регистрируясь и не посещая B.

Учитывая, что сайт Aимеет соглашение с сайтом B о ежемесячной оплате счета, как вы можете авторизовать покупки, не открывая уязвимости для злоумышленников?

Первое решение, которое приходит мне в голову, - сохранение мастер-пароля для авторизации одного пользователя.Покупка пользователем, это кошмар безопасности, но я не могу ничего лучше.Есть идеи?

1 Ответ

1 голос
/ 01 июля 2011

Вы можете использовать SAML (http://en.wikipedia.org/wiki/SAML) для этой цели.

Сайт A будет иметь имя пользователя / пароль и другую информацию для аутентификации конечных пользователей. После аутентификации сайт A может отправлять пользователей на сайт B, а сайт B вызывает службу, предоставляемую сайтом A, чтобы подтвердить, что пользователь действительно отправлен с сайта A.

например.

  1. логин пользователя 'abc' на сайте A
  2. пользователь нажимает на что-то (на сайте A), чтобы купить что-то на сайте B
  3. Сайт A генерирует некоторый случайный и уникальный токен для этого действия.
  4. Пользователь отправляется на сайт B (обычно POST в форме, указывающей на сайт B). Одним из полей формы будет этот токен
  5. Сайт B вызывает некоторую службу на сайте A для проверки токена и получения имени пользователя, для которого был сгенерирован токен. Сервис может вернуть другие вещи, такие как лимит покупки для этой транзакции.

ОЧЕНЬ важно, чтобы все общение происходило через SSL. Это поможет смягчить атаки «человек посередине».

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...