问题
I am using Yodlee aggregation api's and i was wondering if there is a way to reset password for an existing user without knowing the current password ? The API Documentation says that a user can only be unregistered if userId/password are known?
回答1:
you can use the below set of API's which will help you to reset the password of any existing user without knowing their password.However you should have a valid co-brand login and registered user id.
Password Rest Management Service APIs:
Step 1. Get the token by calling getToken
API.
Step 2. Get the token specific user context from getPasswordResetUserContextFromToken
API by passing token got from step 1.
Step 3. Set the session by calling setSessionForValidToken
API by passing token got from step 1 and user context from step 2.
Step 4. Now call the changePassword
API by passing token got from step 1 and user context from step 2 and new credentials.
1.Service Name: PasswordResetManagement
Operation: getToken
Sub URL: /jsonsdk/PasswordResetManagement/getToken
API Parameters:cobSessionToken
Valid Cobrand Session TokenUsername
Valid user name
Sample API Response:
{"validUntil":"2014-05-23T18:15:16+0530","username":"yodlee121","token":"364cb1d62f8380b7f3596e73f2179b4d"}
2.Service Name: PasswordResetManagement
Operation: getPasswordResetUserContextFromToken
Sub URL: /jsonsdk/PasswordResetManagement/getPasswordResetUserContextFromToken
API Parameters:cobSessionToken
Valid Cobrand Session Token
token 364cb1d62f8380b7f3596e73f2179b4d
Sample API Response:
{"conversationCredentials":
{"sessionToken":"06142010_0:f7cf401c5e7404b8fecd47fe340c69168c411dd966fe12906fedafecd71e7af6832a9585dc283f268a0989a9c50999d1027156fc83bd64285c37a8d839ed4a82"},
"valid":false,
"isPasswordExpired":false,
"cobrandId":10000004,
"channelId":-1,
"locale":"en_US",
"tncVersion":2,
"applicationId":"17CBE222A42161A3FF450E47CF4C1A00",
"cobrandConversationCredentials":
{"sessionToken":"06142010_0:a6c2ab5ff19c8cad89d7aef58474e191a54e81607bff5e2257c7d98b1d985d29c685ccbf2fe032f2c6fe1c7fddff36acd18c5ac20ee3f4676d5c76b3e6b7a3a9"},
"preferenceInfo":{"currencyCode":"USD","timeZone":"PST"}
}
3.Service Name: PasswordResetManagement
Operation: setSessionForValidToken
SERVICE URL:/jsonsdk/PasswordResetManagement/setSessionForValidToken
API Parameters:cobSessionToken
Valid Cobrand Session TokenuserSessionToken
Password reset user session token
token 364cb1d62f8380b7f3596e73f2179b4d
Sample API Response:
{}
4.Service Name: PasswordResetManagement
Operation: changePassword
SERVICE URL:/jsonsdk/PasswordResetManagement/changePassword
API Parameters:cobSessionToken
Valid Cobrand Session TokenuserSessionToken
Password reset user session token
token 364cb1d62f8380b7f3596e73f2179b4d
newCredentials.objectInstanceType
com.yodlee.ext.login.PasswordCredentialsnewCredentials.password
New password
Sample API Response:
{"loginName":"raja12345","password":"raja@12345"}
来源:https://stackoverflow.com/questions/30399887/yodlee-user-password-reset