【发布时间】:2014-10-05 12:24:39
【问题描述】:
我尝试制作我的第一个 CMS,但我对安全性有疑问。我现在有单独的管理区域和公共区域。我的管理区域在文件夹“admin”中,我的公共区域在文件夹“public”中。这两个文件夹都在我的文件夹“cms”中。在这两个地图中,例如:名为“index.php”的文件。内容是相同的,但在管理员的 index.php 中还有更多功能,例如:在管理员的导航中,我有注销和设置选项。那么,如果我从这两个文件夹中创建一个名为“public”的文件夹,并且将两个“index.php”连接到一个文件中并使用 $_SESSION 控制它以向导航添加附加功能,那会更好吗? 示例:如果是管理员登录,则会话将显示设置和注销功能以进行导航。当用户注销时,他不会在导航中看到设置和注销功能,因为它只会在用户设置会话时显示。 那么,分开管理文件夹和公用文件夹会更好更安全,还是将所有内容放在一个文件中是否相同?
【问题讨论】:
-
将其分开并不会使其更安全,即使在管理部分使用随机文件夹名称,这仍然是默默无闻的安全性,这并不值得。如果视图非常不同,则拆分视图可能是有意义的,但如果它只是这里和那里的链接,听起来不会使普通视图文件过于混乱。
-
您的问题似乎更多关于可用性与安全性。如果这真的避免了主应用程序中的管理代码,那么将它分开是有意义的。降低复杂性有时确实有助于安全性。使用两个因素授权(例如,客户端 ssl 认证结合登录表单)也更容易保护单独的文件夹。