我正在尝试构建一个多租户架构,golang其中会有不同的服务Service-A,Service-B每个服务将在不同的服务器上运行,我希望用户有一个single sign-in 解决方案并在提供的所有服务中获得身份验证。就像什么Amazon AWS or Google一样,它有许多不同的服务,如Amazon Cloud Front, Amazon EC2,Amazon S3并且所有服务都通过单个登录和注销从一个服务结果进行身份验证log out from all connected services。我正在尝试在 中实现这一点golang,到目前为止,我发现了Open-id Connect coreos/dex, 但它缺少解释其 API 和体系结构的文档。设计这种认证系统的最佳架构是什么?我认为使用JWT token我可以实现它。Is this architecture will be secure or there any better solution for this?我的方法 ----------------- | | shared | | env file |SERVICES A |---------------| AUTH HEADER | | | JWT TOKEN | | | |---------------> ----------------- | --------- ------------------ shared | | | | SERVICE B | env file | |Login | -----------| |----------- | |Browser| | | | | --------- ------------------ | | | | | | Login| |"JWT_TOKEN RESPONSE" | | | | | | -------------- enviroment file ------------ | |----------------------------------| | | Main Server| | | | | |JWT_SECRET| -------------- |="secret" | ------------
- 1 回答
- 0 关注
- 151 浏览
添加回答
举报
0/150
提交
取消