7.7. 添加/删除用户并查询功能接口
通过我们的示例,我们尚未完成一件事情是,允许它添加和删除用户或更改密码。示例中定义的用户还无法在管理控制台中查询或查看。要添加这些增强功能,我们的示例供应商必须实施 UserQueryProvider 和 UserRegistrationProvider 接口。
7.7.1. 实施用户RegistrationProvider 复制链接链接已复制到粘贴板!
使用这个步骤实施从特定存储中添加和删除用户,我们首先需要将此属性文件保存到磁盘中。
PropertyFileUserStorageProvider
然后,addUser () 和 removeUser () 方法的实现会变得简单。
PropertyFileUserStorageProvider
请注意,在添加用户时,我们将属性映射的 password 值设置为 UNSET_PASSWORD。我们这样做,因为我们不能对属性值中的属性具有 null 值。我们还必须修改 CredentialInputValidator 方法以反映这一点。
如果提供程序实施 UserRegistrationProvider 接口,则将调用 addUser () 方法。如果您的供应商有配置开关来关闭添加用户,则从此方法返回 null 将跳过该提供程序并调用下一个用户。
PropertyFileUserStorageProvider
由于现在我们可以保存我们的属性文件,因此允许密码更新也有意义。
PropertyFileUserStorageProvider
现在,我们可以实施禁用密码。
PropertyFileUserStorageProvider
通过实施这些方法,您现在可以在 Admin 控制台中更改和禁用用户的密码。