当前位置: 首页 > 知识库问答 >
问题:

发送密码遗忘邮件

尹凌龙
2023-03-14

首先,我想让用户重置他们的密码。已经有一个用户正在使用的应用程序,所以最好在那里集成它。我在其中创建了一个小的环形模块,并尝试通过与Keycloak password Embright表单提供的机制相同的机制来触发密码遗忘邮件。但我想不通他们是如何创建这个动作链接的:

https://example.com/keycloak/auth/realms/my-realm/login-actions/reset-credentials?session_code=dpmvjiskkf-sszbc8_fkrbzeuyhwcv24ui-dc27dkvi&execution=98bd5b5d-054e-4c44-ad07-50b668fb149a&client_id=account&tab_id=lr7ih6brehm

执行似乎总是一样的,但我不知道首先从哪里得到它。

我目前的解决方案在Keycloak和应用程序在sam域上运行时有效,它是从Keycloak请求原始站点,提取链接,并在用户输入用户名后向该URL发出post请求。但这有点脏:)

有没有一个“正确”的方法来做到这一点?

密码重置添加

除了密码重置之外,我们还有不同的领域来处理LDAP中具有SASL属性的用户帐户和存储在MSAD中的真实密码。我们的前端计算出哪种类型的用户正在请求密码重置,并委托给适当的领域。

共有1个答案

赵朝
2023-03-14

这里有很多由keycloak提供的admin-apiendpoint

满足你的要求;

  1. 密码重置-您应该能够通过利用API“put/{realm}/users/{id}/execute-actions-email”来完成此操作。StackOverflow中有一系列示例,包括以下
  2. 初始密码-对于创建用户,您应该能够在调用“post/{realm}/users”时使用类似的方法,因为您能够在UserRepresentation对象中传递“required actions”。此外,您可以将此API与以前的API结合起来以满足您的需要。但是,这里还有其他API可以使用,请记住,keycloak还为用户提供了一个注册页面。请同时查看“put/{realm}/users/{id}/reset-password”。

查看此链接以获得对所需操作的解释。

请注意,为了调用keycloak admin-api,您应该创建一个有足够权限调用admin-api的客户机。这方面的配置将取决于您计划使用的授权机制--但要了解它的要点--创建一个客户机,并检查客户机页面上可用的替代方案--附上一张屏幕截图供您参考;

祝你好运!

 类似资料:
  • 本文向大家介绍Django实现发送邮件找回密码功能,包括了Django实现发送邮件找回密码功能的使用技巧和注意事项,需要的朋友参考一下 在各大网站上,一定都遇到过找回密码的问题,通常采用的方式是通过发送带有验证码的邮件进行身份验证,本文将介绍通过Django实现邮件找回密码功能。 找回密码流程 功能流程: 1.首先在用户登录界面,添加“忘记密码”链接 2.生成随机验证码,发送邮件到用户信息中填写邮

  • 忘记密码时 若要使用此机能,可能需先更新系统软件。 忘记密码时,请遵循以下方法重新设定密码。 1. 进入主选单的(PlayStation®Netrowk)后,选择(账户管理)或(PlayStation®Store)。 2. 显示需输入登入ID(电子邮件地址)与密码的画面时,选择[忘记密码时]。 3. 输入登入ID(电子邮件地址)及出生日期。 4. 选择变更密码的方法。 回答[密码提示问题]来变更密

  • 问题内容: 我知道有一些与此类似的问题,但我无法使其正常运行。 好的,我在一个名为$ emailList的变量中有一个从数据库中获取的电子邮件列表。如果将变量放在该部分中,则可以获取代码以从表单发送电子邮件,但无法使其与bcc一起使用。我什至还添加了一封电子邮件,以防万一,但这没什么关系。 这是我的代码。 我试过两个代码: 和 不是因为这些电子邮件而没有分开电子邮件。我知道他们是因为如果我在本节中

  • 本文向大家介绍django 开发忘记密码通过邮箱找回功能示例,包括了django 开发忘记密码通过邮箱找回功能示例的使用技巧和注意事项,需要的朋友参考一下 一、流程分析: 1.点击忘记密码====》forget.html页面,输入邮箱和验证码,发送验证链接网址的邮件====》发送成功,跳到send_success.html提示 2.到邮箱里找到验证链接网址,访问重设密码网址reset.html==

  • 后台密码忘记了怎么办? 1.如果你已经在后台配置了,邮件发送功能且邮箱是你的真实邮箱,可以到前台登录页找回密码; 2.如果你是后台管理员,你可以使用 sp_password()方法生成一下新的密码; 你只要在任何一个前台可以访问控制器里,如application/Portal/Controller/IndexController.class.php <?php namespace Portal\C

  • 我正在尝试在Laravel中自定义密码重置电子邮件。 我必须重写此函数: 这是我的尝试: 我得到这个错误: Illumb\Foundation\Auth\User::sendPasswordResetNotification($token,Illumb\Http\Request$Request)的声明必须与Illumb\Contracts\Auth\CanResetPassword::sendPa