私はDjango Oauth Libraryを使用しています。Django OAuth-個別のリソースと認証サーバー
私は別の認証サーバーとリソースサーバーを使いたいと思っています。
認証サーバーでは、次の設定があります。
INSTALLED_APPS = [
...
'oauth2_provider',
'rest_framework',
]
REST_FRAMEWORK = {
'DEFAULT_AUTHENTICATION_CLASSES': (
'oauth2_provider.contrib.rest_framework.OAuth2Authentication',
),
'DEFAULT_PERMISSION_CLASSES': (
'rest_framework.permissions.IsAuthenticated',
),
}
# ############## OAUTH SETTINGS ###################
OAUTH2_PROVIDER = {
'SCOPES': {'users': 'user details', 'read': 'Read scope', 'write': 'Write scope', 'groups': 'Access to your groups', 'introspection': 'introspection'},
'ACCESS_TOKEN_EXPIRE_SECONDS': 86400, # 1 Day.
}
私のリソースサーバ上の
INSTALLED_APPS = [
...
'oauth2_provider',
'rest_framework',
]
REST_FRAMEWORK = {
'DEFAULT_AUTHENTICATION_CLASSES': (
'oauth2_provider.contrib.rest_framework.OAuth2Authentication',
),
'DEFAULT_PERMISSION_CLASSES': (
'rest_framework.permissions.IsAuthenticated',
),
}
# ############## OAUTH SETTINGS ###################
OAUTH2_PROVIDER = {
'RESOURCE_SERVER_INTROSPECTION_URL': 'http://localhost:8000/o/introspect/',
'RESOURCE_SERVER_AUTH_TOKEN': '3yUqsWtwKYKHnfivFcJu',
}
私はRESOURCE_SERVER_AUTH_TOKEN
を入手するにはどうすればよい質問1)
?トークンをイントロスペクトする際
質問2)
、認証サーバーは、コンソールログに403禁止エラーを返します。
以下は、アクセストークンを取得するフローです。
リソースサーバーにクライアントのPOSTリクエストからclient_id, client_secret, grant_type and scopes
が届きました。 AuthServerをリソースサーバーから呼び出し、クライアントに応答を返します。
私はここで何が欠けていますか?
現在、私は自分のマシンでローカルに開発しています。 – PythonEnthusiast
'RESOURCE_SERVER_AUTH_TOKEN'とは何ですか? – PythonEnthusiast
リソースサーバーAUTH TOKENは、イントロスペクションエンドポイントがリソースサーバーを認証するために使用するトークンです。しかし、イントロスペクションまたはIntial client Authorizationグラントでエラーが発生していますか?イントロスペクションではなく、AUTHサーバーでエラーが発生しているようです。 –