第三十七章 结合加密和签名 - 安全标头元素的顺序

文章目录

  • [第三十七章 验证和解密入站消息](#第三十七章 验证和解密入站消息)
  • 概述
  • [验证 `WS-Security` 标头](#验证 WS-Security 标头)
  • [访问 `WS-Security` 标头中的 `SAML` 断言](#访问 WS-Security 标头中的 SAML 断言)

第三十七章 验证和解密入站消息

本主题介绍如何验证 IRIS Web 服务或 Web 客户端收到的消息中的安全元素(并自动解密任何加密内容)。

概述

IRIS 网络服务和网络客户端可以验证入站 SOAP 消息的 WS-Security 标头元素,以及自动解密入站消息。

IRIS Web 服务和 Web 客户端还可以处理已签名的 SAML 断言令牌并验证其签名。但是,验证 SAML 断言的详细信息是您的应用程序的责任。

如果使用安全策略,所有上述活动都是自动的。

在所有场景中,IRIS 都使用其根颁发机构证书集合;请参阅设置和其他常见活动。

验证 WS-Security 标头

要验证任何入站 SOAP 消息中包含的 WS-Security 标头元素,请执行以下操作:

  1. Web 服务或 Web 客户端中,设置 SECURITYIN 参数。使用以下值之一:
    • REQUIRE --- Web 服务或 Web 客户端验证 WS-Security 标头元素,如果不匹配或缺少此元素,则会发出错误。
    • ALLOW --- Web 服务或 Web 客户端验证 WS-Security 标头元素。

在这两种情况下,Web 服务或 Web 客户端都会验证 &<Timestamp>, <UsernameToken>, <BinarySecurityToken>, <Signature>, and <EncryptedKey> 标头元素。它还会验证标头中 SAML 断言中的 WS-Security 签名(如果有)。如果合适,还会解密消息。

如果验证失败,则返回错误。

SECURITYIN 参数还有两个可能的值,可用于测试和故障排除:

  • IGNORE --- Web 服务或客户端忽略除 <UsernameToken> 之外的 WS-Security 标头元素,如 CSP 身份验证和 WS-Security 中所述。

为了向后兼容,此值是默认值。

  • IGNOREALL --- Web 服务或客户端忽略所有 WS-Security 标头元素。

注意:如果关联(和编译)配置类中存在安全策略,则 SECURITYIN 参数将被忽略。

访问 WS-Security 标头中的 SAML 断言

如果 WS-Security 标头元素包含 <Assertion> 元素,则 IRIS Web 服务或 Web 客户端会自动验证该 SAML 断言的签名(如果已签名)。

注意:验证需要可信证书。如果 IRIS 可以验证签名者的证书链(从签名者自己的证书到 IRIS 信任的证书颁发机构 (CA) 的自签名证书,包括中间证书(如果有),则它可以验证签名。

但是, IRIS 不会自动验证断言。代码应该检索断言并进行验证。

要访问 SAML 断言,请找到安全标头元素的 <Assertion> 元素。为此,请使用服务或客户端的 SecurityIn 属性的 FindElement() 方法,如下所示:

java 复制代码
 Set assertion=..SecurityIn.FindElement("Assertion") 

这将中返回 %SAML.Assertion 的一个实例。根据需要检查此对象的属性。

相关推荐
风123456789~1 小时前
【Linux专栏】ls 排除某个文件
linux·运维·服务器
IpdataCloud1 小时前
担心IP暴露隐私?用安全IP查询工具自查,三步配置网络出口
网络·tcp/ip·安全·ip
其实防守也摸鱼2 小时前
运维--学习阶段问题解答(1)(自测)
linux·运维·服务器·数据库·学习·自动化·命令模式
玖玥拾3 小时前
C# 语言进阶(十五)C# 游戏服务端 MySQL 数据库
服务器·开发语言·网络·数据库·mysql·c#
土星云SaturnCloud3 小时前
边缘计算驱动绿氢生产过程智能寻优:电解槽级实时优化技术解析
服务器·人工智能·ai·边缘计算
Darkwanderor4 小时前
对Linux的进程控制的研究
linux·运维·c++
Web极客码5 小时前
突破并发瓶颈:云端高性能架构如何赋能海外 AI Agent 矩阵的高效产出
服务器·人工智能·架构
一个有温度的技术博主5 小时前
【VulnHub 实战】DC-1 靶机渗透测试笔记(一):信息收集与主机发现
服务器·网络·笔记
JerrySir5 小时前
恶意 npm 包只活了 17 分钟:技术面试里,为什么“升级依赖”还不算止血?
javascript·安全
白帽小阳5 小时前
2026前端面试题!(附答案及解析)
javascript·网络·python·安全·web安全·网络安全·护网行动