通过URL令牌在Magento商店进行身份验证


Autentication in Magento Store by URL Token

我想实现这样一种方式,即客户没有登录到Magento商店,点击交易电子邮件中的订单链接,通过URL传递的令牌访问已经登录的商店或类似的东西。

在Magento中有什么方法可以做到这一点吗?如果没有,我需要开发哪些步骤来实现这个功能?

首先我想说的是,这是一个非常不安全的方法。
邮件可以被转发,如果你不知道邮件中有一个自动链接,你可能会遇到麻烦。
但是如果你坚持....
我在这里写了一个例子,说明如何通过点击后端按钮在前端作为客户登录。我的方法在某种程度上更安全,因为每次单击按钮时都会生成登录令牌,并且生成发生在后端…所以风险是最小的。
但你需要的是一个前端链接,应该总是工作。

这个想法是添加一个新的客户属性来保存令牌。
在发送电子邮件时,如果令牌为空,则生成它。否则就用你现有的。
您可以创建自己的控制器来处理令牌验证(示例中也提供了代码)。如果代码与客户令牌匹配,则登录。

您还可以添加额外的验证条件。比如在url中包含一个散列字符串,其中包含客户电子邮件和id,或者甚至是想到的东西。

但是我不得不再说一遍……