我构建了一个angularjs客户端和一个spring boot应用程序 . 后端提供了一些虚拟REST-API . 现在我想集成wso2 Api Manager来管理我的REST API和wso2 Identity服务器来保护它 .
所以我使用预先打包的身份服务器和API Manager . 如果用户只需重定向到WSO2 API Manager Server即可进入webapp,即可授权用户: window.location.href = https://localhost:9445/oauth2/authorize
这样我就可以看到wso2 Identity Server的登录表单 . 输入我的凭据后,我将使用名为 code
的新url参数重定向回我的webapp .
在我阅读的文档中,我必须使用新收到的 code
发出新请求以获取访问令牌 . 这是问题所在 . 我需要发送一个 Authorization: Basic
标头,其值是 client_id:client_secret
的base64编码 . 据我所知,它不确定在javascript代码中保留客户端密钥 .
另外我不确定我是否使用wso2正确的流程 . 是否有一个明确的教程/示例如何我可以使用wso2的Web应用程序 .
我正在使用 wso2 Api Manager 1.10.0 和 wso2 Identity Server 5.1.0 .
编辑:我发现我需要使用隐式流程的浏览器/ javascipt应用程序 .
1 回答
我找到了答案 . 在浏览器环境中,我必须使用“隐式”流程 . 这样我从api管理服务器获取访问令牌 .