Да, имеет смысл использовать весеннюю безопасность с игрой. Весенняя безопасность использовалась во многих проектах, и писать безопасный код намного сложнее, чем кажется.
У вас есть две проблемы. Один из них - аутентификация. Вы должны сделать что-то для достижения аутентификации. Это означает, что вы играете в спящий режим, чтобы он становился контейнером с сохранением состояния (но опять же, почему вы вообще играете в этом случае?) Или бросаете весну-безопасность-паутину и сильно зажаты друг на друга, поэтому вы используете пружину для аутентификации, но интегрируйте с хорошими качествами файлов cookie, поэтому вам не нужно хранить вещи в объекте сеанса на стороне сервера. Тем не менее, я бы предложил, чтобы вы получили полномочия, которые управляли авторизацией где-то для каждого запроса. Вы хотите уменьшить размер сеанса.
У объекта безопасности также есть некоторые полезные советы о том, как это сделать.
Авторизация весной не является сложной задачей, если у вас есть объект аутентификации, хранящийся в threadlocal или что-то в этом роде. Создайте что-нибудь, что вызывает избирателей избирательного права на весенний доступ в виде обертки - что-то вроде
должен сделать трюк. Для дополнительного улучшения добавьте флаг в threadlocal, когда вы это сделаете - наличие флага упрощает запись утверждений в ваших тестах, требующих авторизации. Это одна из самых больших проблем безопасности для разработчиков - см. https://cwe.mitre.org/data/definitions/862.html
Надеюсь, это поможет.
Просто любопытно, что вы в конечном итоге сделали? Я рассматриваю одну и ту же проблему - ищет надежную, проверенную на производстве модель аутентификации и столкнулся с Spring Security, и мне было интересно, можно ли ее использовать с PlayFramework. – costa
Я использовал, наконец, библиотеку Pac4j для игры: https://github.com/pac4j/play-pac4j, это очень простая реализация и отлично поработала для меня. Также сообщество очень активно и поддерживает. – olibur