重置用户密码

最近更新时间:2023-08-14 15:50:22

我的收藏

接口描述

重置用户的密码。调用此接口前,需要先通过 发送_OTP_验证码 接口向用户发送验证码。
注意
新密码需符合当前应用关联的账号密码认证源的密码策略,且不能与策略中指定的前 N 次历史密码相同。

支持的应用类型

Web 应用、单页应用、移动 App。

请求方法

POST

请求路径

/reset_user_password

请求 Content-Type

application/json

请求示例

POST /reset_user_password HTTP/1.1
Content-Type: application/json
Authorization: Basic VEVOQU5UX0NMSUVOVF9JRDpURU5BTlRfQ0xJRU5UX1NFQ1JFVA==
Host: sample.portal.tencentciam.com

{
"password" : "MOCK_PASSWORD",
"email" : "MOCK_EMAIL@163.com",
"email_otp" : "MOCK_EMAIL_OTP",
"email_otp_token" : "MOCK_EMAIL_OTP_TOKEN"
}

请求头

名称
描述
Authorization
HTTP Basic 认证请求头,格式为 Basic <credentials>,其中 Basic 为固定字符串,<credentials>的计算方式为 base64(url_encode(client_id) + ":" + url_encode(client_secret)),Basic 和 <credentials> 之间用一个空格隔开。

请求体 JSON 参数

JSON 路径
数据类型
描述
client_id
String
应用的 client_id。需要与发送验证码时使用的一致。
client_secret
String
应用的 client_secret。Web 应用须传递此参数。单页应用和移动 App 不传递此参数。
password
String
新密码。
email
String
用户的邮箱地址。发送邮箱 OTP 验证码时传递此参数。
email_otp_token
String
发送邮箱验证码成功后服务端返回的 otp_token
email_otp
String
用户邮箱收到的 OTP 验证码。
phone_number
String
用户的手机号。发送短信 OTP 验证码时传递此参数。
phone_number_otp_token
String
发送短信验证码成功后服务端返回的 otp_token
phone_number_otp
String
用户手机收到的 OTP 验证码。

正常响应示例

重置密码成功。
HTTP/1.1 200 OK

异常响应示例

新密码与历史密码相同。
HTTP/1.1 400 Bad Request
Content-Type: application/json;charset=UTF-8

{
"error" : "recurrent_password"
}
新密码不满足密码策略。
HTTP/1.1 400 Bad Request
Content-Type: application/json;charset=UTF-8

{
"error" : "invalid_new_password"
}
未找到与 email 对应的用户。
HTTP/1.1 400 Bad Request
Content-Type: application/json;charset=UTF-8

{
"error" : "user_not_found"
}
用户处于冻结状态,无法重置密码。
HTTP/1.1 400 Bad Request
Content-Type: application/json;charset=UTF-8

{
"error" : "abnormal_user_status",
"error_description" : "User is frozen."
}
email_otp_token 错误或已过期,或重置密码时使用的参数与发送验证码时不一致(例如:邮箱不同)。
HTTP/1.1 400 Bad Request
Content-Type: application/json;charset=UTF-8

{
"error" : "bad_email_otp_token"
}
email_otp 错误或已过期。
HTTP/1.1 400 Bad Request
Content-Type: application/json;charset=UTF-8

{
"error" : "bad_email_otp"
}