【问题标题】:What happens to the Django admin site during production?在生产过程中 Django 管理站点会发生什么?
【发布时间】:2018-03-20 07:49:58
【问题描述】:

Django 在/admin 提供了一个管理界面。在生产过程中保留此 URL 是否不安全?

或者我应该将 URL 更改为 /d0oai32492384h24ui234nij23n4k2jnkjnkjn 或其他什么?

【问题讨论】:

  • 为什么你认为它在生产中不安全?
  • 超级用户访问可以如此轻松的事实 - 我不认为像 twitter 或 facebook 这样的大网站会有它们。
  • 好吧,即使有人访问该 url,他也只会得到一个带有登录名和密码的表单,必须传递该表单才能访问管理界面。此外,他必须是超级用户才能执行此操作,这意味着他必须通过以下方式创建:生产服务器上的“python3 manage.py createsuperuser”/
  • @Madi7 似乎是对的,但大多数人建议使用与 /admin 不同的 url 只是因为很难找到管理面板,好像有人发现他可以轻松尝试蛮力增加入站流量,以防成功的应用程序受到损害。如果可能,还可以尝试将 /admin 或等效项限制为仅限内部网络或仅限某些 IP。
  • 我认为管理站点非常安全。如果您想更改/admin/ 管理站点的默认端点,您可以在urls.py...上进行。url(r'^some_other_endpoint/', admin.site.urls),

标签: python django python-3.x security


【解决方案1】:

我想这就是你想要的(这不适用于 Django

urlpatterns = [
    path('d0oai32492384h24ui234nij23n4k2jnkjnkjn/', admin.site.urls),
]

这将适用于 Django

urlpatterns = [
    url(r'^d0oai32492384h24ui234nij23n4k2jnkjnkjn/', admin.site.urls),
]

这必须在您的主 urls.py 文件中完成。 您可以通过键入来访问它:

http://localhost:8000/d0oai32492384h24ui234nij23n4k2jnkjnkjn/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-03-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-02
    • 2018-04-19
    • 2011-01-23
    • 2019-08-30
    • 2014-02-05
    相关资源
    最近更新 更多