1

我用通常的 Django 项目结构在 Django 中编写了一个 Web 应用程序。在我的公司,他们想在不同的服务器上分离前端和后端。前端服务器将具有互联网访问权限,后端将具有强大的防火墙并且没有网络访问权限。我从这个概念中了解到的是,他们希望将后端(view.py)从 Django 项目中分离到共享文件夹(与后端服务器共享)。是否可以将 view.py 文件分离到不同的文件夹,然后将其导入项目?

还有关于同一主题的另一个问题。Django 是否有良好的安全性或需要这样的安全性想法来防止黑客攻击?如果我不能分离后端,我应该采取什么措施来保护我的后端免受黑客攻击?(我已经使用 CSRF 令牌实现了 LDAP 身份验证,并且所有页面都受 @login_required 保护)

4

1 回答 1

1

您可以做的是创建两个项目,一个用于为您的“前端”提供一个禁用的管理员(只需删除项目 urls.py 中的“管理员”),另一个用于管理 django 管理员,并且只能从公司内部访问网络。

让他们共享同一个数据库,其中数据库服务器也应该只能从您公司的网络中访问。确保仅在一个应用程序中创建模型,最好是在前端应用程序中,因为您可能希望由 django 表单处理用户输入。

通过“后端”应用程序中的 admin.py 在“后端”项目中注册“前端”应用程序模型。这应该允许您访问存储在数据库中的数据。
当涉及到第三方应用程序和插件时,请务必检查它们的 urls.py(并禁用管理员以防万一)、models.py 和 admin.py 以便在您的“后端”中实现它。

希望有帮助!

于 2017-03-10T22:10:58.747 回答