使用自定义身份验证应用程序和身份验证中间件替换 Django 身份验证应用程序和中间件

发布于 2024-12-09 07:47:31 字数 654 浏览 1 评论 0原文

在研究了在 django 中扩展 auth 应用程序的用户表的方法之后,我决定编写自己的 auth 应用程序。 这些是我需要做的替换 contrib.auth 应用程序:

  1. 创建一个 AuthenticationMiddleware 类并添加一个 MyAuth.models.User每个请求中的对象而不是 django.auth.models.User 并在设置文件中指向它。
  2. 创建自定义AuthenticationBackend
  3. 创建 AuthenticationContextProcessor 并类似地在设置文件中指向它们。

问题:

  1. 我需要在任何其他应用程序或会话中间件类中进行任何编辑吗?
  2. 编写自己的身份验证应用程序的基本原因是用户表中没有足够的字段 我不喜欢 user_profile 的想法。我注意到我们添加了用户 反对每个请求,以便我可以在会话中使用它。 但是如果我在用户表中添加更多字段,那么用户对象将会变得更大 如果添加到每个请求中只会增加负载。 我说得对吗?增加用户对象的大小会带来任何负载问题吗?或者影响可以忽略不计?

After researching on ways to extend user table of auth app in django , I have decided to write my own auth app.
These are the things which I need to do for replacing the contrib.auth app:

  1. Create an AuthenticationMiddleware class and add an MyAuth.models.User object in every request instead of django.auth.models.User and point to it in settings file.
  2. Create a custom AuthenticationBackend.
  3. Create AuthenticationContextProcessors and similarly point to them in settings file.

Questions:

  1. Do I need to do any editing in any other app or session middleware class?
  2. The basic reason of writing my own auth app is not having enough fields in the user table
    and I don't like the idea of user_profile. I have noticed that we add user
    object to every request so that I can use that in sessions.
    But If I add more fields in user table then user object will get bigger
    and if added to every request will only increase the load.
    Am I right? Will increasing the size of the user object pose any load problems? Or will the effect be negligible?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文