管理员:重置其他用户密码#
预计阅读时间:2分钟
作为管理员重置其他用户的密码非常简单。您只需为特定用户生成密码重置令牌,并通过安全的方式发送给他们。
不用担心,令牌一旦使用就会失效,之后暴露它不会带来安全风险。
1. 使用您的凭据登录#
首先,使用您的管理员凭据登录数据站点:
admin_client = sy.login(
url=SERVER_URL,
port=SERVER_PORT,
email=ADMIN_EMAIL,
password=ADMIN_PASSWORD,
)
2. 选择要重置密码的用户#
搜索用户并选择需要重置密码的那位。最简单的方式是通过电子邮件。
注意
.users.search 函数返回一个列表,因此您还需要从该列表中选择一个元素(通常当您使用完整电子邮件地址搜索时,会选择第一个元素)。
user = admin_client.users.search(email=USER_EMAIL)[0]
3. 生成密码重置令牌#
token = admin_client.users.request_password_reset(user.id)
print(token)
4. 发送令牌#
生成令牌后,请以安全的方式将其发送给用户。
他们将使用访客客户端来重置密码,如下所示:
guest_client = sy.login_as_guest(
url=SERVER_URL,
port=SERVER_PORT,
)
guest_client.reset_password(
token=token,
new_password='*****'
)
重置密码后,他们将能够像往常一样使用新密码登录。
全部完成!