我正在创建一个Django网站,将有4种类型的用户:
- 超级管理员:实质上管理所有类型的用户
- UserTypeA:可以登录网站,并基本上为某些任意模型具有CRUD接口。还具有额外的属性(仅适用于TypeA用户的特定信息)
- UserTypeB:可以登录网站,并具有仅适用于TypeB用户的附加信息,还可以创建和管理TypeC用户帐户
- UserTypeC:可以登录网站,并具有仅适用于TypeC用户的附加信息。
需要注意的是,我计划创建一个自定义接口,而不是使用内置的管理员接口。实现此用户结构的最佳方法是什么? 我宁愿使用Django的内置身份验证系统(管理密码盐和哈希,以及会话管理等),但如果有其他安全且适用于生产的身份验证系统,我也可以采用。
编辑:另外,我的计划是使用1个登录屏幕访问网站,并利用权限和用户类型来确定每个用户仪表板上可用的内容。
编辑:是否可以通过为每种用户类型使用一个应用程序来实现此目的,如果可以,如何在单个登录屏幕上完成此操作。