Desabilitar ou restringir / o / applications (django rest framework, oauth2)

Atualmente, estou escrevendo uma API REST usando a estrutura de descanso do Django e oauth2 para autenticação (usando o django-oauth-toolkit). Estou muito feliz com os dois, fazendo exatamente o que eu quero.

No entanto, tenho uma preocupação. Estou passando meu aplicativo para produção e percebi que pode haver um problema com o / o / applications / view, que é acessível a todos! Eu me surpreendi por não ver nada no documento sobre isso, nem quando tento pesquisar no Google. Perdi alguma coisa?

Algumas idéias para fazer uma exibição personalizada, exigindo autenticação como superusuário (mas isso seria estranho, já que isso misturaria um tipo diferente de autenticação, não seria?) Ou adicionar uma rota fictícia para a exibição 401 ou 403 / o / applications /. Mas estes soam bastante hacky para mim … não é alguma solução “melhor” oficial para fazer isso? Eu ficaria muito surpreso se eu fosse o primeiro a se deparar com essa questão, eu devo ter perdido alguma coisa …

Obrigado antecipadamente!

Solução encontrada!

Na verdade, a razão pela qual / o / application estava acessível, é porque eu tinha uma session de superadministrador aberta.

Tudo é ótimo, então 🙂

Use apenas urls base: authorize/ , token/ , revoke_token/

 from oauth2_provider.urls import base_urlpatterns, app_name urlpatterns = [ ..., # some other urls # oauth2 urls path('o/', include((base_urlpatterns, app_name), namespace=app_name) ] 

Em vez de usar todos os URLs, como no exemplo oficial :

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