Okta API: Удалить вопрос безопасности / вызов забытого пароля - PullRequest
0 голосов
/ 11 сентября 2018

Я пытаюсь использовать следующие okta-api https://developer.okta.com/docs/api/resources/users#update-profile для удаления пароля пользователя.

У нас есть ряд пользователей, которые были перенесены из Stormpath, чей пользовательский вопрос - «StormpathMigrationAnswer» (или аналогичный), и пользователи не знают, что такое ответ, и поэтому не могут завершить сброс пароля.

Мы хотим удалить этот вопрос и дать пользователям возможность задать свои собственные.

Я использую следующий запрос PUT, используя ноль для значений, которые я хочу удалить (согласно документации):

curl -v -X PUT \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: SSWS ${api_token}" \
-d '{
  "credentials": {
    "password": {},
    "emails": [
      {
        "value": "xxx@yyy.com",
        "status": "VERIFIED",
        "type": "PRIMARY"
      }
    ],
    "provider": {
      "type": "OKTA",
      "name": "OKTA"
    },
    "recovery_question": {
      "question": null,
      "answer": null
    }
  }
}' "https://dev-123456.oktapreview.com/api/v1/users/${user-id}"

Однако я получаю следующую ошибку:

{
  "errorCode": "E0000001",
  "errorSummary": "Api validation failed: securityQuestion",
  "errorLink": "E0000001",
  "errorId": "oaeoRiOAnzMRLennnnnnnnn",
  "errorCauses": [
    {
      "errorSummary": "securityQuestion: This field is required when its parent is specified."
    },
    {
      "errorSummary": "securityAnswer: This field is required when its parent is specified."
    }
  ]
}
...