SSO是什么

SSO是什么,第1张

SSO指的是单点登录(Single Sign On),当用户在身份认证服务器上登录了一次以后,即可获得访问单点登录系统中其他联邦系统和应用软件的权限。

同时这种实现是不需要管理员对用户的登录状态或其他信息进行修改的,这意味着在多个应用系统中,用户只需一次登录就可以访问所有相互信任的应用系统。

单点登录是多个相关但独立的软件系统的访问控制的属性。使用此属性,用户使用单个ID和密码登录,以便在不使用不同用户名或密码的情况下访问已连接的系统,或者在某些配置中在每个系统上无缝登录。

单点登录通常使用轻量级目录访问协议(LDAP)和(目录)服务器上存储的LDAP数据库来完成,可以使用cookie在IP网络上实现简单版本的单点登录。

图为一种SSO系统:

扩展资料

实现机制

当用户第一次访问应用系统1的时候,因为还没有登录,会被引导到认证系统中进行登录;根据用户提供的登录信息,认证系统进行身份校验,如果通过校验,应该返回给用户一个认证的凭据--ticket;

用户再访问别的应用的时候就会将这个ticket带上,作为自己认证的凭据,应用系统接受到请求之后会把ticket送到认证系统进行校验,检查ticket的合法性。如果通过校验,用户就可以在不用再次登录的情况下访问应用系统2和应用系统3了。

SSO的优势

1、降低访问第三方站点的风险(未在外部存储或管理的用户密码)。

2、从不同的用户名和密码组合减少密码疲劳。

3、减少重新输入相同身份的密码所花费的时间。

4、由于关于密码的IT服务台呼叫数量减少,降低了IT成本。

5、SSO共享所有其他应用程序和系统用于身份验证的集中身份验证服务器,并将其与技术相结合,以确保用户不必多次主动输入其凭据。

参考资料来源:百度百科-SSO (Single Sign On)

参考资料来源:百度百科-单一登入

集成了公司的SSO认证,一直工作正常,临时断电,重启PC后。服务正常启动,但服务时走认证流程时提示—— Failed to obtain access token ,搜索对应的问题,找到 InternalOAuthError: Failed to obtain access token

看起来是相同的问题,直接采用 require('https').globalAgent.options.rejectUnauthorized = false问题依然复现。

在 node_modules/passport-oauth2/lib/strategy.js 文件中添加debug信息,重启服务后提示—— getaddrinfo ENOTFOUND ,看起来是无法找到SSO服务器。从STF所在的机器ping此地址(断电重启的原因?)尝试先在 /etc/hosts 中添加解析地址。搞定~


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/489069.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-06-13
下一篇2023-06-13

发表评论

登录后才能评论

评论列表(0条)

    保存