有没有办法让ColdFusion管理员只能调用一个页面?

时间:2012-03-06 08:44:31

标签: coldfusion admin

我在coldfusion服务器管理员中设置了计划任务 - 每天在特定时间,它会调用服务器上的某个页面。

问题是,我不希望在浏览器中导航到该页面的人意外调用此页面。有没有办法确保CF管理员只能 调用它?

2 个答案:

答案 0 :(得分:3)

检查cgi.http_user_agent - 从cfide或日程安排中调用时,cfschedule应为servicefactory

我不确定是否有任何文件,但这是我们在CF8和CF9下都依赖的东西。它不是{{1}}命令 - 它是ColdFusion调度程序使用的用户代理。 Also see answers to this SO question.

请注意,它可能是欺骗性的 - 任何能够设置自己的用户代理的浏览器或http代理都会通过仅基于此值的测试。还要考虑使用其他测试,如IP地址等。

额外的保护/混淆可能是需要一个特定的url参数(或一系列参数),这些参数可以硬编码到管理员的日程表中,从而减少但不能消除url篡改或意外处理的风险。

答案 1 :(得分:1)

我最好:

a)不要将您的脚本从面向外部的网站公开为所有;

b)为任务设置一个特定的网站,例如tasks.yourdomain.com,它只在本地IP地址上公开。没有任何欺骗或用户代理变幻无常的方式会打败它。设置只需几分钟。