Expressjs безопасный сеанс cookie - PullRequest
12 голосов
/ 10 декабря 2011

Кажется, я не могу найти способ установить безопасный cookie в среде expressjs. Есть ли возможность сделать это где-нибудь?

Ответы [ 2 ]

21 голосов
/ 29 января 2013

Если вы находитесь за прокси-сервером, вы также должны убедиться, что он отправляет заголовок X-Forwarded-Proto и установить опцию прокси:

app.use(express.session({
  proxy: true,
  secret: 'test',
  cookie: {
    secure: true
  }            
}));

В качестве альтернативы, вы можете указать Express, чтобы он доверял прокси-серверу.глобально:

app.set('trust proxy', 1)
12 голосов
/ 10 декабря 2011

На основе документации попробуйте следующее:

res.cookie('rememberme', 'yes', { expires: new Date(Date.now() + 900000), httpOnly: true, secure: true });

Использование res.cookie(name, val[, options]) устанавливает для указанного имени файла cookie значение val, с параметрами httpOnly, secure,expires и т. Д. Для параметра path по умолчанию установлено значение basepath приложения, которое обычно равно "/".

См. Документы для res.cookie для получения дополнительной информации.

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