JAX-RS(Jersey)のcookieはデフォルトではセキュアではない?

Responseにセットできるcookieのsecure属性。省略できるけど、デフォルトはfalseになってる。気を付けたい。

具体的には以下のメソッド

javax.ws.rs.core.NewCookie.NewCookie(javax.ws.rs.core.Cookie cookie)

このメソッドは、javax.ws.rs.core.Cookieを引数としてクッキーを生成するんだけど第5引数(secure属性)がfalseになってる。

public NewCookie(Cookie cookie) {
    this(cookie, null, DEFAULT_MAX_AGE, null, false, false);
}

secure属性が「true」になっているとhttpsでしか送信されなくなるので「false」であることが脆弱性ではないけどhttp、httpsが混ざったサービスの場合、http通信時にクッキーの中身が平文で送信されてしまうので気を付ける必要がある。secure属性は必ず確認した上で指定しましょう。