1

sslターミネーション用のstunnelの後ろにnode.js/expressアプリケーションがあります。安全なセッションCookieを強制する方法がわかりません。セッションミドルウェアソースを見る:

    // only send secure session cookies when there is a secure connection.
    // proxySecure is a custom attribute to allow for a reverse proxy
    // to handle SSL connections and to communicate to connect over HTTP that
    // the incoming connection is secure.
    var secured = cookie.secure && (req.connection.encrypted || req.connection.proxySecure);
    if (secured || !cookie.secure) {
      res.setHeader('Set-Cookie', cookie.serialize(key, req.sessionID));
    }

どうやらreq.connection.proxySecureをtrueに設定する必要がありますが、その方法がわかりません。stunnelはこの「HTTP経由」で通信することになっているようですが、stunnelはヘッダーを設定できません。だから私は途方に暮れています。代わりに、セッションミドルウェアの前にカスタムミドルウェアでローカルに設定するか、どこかの接続構成変数で設定する必要がありますか?

助けてくれてありがとう

4

1 に答える 1

2

プロキシがX-Forwarded-Proto: httpsヘッダーを設定していることを確認してください。proxy:true次に、構成パラメータをセッションミドルウェアに追加する必要があります。

于 2013-01-28T20:13:40.870 に答える