分享

CSDN编程社区SAML安全断言标记语言

 精诚至_金石开 2023-05-21 发布于广东

安全断言标记语言(英语:Security Assertion Markup Language,简称SAML,发音samel是OASIS 安全服务技术委员会基于XML开源标准数据格式,作用是位当事方交换身份和授权数saml最重要的需求是网页浏览器单点登录(SSO)。

一、SAML是什么?

安全断言标记语言:我们可以把他拆为俩个点来看,安全和断言。

        安全:为了防止断言被假冒,篡改。saml中加入了安全错失,当然现今能抵御假冒,篡改,重放攻击的利器就是公钥-私钥系统了。 通过给断言加上签名和加密,再结合数字证书系统就确保了saml不受攻击。


        断言:简单来说就是做出判断的语言,打个比方来说,A是超级管理员,这就是断言。


在比如说,A在网上尝试登录某个服务,但这个服务知道你不是合法的用户,这时候,如果你能提供一个安全可靠的断言:“A有权限登录xx服务”,那么这个服务知道你合法了,就会提供服务给你,当然这个例子有些抽象,saml大部分主要内容,都是用于证明你是谁,你有什么权限


SAML 断言是 IDP 发送给服务提供商的 XML 文档。存在三种不同类型的 SAML 断言 — 身份验证、属性和授权决策。


二、SAML

1.SAML的构成

saml通信中主要有三个主体


        Principal:代表用户本身或最终用户


        IDP(identity provider):身份提供者,提供在线资源以通过网络向最终用户提供身份认证

        SP(service provider):服务提供商,必须相信IDP,由IDP认证受到服务提供商的信任,授权其访问指定资源信息


2.SAML的流程分析

saml由两种发起(SSO)流程,分别是


        1.SP Initiated: 服务提供者主动发起


        2.IDP Initiated: 身份认证服务器主动发起

End User从浏览器中请求访问某SP(服务提供商) ;

SP发现用户未登陆,则发起SAML的AuthnRequest请求至IDP(身份提供者), 用户浏览器跳转至IDP页面;

IDP发现用户处于未登陆状态,重定向用户至IDP的登陆界面,请求用户进行身份验证

用户在登陆页面中进行身份认证, 通常情况下需要校验用户名和密码;

IDP校验用户身份,若成功,则把包含着用户身份信息的校验结果,以SAML Reponse的形式,签名/加密发送给SP;

SP拿到用户身份信息以后,进行签名验证/解密,拿到明文的用户身份信息,此时SP处于登陆状态,可以对用户提供服务。

可以看到,在整个流程中,IDP是负责颁发用户身份,SP负责信任IDP颁发的用户身份, SP和IDP之间的信任关系是需要提前建立的,即SP和IDP需要提前把双方的信息预先配置到对方,通过证书信任的方式来建立互信。

3.SAML的优点

        1.可以提升用户体验,如果系统使用SAML,那么可以在登录一次的情况下,访问多个不同的系统服务。


        2.可以提升系统的安全性,使用SAML,我们只需要向IdP提供用户名密码即可,


        3.用户的认证信息不需要保存在所有的资源服务器上面,只需要在在IdP中存储一份就够了



SAML v2.0 开发指南 SSO必备

109下载·3评论

2015年8月18日

SAML2.0 笔记(一)

2301阅读·5评论·6点赞

2022年6月21日

安全声明标记语言SAML2.0初探

81阅读·0评论·0点赞

2023年3月4日

SMAL2.0集成单点登录(SAP-SF)

2995阅读·3评论·3点赞

2021年8月31日

saml2.0 java 例子_saml2.0(主要是idp端开发)

1879阅读·0评论·0点赞

2021年3月7日

基于saml2.0的平台(适用多种平台)单点登录配置,以okta为例

5558阅读·5评论·7点赞

2022年4月13日

1年制硕士学位来了,学费低不到5万,在职可读,不出国,轻松学习


00:32


海外硕博

查看详情

海外硕博

广告

SAML2.0 笔记(二)

1319阅读·4评论·4点赞

2022年11月21日

SAML2.0使用

2.0W阅读·0评论·3点赞

2019年2月7日

如何理解 SAML2 协议

381阅读·0评论·0点赞

2022年11月2日

saml2.0_使用SAML 2.0设计和实施即时配置

2039阅读·0评论·0点赞

2020年7月6日

SAML2.0 简介

14下载·0评论

2017年3月23日

SAML.rar_Java 8_saml_saml webservice_saml2.0_saml协议

0下载·0评论

2022年9月20日

基于SAML 2.0 SSO单点登录

557下载·51评论

2013年1月23日

spring-boot-security-saml-sample:SBS3 —基于Spring Boot构建的示例SAML 2.0服务提供程序

13下载·0评论

2021年1月30日

jetty-saml:Jetty 的最小 SAML 2.0 SP 实现

0下载·0评论

2021年7月1日

SAML2.0简要介绍

25下载·0评论

2013年8月4日

论文研究-基于SAML2.0的跨域单点登录模型的设计 .pdf

5下载·0评论

2019年8月16日

office 365 SAML2.0示例

14下载·0评论

2019年4月23日

深入浅出SAML协议


    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多