SAML- 安全断言标记语言

这篇具有很好参考价值的文章主要介绍了SAML- 安全断言标记语言。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、概念

安全断言标记语言(SAML)是一种开放标准,用于在各方之间(特别是身份提供商和服务提供商之间)交换身份验证和授权数据。SAML
是一种基于XML的安全断言标记语言(服务提供商用来做出访问控制决策的语句)。SAML 也是:

  • 一组基于 XML 的协议消息
  • 一组协议消息绑定
  • 一组配置文件(利用以上所有内容)

SAML 解决的一个重要用例是Web 浏览器 单点登录(SSO)。单点登录在安全域内相对容易实现(例如,使用cookie ),但跨安全域扩展
SSO 则更加困难,并导致不可互操作的专有技术的激增。SAML Web 浏览器 SSO 配置文件经过指定和标准化以促进互操作性。

SAML 规范定义了三种角色:主体(通常是用户)、身份提供者(IdP) 和服务提供者(SP)。

二、原理

SAML- 安全断言标记语言,SAML,协议,开源协议,安全

1. 请求 SP 处的目标资源(仅限 SAML 2.0)

主体(通过 HTTP 用户代理)向服务提供者请求目标资源:

https://sp.example.com/myresource
2. 重定向到 IdP 处的 SSO 服务(仅限 SAML 2.0)

服务提供商确定用户的首选身份提供商(通过未指定的方式)并将用户代理重定向到身份提供商处的 SSO 服务:

https://idp.example.org/SAML2/SSO/Redirect?SAMLRequest=request

参数的值SAMLRequest(由上面的占位符表示request)是压缩元素的Base64编码。 samlp:AuthnRequest

3. 在 IdP 处请求 SSO 服务(仅限 SAML 2.0)

用户代理通过步骤 2 中的 URL 向 SSO 服务发出 GET 请求。SSO 服务处理该请求AuthnRequest(通过 URL 查询参数发送SAMLRequest)并执行安全检查。如果用户没有有效的安全上下文,身份提供者将识别该用户(详细信息省略)。

4. 使用 XHTML 表单进行响应

SSO 服务验证请求并使用包含 XHTML 表单的文档进行响应:

    <form method="post" action="https://sp.example.com/SAML2/SSO/POST" ...>
    <input type="hidden" name="SAMLResponse" value="response" />
    ...
    <input type="submit" value="Submit" />
  </form>
5. 在SP处请求断言消费者服务

用户代理向服务提供者处的断言消费者服务发出 POST 请求。参数值SAMLResponse取自步骤 4 中的 XHTML 表单。

6.重定向到目标资源

断言消费者服务处理响应,在服务提供者处创建安全上下文并将用户代理重定向到目标资源。

7、再次向SP请求目标资源

用户代理(再次)向服务提供者请求目标资源:

https://sp.example.com/myresource
8. 响应请求的资源

由于存在安全上下文,服务提供者将资源返回给用户代理。文章来源地址https://www.toymoban.com/news/detail-734325.html

到了这里,关于SAML- 安全断言标记语言的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • XML (可扩展标记语言)

    目录 一、概念 二. 使用:    1. 基本语法:     2. 组成部分:         (1)文档声明         (2) 指令(了解):结合css         (3) 标签:标签名称自定义         (4)属性          (5) 文本 3. 约束:规定xml文档的书写规则 4. 解析:操作xml文档,将文档中的

    2024年02月14日
    浏览(42)
  • XML可扩展标记语言

    e X tensible M arkup L anguage,用于传输和存储数据。 XML文档第一行以XML声明开始(并非是一种标签,用来传输文档的元数据)。 因为XML标签没有被预定义,你需要自行定义标签, 所以浏览器无法确定像table这样一个标签究竟描述一个HTML表格 还是一个桌子。  但可以用css来显示

    2024年02月10日
    浏览(39)
  • XML—标记语言

    Extensible Markup Language,可扩展标记语言。 用文字做标记表达一些效果或携带一些数据。比如:HTML、XML 我的理解:用倾盆大雨表达雨很大 还要从它的产生说起。 HTML是一种界面技术,定义了70多种标记为了方便在计算机上实现,这些标记也都是固定的,所以不可扩展。随着We

    2024年02月11日
    浏览(50)
  • 6 接口、多态、断言、项目【Go语言教程】

    1.1 概念 Golang 中 多态特性主要是通过接口来体现的。 interface 类型可以定义一组方法,但是这些不需要实现。并且 interface 不能包含任何变量。到某个自定义类型(比如结构体 Phone)要使用的时候,在根据具体情况把这些方法写出来(实现)。 说明: 接口里的所有方法都没有方法体

    2024年02月04日
    浏览(45)
  • Markdown:简洁高效的文本标记语言

    在当今信息爆炸的时代,我们需要一种简洁、高效的文本标记语言来排版和发布内容。Markdown应运而生,它是一种轻量级的文本标记语言,以其简单易学、易读易写的特点,成为了广大写作者的首选工具。本文将介绍Markdown的语法优缺点,以及它可以解决的问题和应用领域。

    2024年02月19日
    浏览(53)
  • 「 网络安全术语解读 」悬空标记注入详解

    引言:什么是悬空标记注入(Dangling markup injection)、典型利用原理是什么,以及如何防止悬空标记攻击? 悬空标记注入(Dangling markup injection)是一种技术,当由于输入过滤或其他防御措施而无法进行完全的跨站脚本攻击时,它可以用于捕获跨域数据。它可以被用来捕获其他

    2024年01月17日
    浏览(51)
  • HTML :深入了解超文本标记语言

    欢迎来到本篇博客,我将带你深入了解 HTML(超文本标记语言)。作为前端开发的基础,HTML是构建网页的重要工具。在这里,我们将涵盖 HTML 的全部内容,包括常用语句和标签。 HTML,全称HyperText Markup Language,是一种用于创建网页结构的标记语言。它由一系列的标签组成,标

    2024年02月16日
    浏览(43)
  • 【C语言】小游戏-扫雷(清屏+递归展开+标记)

    大家好,我是深鱼~ 目录 一、游戏介绍 二、文件分装  三、代码实现步骤 1.制作简易游戏菜单  2. 初始化棋盘(11*11)  3.打印棋盘(9*9) 4.布置雷   5.计算(x,y)周围8个坐标的和  6.排查雷   1清屏后打印棋盘 2递归展开 3标记雷 四、完整代码 game.h:相关函数的声明,整个代码要引用

    2024年02月12日
    浏览(58)
  • C语言的标准函数库:断言库assert.h

    C语言断言库assert.h提供了一些用于调试程序时进行断言的函数。如果断言失败,会输出错误消息并终止程序。 assert.h中主要的函数是assert(),其原型为: 参数expression是一个要测试的表达式,如果表达式的值为0(假),assert()会输出错误消息并终止程序。如果表达式的值为非

    2024年02月06日
    浏览(38)
  • C语言小项目 -- 扫雷游戏完整代码(递归展开 + 选择标记)

    大家好,今天我们将一起用C语言实现一个经典小游戏 – 扫雷,Let is go ! 扫雷游戏相信大家都玩过,上图就是一个网页版的扫雷,它的规则是玩家选择一个方格,若此方格没有地雷,那么该方格会显示与它相邻的八个方格中雷的个数,若此方格有地雷,那么游戏失败,当玩

    2024年02月05日
    浏览(55)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包