有没有办法模拟(生成有效的令牌对象)oauth v2.0令牌(隐式授权策略)用于测试目的?
我想从oAuth服务单元测试访问令牌解析,并且很高兴有一些javascript代码执行类似这样的操作:
生成有效对象
使用base64编码对其进行编码(我认为这是使用的编码)
或者由于某些限制这是不可能的?
答案 0 :(得分:0)
隐式授权 - oAuth 2.0
事实证明,我可以使用来自服务器响应的有效令牌,并将其转换为适合测试的令牌。在我的情况下,oAuth服务器的响应具有以下形式:
标题 - 已创建的编码算法
访问令牌 - base64编码对象(在窗口对象上使用atob()/ btoa()函数进行编码/解码)
哈希 - 使用标题中指定的算法完成的前3个项目。
它具有以下结构: header.access_token.hash
事实证明,如果没有正确的哈希,令牌将无效。令牌数据的散列是在服务器端使用私钥完成的,因此如果我更改散列,则令牌将变得过时。
由于我想要检查的令牌解析功能仅使用请求的access_token部分,我已经更改了头部和哈希部分,并且为了测试目的也编码了其他用户名。