OKTA REST API - 更改与Active Directory连接的用户密码

时间:2016-09-14 19:49:14

标签: rest active-directory okta

我有一个Okta帐户。我已经使用Active目录配置它。我已将几个用户从Active目录导入Okta。

现在,我有一个PHP网站,我已经创建了自定义登录表单。登录表单提交后,我通过REST API检查Okta用户的用户名和密码。我能够获取用户信息。到现在为止一直都很好。

现在,我应该处理重置密码功能。我使用REST API通过Okta API触发忘记密码请求(例如:https://xxxx.oktapreview.com/api/v1/authn/recovery/password)。

问题在于:Okta API不允许我触发忘记密码请求,因为用户帐户配置文件由Active Directory掌握。

我有什么办法可以通过Active Directory管理用户个人资料,并且能够通过Okta API重置用户密码吗?

PS:下面是我对Okta的忘记密码REST API调用:

网址https://xxxx.oktapreview.com/api/v1/authn/recovery/password

标题

Accept: application/json

Content-Type: application/json

Authorization: SSWS AGoodApplicationTokenWorksFine

请求正文:

{
  "username": "abcd@gmail.com",
  "relayState": ""
}  

响应:

{
  "errorCode": "E0000034",
  "errorSummary": "Forgot password not allowed on specified user.",
  "errorLink": "E0000034",
  "errorId": "oae6jL5WFCqTYi-TNqAwCx_VA",
  "errorCauses": [
    {
      "errorSummary": "Recovery credential not set."
    }
  ]
}

感谢。

1 个答案:

答案 0 :(得分:0)

根据错误,您需要设置"恢复问题"执行呼叫。请确保您设置了安全问题并尝试。