第一章 使用 SOAP 保护 Web 服务

文章目录

  • [第一章 使用 SOAP 保护 Web 服务](#第一章 使用 SOAP 保护 Web 服务)
  • [`IRIS` 中与 `SOAP` 安全相关的工具](#IRIS 中与 SOAP 安全相关的工具)

第一章 使用 SOAP 保护 Web 服务

IRIS 支持 WS-SecurityWS-PolicyWS-SecureConversationWS-ReliableMessaging 规范的部分内容,这些规范描述了如何为 Web 服务和 Web 客户端添加安全性。本主题总结了这些工具并列出了支持的标准。

如果 IRIS Web 客户端使用需要身份验证的 Web 服务,并且有特殊原因,则可以使用较旧的 WS-Security 登录功能。请参阅使用 WS-Security 登录功能。

IRIS 中与 SOAP 安全相关的工具

IRIS 提供以下与 Web 服务和 Web 客户端安全相关的工具:

  • 能够为 IRIS 提供可信证书,以用于验证入站消息中收到的证书和签名。
  • 能够表示 X.509 证书。可以在 IRISSYS 数据库中存储拥有的证书以及将与之通信的实体的证书。对于拥有的证书,如果需要签署出站消息,还可以存储相应的私钥。

IRISSYS 数据库中,X.509 证书包含在 IRIS 凭证集中,具体来说,包含在 %SYS.X509Credentials实例中。可以使用此类的方法将证书(以及可选的关联私钥文件,如果适用)加载到数据库中。可以直接执行这些方法,也可以使用管理门户。

可以指定谁拥有凭证集以及谁可以使用它。

%SYS.X509Credentials 类还提供了通过别名、指纹、主题密钥标识符等访问证书的方法。出于安全原因,无法使用常规对象和 SQL 技术访问 %SYS.X509Credentials类。

  • 支持 SSL(安全套接字层)和 TLS(传输层安全性)。可以使用管理门户定义 IRIS SSL/TLS 配置,然后可以使用这些配置通过 X.509 证书保护与 IRIS Web 服务或客户端之间的通信。

SSL/TLS 配置在 TLS 指南中讨论。

  • WS-Policy 支持 IRIS 提供了将 WS-Policy 信息附加到 IRIS Web 服务或 Web 客户端的功能。策略可以指定以下内容:
    • 使用 WS-SecureConversation
    • 使用 SSL/TLS
    • 要使用或期望的 WS-Security 功能。
    • 要使用或期望的 WS-Addressing 标头。WS-Addressing 标头在创建 Web 服务和 Web 客户端中进行了描述,其中还介绍了如何手动添加这些标头。
    • 使用 MTOM(消息传输优化机制)打包。MTOM 在创建 Web 服务和 Web 客户端中进行了描述,其中还介绍了如何手动使用 MTOM 打包。

策略是在单独的配置类中创建的。在该类中,可以使用 XData 块来包含策略(即 XML 文档)并指定策略所附加到的服务或客户端的部分。可以将策略附加到整个服务或客户端或特定方法(甚至附加到特定请求或响应消息)。

可以使用 Studio 向导来创建此配置类。该向导提供了一组预定义策略,其中包含一组丰富的选项。只要策略需要 X.509 证书,该向导就允许在 IRISSYS 中存储的证书中进行选择。同样,只要策略需要 SSL/TLS,也可以选择现有的 SSL/TLS 配置(如果适用)。

如果需要,可以稍后直接编辑该策略。当编译配置类时,该策略即生效。

  • 支持直接创建和使用 WS-Security 元素。 IRIS 提供了一组支持 XML 的类来表示 WS-Security标头元素,例如 ```。这些专用类提供了用于创建和修改这些元素的方法,以及它们之间的引用。

如果使用 WS-Policy 支持, IRIS 会自动使用这些类。如果直接使用 WS-Security 支持,则需要编写代码来创建这些类的实例并将其插入到安全标头中。

在所有情况下,当 IRIS Web 服务或客户端收到带有 WS-Security 元素的 SOAP 消息时,系统会创建这些类的实例来表示这些元素。它还会创建 %SYS.X509Credentials 的实例来包含在入站消息中收到的任何证书。

  • 支持直接创建和使用 WS-SecureConversation 元素。IRIS 提供了一组支持 XML 的类来表示这些元素。可以在 Web 服务中定义回调方法来控制 Web 服务如何响应安全对话请求。

既可以使用 WS-Policy,也可以直接使用 WS-SecurityWS-SecureConversation。如果使用 WS-Policy,系统会根据需要自动使用 WS-Security工具。如果直接使用 WS-SecurityWS-SecureConversation,则需要进行更多编码。

相关推荐
寻星探路4 小时前
【深度长文】万字攻克网络原理:从 HTTP 报文解构到 HTTPS 终极加密逻辑
java·开发语言·网络·python·http·ai·https
崔庆才丨静觅6 小时前
hCaptcha 验证码图像识别 API 对接教程
前端
曹牧7 小时前
Spring Boot:如何测试Java Controller中的POST请求?
java·开发语言
passerby60617 小时前
完成前端时间处理的另一块版图
前端·github·web components
掘了7 小时前
「2025 年终总结」在所有失去的人中,我最怀念我自己
前端·后端·年终总结
崔庆才丨静觅7 小时前
实用免费的 Short URL 短链接 API 对接说明
前端
崔庆才丨静觅7 小时前
5分钟快速搭建 AI 平台并用它赚钱!
前端
爬山算法7 小时前
Hibernate(90)如何在故障注入测试中使用Hibernate?
java·后端·hibernate
kfyty7258 小时前
集成 spring-ai 2.x 实践中遇到的一些问题及解决方案
java·人工智能·spring-ai