仅将身份验证与Python社交身份验证和Django关联

仅将身份验证与Python社交身份验证和Django关联,python,django,python-social-auth,Python,Django,Python Social Auth,为了简单的概念证明,我正在配置Django应用程序进行身份验证 通过pythonsocialauth针对内部OAuth2服务器。注:一 我是Django的新手,所以仍然在努力想办法 身份验证方案依赖于带外帐户同步,即。, 只允许现有用户,不自动创建新用户。但是, 记录在案的“仅关联”管道配置似乎不起作用 按照我的想法(在与get\u username和social\u uid进行各种组合之后);我只有在创建了自己的系统后才能让它工作 管道方法返回带有“用户”键的dict 我从一开始就使用这个配置

为了简单的概念证明,我正在配置Django应用程序进行身份验证 通过
pythonsocialauth
针对内部OAuth2服务器。注:一 我是Django的新手,所以仍然在努力想办法

身份验证方案依赖于带外帐户同步,即。, 只允许现有用户,不自动创建新用户。但是, 记录在案的“仅关联”管道配置似乎不起作用 按照我的想法(在与
get\u username
social\u uid
进行各种组合之后);我只有在创建了自己的系统后才能让它工作 管道方法返回带有“用户”键的dict

我从一开始就使用这个配置 :

但是前两个-
social\u user
associate\u user
,如果 没有“用户”密钥。没有关于如何获取“用户”密钥的任何其他指导 最后,我想到了:

SOCIAL_AUTH_PIPELINE = (
    'ccpoc.auth.load_user',
    'social.pipeline.social_auth.associate_user',
)
其中,
load\u用户
知道根据自定义键查找当前用户
在JSON中返回。虽然它有效,但我不确定这是否符合框架的“精神”,或者我只是缺少了一些东西。

这是有效的,这是符合应用程序精神的正确方法,我的文档并不完全正确,这里列出的单一关联管道假设用户已登录,这不是您的场景,但文档中没有详细说明。

这是有效的,这是符合应用程序精神的正确方法,我的文档并不完全正确,此处列出的单一关联管道假设用户已登录,这不是您的场景,但文件中没有详细说明

SOCIAL_AUTH_PIPELINE = (
    'ccpoc.auth.load_user',
    'social.pipeline.social_auth.associate_user',
)