我想从外部应用程序为服务现在的用户模拟密码重置服务,并且我已经在我的servicenow开发人员实例上安装了Password Reset - Orchestration Add-on插件。除此之外,我还可以在我的REST资源管理器上看到一个Pwd Reset API列表(例如pwd_init,pwd_verify等)。我浏览了这个documentation page上提供的文档,但是如果我试图从Postman这样的外部服务调用这些API,我将无法理解请求的有效负载是什么样的。我想要类似this api documentation的东西。
任何人都可以帮我吗?
答案 0 :(得分:1)
使用Table 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"
}
请记住,这会重置用户的密码,但新密码不会是&#34; resetpasswordtext&#34;。因此用户将无法使用&#34; resetpasswordtext&#34;。
登录要通过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"
}
现在的文字&#34; newpassword&#34;用户可以使用它来登录实例。 希望它对您的用例有所帮助。