servicenow - 现在如何在服务上使用密码重置 REST API?

标签 servicenow servicenow-rest-api

我想从外部应用程序为 service now 用户模拟密码重置服务,并且我已在我的 servicenow 开发人员实例上安装了密码重置 - Orchestration Add-on 插件。除此之外,我还可以在 REST 资源管理器上看到密码重置 API 列表(例如 pwd_init、pwd_verify 等)。我浏览了有关此 documentation page 的可用文档但如果我尝试从 Postman 等外部服务调用这些 API,我无法理解请求负载会是什么样子。我想要类似的东西this api documentation .

有人可以帮我解决这个问题吗?

最佳答案

使用表 API 来执行此操作。 为了重置用户的密码,您基本上需要更新 sys_user 表中用户记录的 user_password 字段。

Method: PUT/PATCH
http://<instance>/api/now/table/{tableName}/{sys_id}

这里的tableName是sys_user,sys_id是sys_user表中用户记录的sys_id。

API 请求的正文应如下所示:

{
  "user_password": "resetpasswordtext"
}

请记住,这将重置用户的密码,但新密码不会是“resetpasswordtext”。因此用户将无法使用“resetpasswordtext”登录。

要通过 API 实际设置用户密码,可以使用与上面相同的表 API。但为了将密码正确加密存储在数据库中,应在请求 URL 中添加以下查询参数来设置密码。

sysparm_input_display_value=true

因此 API 调用将是

Method: PUT/PATCH
http://<instance>/api/now/table/{tableName}/{sys_id}?sysparm_input_display_value=true
BODY: {
  "user_password": "newpassword"
}

现在用户可以使用文本“newpassword”登录实例。 希望它对您的用例有所帮助。

关于servicenow - 现在如何在服务上使用密码重置 REST API?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50833958/

相关文章:

javascript - ServiceNow 中的日期比较

mysql - 使用专有的 ODBC 驱动程序将 MySQL 连接到外部数据源

javascript - ServiceNow-如何从 Excel 文件将用户添加到组

angularjs - ServiceNow angularjs : how to pass server script values to client script

javascript - 获取范围内字段的引用表

node.js - Dialogflow actions-on-google : Unable to make Rest api calls before setting the response

java - 使用 Rest API(表 API)从 Service Now 获取数据时出现异常

python - 无法使用分配组立即获取服务票证

javascript - 解析 JSON 输出并在 javascript 中提取值

docker - ServiceNow 与 C# 和 dotnet 核心应用程序集成