- 1、本文档共30页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
shibboleth 认证系统 - indico
Shibboleth 在高能所统一认证系统中的应用 中科院高能物理所 马兰馨 2013.7.9 报告内容 背景 Shibboleth介绍 高能所统一认证方案设计 应用接入方案 背景 高能所校园网应用系统众多 邮件系统、会议管理系统、文档管理系统、磁盘、软件、。。。。。。 每个系统有自己的认证机制、用户数据库 用户记住每个应用系统的username/password 用户管理复杂 解决方案 单点登录系统SSO(Single Sign On) Shibboleth 关于 Shibboleth A Web-based Single Sign On (SSO) 美国 Internet2 高级网络联盟/MACE(Moddleware Architecture Committee for Education)小组的一个项目 其目的是开发一个基于标准(主要是SAML和 XML Schema)的体系结构和策略框架及一套开放源代码软件,以用于支持机构间的、需要存取控制的Web资源共享的单点登录系统。 安全断言标记语言 SAML(Security Assertion Markup Language ) XML即可扩展标记语言(eXtensible Markup Language) Shibboleth 优势 用户只需记住一个username/password 用户管理简单、集中 安全地访问第三方服务 跨组织、联盟 保护隐私 使服务提供者可以控制能够控制其被访问的资源 整合不同的第三方服务 系统组件 IdP (Identify Provider) 主要负责提供各种凭证和属性,对用户身份进行认证和用户属性进行管理。当用户请求访问受限资源时,IdP 会发送验证声明或属性声明给SP。 SP (Service Provider) 主要负责访问资源安全方面的管理,对资源进行保护、用户访问资源进行授权和执行访问控制,通过 IdP 发送来的声明决定用户是否获得资源访问权限。 DS (Discovery Service) 以互动方式为用户提供 IdP 选择的标准接口,具有高度可定制性,可将用户提交的选择直接将用户重定向给对应的 SP。 DS 可由资源控制,也可作为中心共享服务运行。 构成 SSO 主要角色 构成基于Web的SSO系统的主要角色 Web Browser: 用户 Resource: 被保护资源 IdP (Identity Provider): 认证用户 SP (Service Provider): 执行认证,转到被保护资源 Discovery Service Provider(DS):允许用户选择IdP 工作流程 1. 用户访问被保护资源 2.用户将请求转发给IdP 3.IdP认证用户信息 4.IdP发送认证信息给SP 5.SP检验IdP的返回信息,决定是否允许用户访问资源 6.返回给资源信息,完成整个认证过程 系统架构 用户信息、访问方式 用户信息 Kerberos 认证信息(username/password) Ldap 用户属性(姓名、email、telephone、部门、……) Application 的本地数据库 授权信息(Role,group, 权限,…) 访问方式 访问单个应用系统 统一用户接口 通过菜单访问应用系统 修改用户个人信息 修改口令 帮助信息 IHEP 统一认证架构图 应用系统接入认证系统的技术方案(1) 应用程序必须为基于Web的程序 最好与SP安装在同一台机器上,实现对资源的保护 允许单点认证系统用户进行登录 应用系统可以保留现有的用户账户信息(本地数据库) 应用系统针对需要单点认证的用户,需要在应用的登录页面增加一个专供单点认证用户使用的链接,该链接由应用中专门的程序来进行处理。 为了允许单点认证系统用户登录,应用程序需要进行一些修改,要写接口程序(PHP, Python, JSP,…) 应用系统接入认证系统的技术方案(2) 假设应用部署在 主机上,并安装了SP,允许单点认证帐号登入。该应用中: 首页地址为:/app 具体处理程序为该应用根目录下的 index.php (或index.jsp)。 该程序的功能为: 1. 检查该用户是否已经通过了统一认证,具体检查方法为:查找HTTP请求中有没有名为Shib-Identity-Provider的请求头,对于php应用程序,使用 $_SERVER[Shib-Identity-Provider]; 来进行检查 2. 如果通过步骤1中的检查,用户已经通过了单点认证,则从HTTP请求头中取得用户名、姓、名、所属机构名、邮件地址、等等信息,并放入Session中,以便于以后
文档评论(0)