Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/294.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 禁用或限制/o/应用程序(django rest框架,oauth2)_Python_Django_Rest_Oauth - Fatal编程技术网

Python 禁用或限制/o/应用程序(django rest框架,oauth2)

Python 禁用或限制/o/应用程序(django rest框架,oauth2),python,django,rest,oauth,Python,Django,Rest,Oauth,我目前正在使用Django REST框架和oauth2(使用Django oauth工具包)编写一个REST API进行身份验证。我对他们两个都很满意,完全符合我的要求 然而,我有一个担忧。我正在将我的应用程序传递给生产部门,并意识到/o/applications/view可能有问题,每个人都可以访问它! 我发现自己很惊讶在文档中没有看到任何关于它的信息,当我尝试用谷歌搜索它时也没有。我错过什么了吗 有些想法是:创建一个自定义视图,要求作为超级用户进行身份验证(但这会很奇怪,因为它会混合不同类型

我目前正在使用Django REST框架和oauth2(使用Django oauth工具包)编写一个REST API进行身份验证。我对他们两个都很满意,完全符合我的要求

然而,我有一个担忧。我正在将我的应用程序传递给生产部门,并意识到/o/applications/view可能有问题,每个人都可以访问它! 我发现自己很惊讶在文档中没有看到任何关于它的信息,当我尝试用谷歌搜索它时也没有。我错过什么了吗

有些想法是:创建一个自定义视图,要求作为超级用户进行身份验证(但这会很奇怪,因为它会混合不同类型的身份验证,不是吗?),或者为401或403视图添加一个虚拟路由到/o/applications/。 但我觉得这些听起来很烦人。。。这不是官方的“最佳”解决方案吗?如果我是第一个遇到这个问题的人,我会非常惊讶,我一定错过了什么

提前谢谢

找到解决方案

事实上,之所以可以访问/o/application,是因为我打开了一个超级管理员会话


一切都很好,然后:)

只使用基本URL:
授权/
令牌/
撤销令牌/

从oauth2\u provider.url导入基本URL模式、应用程序名称
URL模式=[
…,#其他一些URL
#OAuth2URL
路径('o/',包括((基本URL模式,应用程序名称),命名空间=应用程序名称)
]
而不是使用所有URL,如:

path('o/',include('oauth2_provider.url',namespace='oauth2_provider')),

Hmm,我的帐户仍然可以从非超级用户帐户访问…您没有添加任何其他配置?有人找到了解决方案吗?我现在正在查看。我想禁用应用程序。我想知道是否有方法禁用
/o/应用程序
URL。现在所有经过身份验证的用户都可以使用这些URL用户!我不希望我的用户在我的服务中创建新的OAuth应用程序。