設定 OAuth2 身份驗證
Djuth 不是由 Django REST Framework 處理的,但是有幾個 pip 模組可以實現 OAuth 客戶端。REST Framework 文件建議使用以下模組之一:
Django OAuth 工具包
pip install django-oauth-toolkit
settings.py
INSTALLED_APPS = (
...
'oauth2_provider',
)
REST_FRAMEWORK = {
'DEFAULT_AUTHENTICATION_CLASSES': (
'oauth2_provider.ext.rest_framework.OAuth2Authentication',
)
}
urls.py
urlpatterns = patterns(
...
url(r'^o/', include('oauth2_provider.urls', namespace='oauth2_provider')),
)
Django REST 框架 OAuth
pip install djangorestframework-oauth django-oauth2-provider
settings.py
INSTALLED_APPS = (
...
'provider',
'provider.oauth2',
)
REST_FRAMEWORK = {
'DEFAULT_AUTHENTICATION_CLASSES': (
'rest_framework.authentication.OAuth2Authentication',
)
}
urls.py
urlpatterns = patterns(
...
url(r'^oauth2/', include('provider.oauth2.urls', namespace='oauth2')),
)
管理員
轉到管理面板並建立一個新的 Provider.Client
,以獲得 client_id
和 client_secret
。