在OpenAM v12.0.0中使用REST api
我正在使用REST API在领域中创建,更改和删除用户。很好。
我要寻找的是更改密码(或重置密码)后,当前tokenId和可能的其他tokenId(其他用户会话)不再有效,因此该网站获得的HTTP 401未通过身份验证。
在检查时间,我没有新密码也不是旧密码。仅userId和一个或多个tokenId。
我要做的步骤是:
1。创建/获取会话tokenId:
当我创建用户会话(使用标头X-OpenAM-UserName
和X-OpenAM-Password
)到
../ OpenAM-12.0.0 / json / myrealm / authenticate
我得到一个tokenId(AQIC..A4Mw .. *)。
2。更改密码:
当我通过REST api更改密码时,密码也会更改,并且我只能使用新密码请求新的会话/ tokenId。 这可以按预期工作。
3。验证tokenId
现在,我想从更改密码之前验证tokenId。我希望这会失败,因为令牌是使用旧的(不再有效)密码创建的。
我正在使用
../ OpenAM-12.0.0 / json / sessions / AQIC..A4Mw .. *?_ action = validate
但这答案总是正确的。
我也尝试过
../ OpenAM-12.0.0 / json / sessions /?_ action = getSessionInfo&tokenId = AQIC..A4Mw .. *
具有管理员用户的标头iplanetDirectoryPro
tokenId
此方法回答:501 Not Implemented Action getSessionInfo not implemented for this resource
或
../ OpenAM-12.0.0 / json / realms / myrealm / sessions / _action = getSessionInfo&tokenId = AQIC..A4Mw .. *
具有管理员用户的标头iplanetDirectoryPro
tokenId
此方法回答:403 Forbidden No privilege mapping for requested action getSessionInfo
因此,使用这些方法无法得到我想要的东西。
更改密码后,tokenId是否被视为无效?
如果是这样,更改密码后如何验证tokenId的有效性或用户会话?
谢谢。