考虑以下情况;
我有一群用户和API类。我需要通过检查请求用户的组权限来限制对每个API的访问,并允许用户进行组允许的操作。
假设我有一个用户user_xx,他属于组group_xx,并且拥有权限activity | activity | Can add activity。当user_xx试图通过HTTP-DELETE方法访问MyActivityAPI时,视图类应该限制访问。
我能实现这个功能吗?如果可能的话,怎么做?
我试过的
创建一些组&分配给它们的权限,并将用户添加到相应的组中。我试图访问一个受限的api,但它允许我访问(预期的行为:限制用户使用api)。
更新:
这是我的简单views.py
class MyApi(ModelViewSet):
permission_classes = (IsAuthenticated,)
queryset = MyModel.objects.all()
serializer_class = MyModelSerializer发布于 2018-01-21 12:13:47
如文档中所述,为了将Django模型权限应用于视图集,您必须使用DjangoModelPermissions
class MyApi(ModelViewSet):
permission_classes = (DjangoModelPermissions,)
queryset = MyModel.objects.all()
serializer_class = MyModelSerializer在前面的代码中,所有操作都允许给任何经过身份验证的用户,因为您使用的是permission_classes = (IsAuthenticated,)。
https://stackoverflow.com/questions/48363587
复制相似问题