django / heroku / github上的python-social-auth:缺少会话状态值

时间:2016-07-14 17:18:45

标签: django github oauth python-social-auth

此问题特定于与Django应用程序集成的python-social-auth OAuth框架。它涉及交互的回调部分。

问题:使用GitHub提供程序成功验证后,对https:/// complete / github /?code = 583etc& redirect_state = 8f5b9etc的响应指示重定向到我的SOCIAL_AUTH_LOGIN_ERROR_URL并显示“Session State Value Missing”错误。

我想要的是我的授权用户进入SOCIAL_AUTH_LOGIN_REDIRECT_URL

应用程序在gunoku / 19.3.0的herps下运行在https://

在http //:下的WSGIServer / 0.1 Python / 2.7.6上相同的应用程序成功(意味着相同的GitHub用户可以在此环境中对应用程序进行身份验证。)

堆栈跟踪,http跟踪,Django设置转储:all here

管道和后端集成显示在不同环境中有效。

AUTHENTICATION_BACKENDS = (
        'social.backends.github.GithubOAuth2',
        'django.contrib.auth.backends.ModelBackend',
)

SOCIAL_AUTH_PIPELINE = (
    'social.pipeline.social_auth.social_details',
    'social.pipeline.social_auth.social_uid',
    'social.pipeline.social_auth.auth_allowed',
    'social.pipeline.social_auth.social_user',
    'social.pipeline.social_auth.associate_user',
    'social.pipeline.social_auth.load_extra_data',
    'apps.accounts.pipeline.get_user_teams',
    'social.pipeline.user.user_details',
)

协议是https://,目前正在应用这些可能相关的设置。我已经尝试了几个真/假的组合与前4个。

SESSION_COOKIE_SECURE = 'True'
SESSION_COOKIE_HTTPONLY = 'True'
CSRF_COOKIE_SECURE = 'True'
CSRF_COOKIE_HTTPONLY = 'True'
SOCIAL_AUTH_REDIRECT_IS_HTTPS = 'True'

类似问题here的解决方案无法解决。

欢迎专家建议!

非常感谢!

0 个答案:

没有答案