1
hezhou920 2017-11-09 17:09:15 +08:00
显然是可以的
|
2
janxin 2017-11-09 17:09:41 +08:00
可以
|
3
wanghaa OP |
4
K1W1 2017-11-15 19:39:00 +08:00
@wanghaa #3 因为认证与验证是分开的,用户通过 A 服务器登录得到了签名 token (认证),然后用户再请求 B 把 token 一起发过去,B 拿到约定好的 token 就会是验证是否是有效,有效就是登录用户,无效重新登录
|
6
K1W1 2017-11-16 09:49:26 +08:00
@wanghaa #5 看你们约定了,一般放在 cookie 或者请求头,甚至请求参数带过来就行了,参数放在哪、参数名称是什么这都是要约定好的
|
7
wanghaa OP |
8
K1W1 2017-11-16 17:59:40 +08:00
@wanghaa #7 问题 1.看你怎么做吧,一般不同服务,至少我们只是子域名不同。根域名下的 cookie 是共用的。问题 2.对接 sso 相应服务是肯定要修改的,不然不可能实现
|
9
andymee 2017-11-30 23:05:42 +08:00 2
不管是访问 A 系统 还是 B 系统 都是要跳转到 认证系统 AUTH 去的 比如 auth.app.com 可以在这个域下 创建 COOKIE 这样 在 A 系统跳转到 AUTH 时 创建 cookie token=tk1 然后跳会 A 系统 a.app1.com 带上发给 A 的 cookie token=tk2 之后访问 b.app2.com 发现没有 token 需要登录 那么就跳转到 auth.app.com 这时候 发现已经有 cookie token=tk1 了 那验证登录有效后 带上签发给 B 的 token tk3 跳转 B . 这样访问 B 系统就只是一个跳转 不需要登录了..
|
10
abcbuzhiming 2017-12-01 10:29:44 +08:00
@wanghaa
1.为什么不能放,能不能放是由客户端决定的,cookie 这玩意是个客户端能拿到就能放在任何地方的东西 2.访问 A 系统的目的就是为了生成 token,这个 token 是会返还给客户端的,客户端要拿着这个 token 去访问 B,B 系统得到这个 token 后,可能会去找 A 系统问询,也可能会去找统一的 token 校验服务器问询。这才是整个流程 |
11
kba977 2017-12-04 22:47:36 +08:00
可以的, 推荐一个连接 [Single Sign On (SSO), Scalable Authentication Example with JSON Web Token (JWT) and Spring Boot]( https://hellokoding.com/hello-single-sign-on-sso-with-json-web-token-jwt-spring-boot/)
|
13
ivydom 2019-10-10 16:36:25 +08:00
用 authing 可以快速实现单点登录,快速体验: https://sample.authing.cn
|
14
Shikyou 2020-06-24 16:11:44 +08:00
实现单点登录最快的方式,可以用国内的 Authing,国外的 Auth0 / AWS Cognito 这一类用户身份验证的云服务,给应用添加注册、登录和访问控制功能很快
|