文档对此并不完全清楚 - 这些变量之间有区别吗?至少在 IIS 上它们看起来是相同的,但如果在其他服务器下可能有所不同,我不想依赖这一点。

有帮助吗?

解决方案

据到Adobe ColdFusion文档它们是相同的。

http://livedocs.adobe.com/的ColdFusion / 8 / HTMLDOCS / help.html?含量= Expressions_8.html

综观openbd源代码,REMOTE_USER和AUTH_USER被映射到相同的密钥,所以它返回相同的值。

纵观railo源代码,我不太理解到底是怎么回事,但它似乎被设置REMOTE_USER,我不知道,如果AUTH_USER被设置在任何地方。

如果你正在设计一个应用程序,是使用ColdFusion,railo和openbd兼容,它似乎更安全的使用REMOTE_USER。也许别人可以发表评论,因为我不完全理解的代码,而无需花时间深入调查。

其他提示

和REMOTE_USER AUTH_USER将在AdobeCF /阿帕奇在AdobeCF / IIS相同的,但不是。使用AdobeCF / Apache的时候AUTH_USER将是空白。

所以最好的代码使用REMOTE_USER变量。如果你发现自己工作代码引用AUTH_USER在Apache中,有一种方法可以让Apache使用mod_rewrite填充该变量。这将导致阿帕奇REMOTE_USER复制到AUTH_USER:

RewriteEngine叙述上 的RewriteCond%{REMOTE_USER}() 。重写规则 - [E = AUTH_USER:%1]

有更多的信息在这里: HTTP://www.stillnetstudios。 COM /复制-ENV-变量 - 在-阿帕奇/

我确信REMOTE_USER是标准CGI变量。

根据这个页,它们是相同的: http://livedocs.adobe.com/coldfusion/6/CFML_Reference/Expressions5。 HTM

为了安全起见,请坚持使用 REMOTE_USER,因为它是 CGI/1.0 规范中定义的(在此处找到) http://www.ietf.org/rfc/rfc3875)

AUTH_USER 似乎随着时间的推移而潜入

在我的经验,CGI变量倾向于网络服务器(Apache的,IIS的JRun等),甚至它们的版本之间的不同。唯一安全的赌注,在CGI变量基础东西的时候,是检查什么值出现在你的开发,阶段,生产(ETC)的服务器。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top