首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >API级别的Django组和权限(使用django-rest-框架)

API级别的Django组和权限(使用django-rest-框架)
EN

Stack Overflow用户
提问于 2018-01-21 04:09:00
回答 1查看 3.1K关注 0票数 2

考虑以下情况;

我有一群用户API类。我需要通过检查请求用户的组权限来限制对每个API的访问,并允许用户进行组允许的操作。

假设我有一个用户user_xx,他属于组group_xx,并且拥有权限activity | activity | Can add activity。当user_xx试图通过HTTP-DELETE方法访问MyActivityAPI时,视图类应该限制访问。

我能实现这个功能吗?如果可能的话,怎么做?

我试过的

创建一些组&分配给它们的权限,并将用户添加到相应的组中。我试图访问一个受限的api,但它允许我访问(预期的行为:限制用户使用api)。

更新:

这是我的简单views.py

代码语言:javascript
复制
class MyApi(ModelViewSet):
    permission_classes = (IsAuthenticated,)
    queryset = MyModel.objects.all()
    serializer_class = MyModelSerializer
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-01-21 12:13:47

如文档中所述,为了将Django模型权限应用于视图集,您必须使用DjangoModelPermissions

代码语言:javascript
复制
class MyApi(ModelViewSet):
    permission_classes = (DjangoModelPermissions,)
    queryset = MyModel.objects.all()
    serializer_class = MyModelSerializer

在前面的代码中,所有操作都允许给任何经过身份验证的用户,因为您使用的是permission_classes = (IsAuthenticated,)

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48363587

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档