Wordpress和自定义网站之间的单点登录

时间:2018-05-18 12:16:30

标签: php wordpress single-sign-on

我正在使用Wordpress构建一个电子商务网站。 我有电子邮件和名字的列表。 当他们点击另一个不是用Wordpress构建的自定义网站上的链接时,我的网站只能由拥有这些电子邮件的人访问。

我想要的是,当客户点击我的Wordpress网站的链接时,他们会自动登录Wordpress并立即购物。

请问我该怎么做?

我瘦的方法是将电子邮件作为参数传递到URL中。 然后在wordpress中我将使用传递的电子邮件创建一个新用户,然后我将用户登录,然后我将用户重定向到主页。

这是一个很好的解决方案吗?

1 个答案:

答案 0 :(得分:3)

尝试此操作,称为单点登录或SSO。你基本上会绕过WordPress'身份验证方法并使用来自第三方的方法。 WordPress需要某种本地用户才能正常运行(例如user_can()函数。)

因此,一般要点是这样的 - 将任何身份验证请求发送给第三方,该第三方将会或者不再返回有关用户的一些数据 - 如果是,请检查是否有代表经过身份验证的用户的WordPress用户。如果没有,请创建一个并添加第三方可能需要的任何元数据。 - 这些WordPress用户就像占位符一样,每次成功进行身份验证时,都会更新WordPress用户的元数据,以保持同步。

OneLogin是这样做的,你可以浏览他们的WordPress插件,以了解它是如何工作的。

https://wordpress.org/plugins/onelogin-saml-sso/

或者您也可以参考。

http://carlofontanos.com/auto-login-to-wordpress-from-another-website/