Используются обычные сессии (Express/NodeJS). Какой ttl выбрать? Я так понял все зависит от приложения. Но информации релевантной для обычного приложения я не нахожу.
В банках 15 минут сессии, что для меня не приемлемо конечно (юзер что будет каждые 15 минут делать логин?). У социалок типо Фейсбука таймаут месяца 3. OWASP советует как можно более короткие, макс 15-30 минут, и это для них естесвенно (для секьюрной организации лучше перебздеть). Но 30 минут это тоже очень короткие сессии ведь!
Как быть с обычным сайтом? Обычный контентный сайт, с личным кабинетом. В примерах с информацией крайности - то 15 минут, то 3 месяца. Как вы делаете и почему?
Ну ведь я могу чего-то не предусмотреть, помимо финансовых рисков. Например, злоумышленник получит данные персональные владельца аккаунта, сможет от его имени совершить действия и тд
1) почему не можете? вы можете предусмотреть - вы же знаете что именно у вас за система. насколько там важные манипуляции и есть ли там персональные данные.
2) вы можете хоть каждые 30 секунд требовать подтверждения входа пользователя в систему - никаких дополнительных гарантий это не дает. тут налицо простой отказ от ответственности - мол, мы сделали защиту - а дальше хоть трава не рости. этот как ситуация с частой принудительной сменой пароля - через некоторое время люди начинают записывать пароли на бумажке и оставлять возле компьютера. что напротив - только снижает безопасность.
3) нужно предусмотреть галочку "это чужой компьютер, временный вход". имхо, этого достаточно.