play-framework [2.0] HTTPS - PullRequest
       15

play-framework [2.0] HTTPS

6 голосов
/ 29 марта 2012

Я работаю на веб-сервере с использованием Play Framework 2.0, где вход выполняется с помощью программного обеспечения устройства Android, которое мы также делаем. И главная проблема в том, что мы не можем найти никакой поддержки HTTPS в игре 2.0. Смысл в том, что это школьный проект, который мы не можем себе позволить ни облаком, ни другим доверенным лицом, чтобы решить HTTPS для нас.

Нашей главной проблемой является то, что пароль и электронная почта, которые отображаются на экране в теле запроса, шифруются и дешифруются на мобильном устройстве и на сервере, и это выглядит дорого, и в смысле HTTPS позаботился об этом, и мы хотели этого избежать. Есть ли способ, которым мы можем использовать HTTPS для защиты данных для входа в систему пользователей или любые другие предложения.

Если нет, то нам, возможно, придется перенести все приложения на другую платформу, потому что это не будет хорошо смотреться на важных конфиденциальных данных, проходящих через Интернет без шифрования.

Ответы [ 2 ]

4 голосов
/ 31 марта 2012

Исторически я видел, что большинство людей запускают сервер приложений Java / Scala за каким-то обратным прокси-сервером. Настройка HTTPS в apache не так уж сложна, а затем просто используйте ModProxy для внутренней отправки запросов в приложение Play.

Скорее всего, это может сделать любая обратная прокси-система, nginx также популярен и обычно имеет более простую настройку, чем apache, но я никогда не использовал его с HTTPS.

Причина номер один, как правило, это безопасность. Вы не можете запустить программу Java как непривилегированный пользователь на порту 80. Если вы запустите свою программу Java от имени пользователя root, работающего на порту 80, то любая дыра в вашем приложении будет иметь привилегии root! В результате запускается приложение Java на другом порту, а затем обратный прокси-сервер с веб-сервера, который может работать как непривилегированный пользователь на порту 80.

(*) Это немного слишком упрощенно, но обсуждение этой странности выходит за рамки этого, я думаю.

2 голосов
/ 14 февраля 2013

Теперь можно использовать Play и https напрямую. Это было добавлено в Play 2.1

Просто запустите сервер с:

JAVA_OPTS=-Dhttps.port=9001 play start
...