kmc*_*kmc 9 cookies coldfusion
CF11正在将这些cookie的值添加到看起来是应用程序名称的哈希值的前面.
在CF9中,我的CFID值是这样的:2219在CF11中,这变为Z3ir0kan93jawdd3kz38onobced8tfgn2kc3fy8i0w884gqffsn-2219
我需要能够在同一个池中运行CF9和CF11服务器(当我们进行升级时),但cookie值的差异意味着如果您登录CF9服务器并导航到CF11服务器,那么'我会退出
有没有办法让CF11将CF9格式用于这些cookie值?
出于安全原因,CFID/CFTOKEN 的值从简单的数值更改为字符串+数字。
http://helpx.adobe.com/coldfusion/kb/predictable-cookie-session-ids-reported.html
原因
在其默认配置中,Adobe ColdFusion 使用一对名为 CF_ID 和 CF_TOKEN 的 cookie 来管理用户会话。这两个 cookie 只能一起使用,而不能单独使用。
尽管 CF_ID 是连续的,但 CF_TOKEN 是随机的且不可预测。由于使用的是两个 cookie 的组合,因此最终的组合也是不可预测的。
解决方案
要在合规性测试中消除此错误,您可以将 ColdFusion 配置为使用 J2EE 会话标识符而不是 CF_ID 和 CF_TOKEN。
注意:此解决方案不会使您的 ColdFusion 服务器更加安全或降低安全性。
因此,让 CF 11 使用旧式数字 CF_ID 值并不符合您的最佳利益。
如果您将 CF 9 和 CF 11 放在同一个池中,其中请求可以随机地从一个池反弹到另一个池,您将遇到许多其他问题。大约两年前,我花了一年的大部分时间从 CF 8 转换到 CF 9(是的,是的,我知道)。
例如,如果您碰巧使用任何 CF UI 组件,那么当从 CF X 渲染的 HTML 和 JS 开始的请求转到 CF Y(该请求已针对该功能更新了 JS 函数)时,您就会遇到问题。我们将它们全部撕掉并转换为 jQuery/jQuery UI
我们还遇到了这样简单的事情:
this.name = HASH(getDirectoryFromPath(getCurrentTemplatePath()));
getDirectoryFromPath()返回 8 中的大写值和 9 中的小写值(反之亦然)。我们必须将其更新为:
this.name = HASH(Lcase(getDirectoryFromPath(getCurrentTemplatePath())));
为了让它们使用相同的应用程序名称和会话。
您最好在自己的池中运行 CF 11,并对其运行完整的回归测试,以找出需要更新的内容。
| 归档时间: |
|
| 查看次数: |
1912 次 |
| 最近记录: |