WSO2 Identity Server - 如何更改用户密码作为租户管理员

时间:2016-04-29 07:18:04

标签: wso2 wso2is

我想将特定用户的密码更改为租户管理员。我看到UserIdentityManagementAdminService.wsdl有一个名为changeUserPassword的函数,但这只接受old passwordnew password,而不接受username

我知道resetUserPassword,但我不想使用此功能,因为我只想在正确提供oldPassword时更改密码。

3 个答案:

答案 0 :(得分:1)

管理员用户通过发送用户名和旧密码更新用户密码在我看来不是一个有效的用例。我们不能指望管理员用户知道其他用户的密码。

您可以使用resetUserPassword方法或者您需要以用户自己的身份更改密码,您需要使用用户在登录时获得的Cookie来使用changeUserPassword

答案 1 :(得分:1)

可以使用UserAdmin服务changePasswordByUser以用户身份更改密码。在Identity Server 5.0.7中,Web服务接受username作为参数。

答案 2 :(得分:1)

如果您使用UserAdmin服务的[1] changePasswordByUser方法,仍需要提供用户的旧密码。这是SOAP请求。

<Envelope>
   <Header/>
   <Body>
      <changePasswordByUser>
         <userName>?</userName>
         <oldPassword>?</oldPassword>
         <newPassword>?</newPassword>
      </changePasswordByUser>
   </Body>
</Envelope>

[1] https://localhost:9443/services/UserAdmin?wsdl