Управление сеансом: Как создать токен аутентификации для службы REST? (Джерси)

Я пытаюсь реализовать управление сеансом в моей службе REST. Я узнал эти правила во время серфинга:

  1. Не использовать сеансы на стороне сервера - это нарушает принцип RESTful.

  2. Использование базовой проверки подлинности HTTP - сейчас невозможно, так как меня просят не использовать SSL / TLS (что является несомненно, необходим для базовой аутентификации.)

  3. Использование дайджеста Http - я слышал, что это увеличивает сетевой трафик. Звучит дорого, особенно если моим клиентом является мобильное устройство.

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

  5. У меня осталась возможность генерировать токен аутентификации, который пользователь должен отправлять каждый раз, что, я признаю, не является «полностью» RESTful.

Теперь мне нужно знать, как мне сгенерировать эти уникальные токены аутентификации, которые достаточно безопасны на бизнес-уровне? Есть ли библиотека для Джерси? Стоит ли мне использовать OAuth ... Я только что прочитал о них, полезны ли они в моем случае? Имейте в виду, что моими целевыми клиентами являются мобильные устройства - могут ли они получить доступ к службе OAuth ??

43
задан Jaguar 11 February 2011 в 20:00
поделиться