【发布时间】:2009-12-03 12:44:24
【问题描述】:
我有一个具有单帐户模型的 Django 应用程序。我们正在将其转换为多帐户,因此几乎每个模型都会有一个ForeignKey(Account)。
确保每个Account(每个帐户都在自己的子域中)只能访问自己的数据的最简单方法是什么?我们有一个填充子域的中间件,以及每个请求的当前帐户。
我们可以通过在所有视图中添加filter(...., account = request.account) 来实现这一点。这是不可取的,因为,
-
filter(...., account = request.account)将被添加到所有的查询中,这样就不会枯燥、重复且容易出错。 - 更大的风险是如果缺少过滤器,任何地方都有安全风险。
【问题讨论】:
标签: django django-queryset django-authentication