dpe*_*jar 3 php authentication zend-framework2 zfcuser
我想在Zend Framework 2中使用ZfcUser任意生成用户帐户,然后我可以通过激活链接或一些临时凭证向用户发送电子邮件.我不确定ZfcUser是否可以扩展到安全地执行此操作,因此我正在寻求帮助和建议.
我需要在我的推荐信函申请中这样做.它适用于现有用户(使用ZfcUser以"正常"方式注册的人)通过为该人提供电子邮件地址来请求某人的推荐信.此时我想使用给定电子邮件的ZfcUser生成一个帐户,并通知该人已经请求他们的推荐信,并且他们应该登录并完成它.
我为每个字母请求提供了一些一次性链接,但我觉得为每个电子邮件和相关用户创建一个帐户更有意义,以便收到多个信件请求的人可以登录并成为在一个地方提出他们的所有要求.我也认为这可能是明智的,在我的数据库,这些种类的用户帐户的分隔成不同的用户表,或者至少一个标志字段添加到我的当前用户的表模式.
我应该注意到,我目前也在使用CdliTwoStageSignup和ZfcUser.我也不一定需要将它用于此,但它在工具包中.
我认为ZfcUser'州'旗帜在这里可能很有用,但它并不是我想要完成的艰难部分.
我还在Github上的ZfcUser wiki中找到了另一条线索,告诉我如何做到这一点.
我正在寻找使用ZfcUser来完成此项工作的技术帮助,但我肯定对一般的设计理念或改进持开放态度.
如果有人正在寻找如何创建可以使用ZfcUser进行身份验证的通用用户,那么只需创建一个新用户,使用$ bcrypt将明文密码转换为哈希并将其全部保存到用户表中.基础知识概述如下:
$newUser = new User();
$newUser->user_id = 'newUserId';
$newUser->email = 'newUser@gmail.com';
$password = 'newUserPassword'//This is extremely bad form, don't do it. You don't want any passwords hanging out in plaintext.
$bcrypt = new Bcrypt();
$bcrypt->setCost(14);
$newUser->password = $bcrypt->create($password);
$userTable->saveUser($newUser);
Run Code Online (Sandbox Code Playgroud)
我在这里使用的Bcrypt成本是14.您可以使用适合您的应用程序的任何内容,但从ZfcUser配置文件中提取您的设置是个好主意.您也可以使用不同的值,Bcrypt会毫无问题地处理它.
我不建议像在示例中那样在代码中创建帐户并以明文形式保留密码.您通常会立即获得用户输入和散列而不存储它.
为简洁起见,我遗漏了一些重要的内容,如用户状态和用户名和显示名等选项.如果您也在使用BjyAuthorize,请不要忘记用户角色.
| 归档时间: |
|
| 查看次数: |
3479 次 |
| 最近记录: |