给定 MySQL 中具有“国家”字段的行的表,我需要向用户提供权限。本质上,我想说“X 用户可以访问德国 + 法国 + 加拿大”,但“Y 用户可以访问法国 + 美国”。我认为一个好的方法可能是使用 Django 的组(即 - 每个国家有 1 个组,并相应地添加人员)。我的问题是,出于安全原因,我想确保查询一组授权数据。
例如,一种方法是为每个可能的组合(仅限德国,德国 + 法国,几乎无限)创建一个视图 im MySQL,但鉴于潜在排列的数量,这显然是不可行的。我可以为每个国家/地区创建 1 个视图,并分别查询每个视图,但是如果允许用户访问 20 个不同的国家/地区,我会对数据库施加很大压力。
那么,我如何才能高效、安全地查询这些数据,以确保 100% 确保我只会取回授权数据?
PS:不一定在SQL级别。如果 Django 有一些功能允许我这样做,我会很好的。