使用SSL客户端证书和LDAP对客户端进行授权

IBM® Integration Bus V9 引入了将客户端 SSL 证书信息传播到消息流中的能力。本文将告诉您如何使用存储在 SSL 证书中的信息在客户端上执行授权检查,这样就可以允许通过验证的客户端访问消息流的一个特定子集。本文涵盖的主题包括:

启用客户端证书传播 在消息流中访问证书信息 使用证书信息实现
LDAP 授权

启用客户端证书传播

为了确保客户端在创建入站连接时提供证书,必须执行客户端身份验证。当使用 HTTPInput 节点时,默认使用全节点范围的侦听器。它必须启用客户端身份验证,您可以使用以下命令来完成这一操作:

mqsichangeproperties <node_">name> -b httplistener -o HTTPSConnector -n clientAuth -v true

对于 SOAPInput 节点,默认使用嵌入的侦听器。要启用客户端身份验证,使用以下命令:

mqsichangeproperties <node_name> -e <server_name> -o HTTPSConnector -n clientAuth -v true

要启用此属性,必须对 IBM Integration Bus 提供正确的 SSL 密钥存储和信任存储配置。

为了确保将客户端证书传播到消息流中,在 SOAPInput 或 HTTPInput 节点上设置的安全配置文件必须启用传播。若要在现有的 Security Profile 上启用传播,使用以下命令:

mqsichangeproperties <node_name> -c SecurityProfiles -o <profile_name> -n propagation -v TRUE

若 SOAPInput 或 HTTPInput 节点尚未配置安全配置文件,那么应选择 IBM 提供的 Default Propagation 安全配置文件。您可以从 Integration Toolkit 中的 BAR 编辑器中完成该配置,如图 1 所示:

图 1.默认的传播安全配置文件

在消息流中访问证书信息

证书信息存储在 LocalEnvironment 中,可以从 LocalEnvironment.SOAP.Input.TransportSecurity.ClientAuth.Certificate 或从 LocalEnvironment.HTTP.Input.TransportSecurity.ClientAuth.Certificate 访问它。整体结构如图 2 所示:

图 2.从本地环境访问客户端证书

时间: 2024-10-20 05:37:20

使用SSL客户端证书和LDAP对客户端进行授权的相关文章

使用 SSL 客户端证书与 IBM Integration Bus V9 进行授权

简介 IBM Integration Bus V9 引入了将客户端 SSL 证书信息传播到消息流中的能力.本文将告诉您如何使用存储在 SSL 证书中的信息在客户端上执行授权检查,这样就可以允许通过验证的客户端访问消息流的一个特定子集.本文涵盖的主题包括: 启用客户端证书传播 在消息流中访问证书信息 使用证书信息实现 LDAP 授权 启用客户端证书传播 为了确保客户端在创建入站连接时提供证书,必须执行客户端身份验证.当使用 HTTPInput 节点时,默认使用全节点范围的侦听器.它必须启用客户端身

OAuth 2.0系列教程(十一) 客户端证书请求和响应

客户端证书授权包含下面的参数: grant_type 必须.必须设置到客户端证书中. scope 可选.授权的作用域. 客户端授权响应: 客户端授权响应包含下面的参数: { "access_token" : "...", "token_type" : "...", "expires_in" : "...", } access_type属性是授权服务器分配的访问令牌. token_type

阿里云 CDN HTTPS 最佳实践——客户端证书认证(六)

背景 我们在使用 HTTPS 时经常接触到的是服务器证书认证(单向认证),很少用到客户端证书认证(双向认证),这是因为对于 web 网站来说,用户数目广泛,使用服务器证书认证就够了,无需在 SSL 层做用户身份验证,对于需要验证的页面再在应用逻辑层来做用户身份验证(比如常见的账号密码登录),使用客户端证书认证反而影响用户体验.但是对于一些特殊企业客户,在涉及到资金.股票等等金融业务交易时,考虑到其业务的安全性,他们在原有业务可能已经用了客户端证书认证,对于这类客户在接入 CDN 时,必然也要支持

Java Web Services:不使用客户端证书的WS-Security

许多 WS-Security 配置要求客户端和服务器都使用 public/private 密钥对,使用 X.509 证书保证公共密钥的身份.这是使用 WS-Security 进行消息签名或加密中最广泛使用的技术,而且它有一些优势.特别地,客户端证书对请求提供了较严格的客户端身份验证和较严格的签名保证.但是它也有缺点,包括不对称加密的性能开销和每个客户端获取和维护证书的繁琐管理. "WS-SecureConversation 性能" 介绍 WS-SecureConversation -

如何从客户端证书中获取私钥???? +急

问题描述 客户端证书(pfx格式)已经导入到CertificateStore的MyStore中,并且可以获取到,请问:如何从该证书中获取私钥!用WSE2.0,找到一点代码,说是用X509Certificate的Key.ToXmlString(true),系统可以获得,可是运行到这一句就会抛出异常:Exportofprivateparametersisnotsupported这是点解啊???大侠救命,困扰了N久了啊解决了问题倾囊相赠啊!!!!!!+急+急+急+急+急+急+急+急+急+急+急+急+急

https双向认证,如何在服务端获取当前请求的客户端证书id

问题描述 RT,在https双向认证的环境下,服务端配置了客户端证书的可信任证书列表,每个客户,一个独立的客户端证书.那么当一个请求到达服务端后,在服务端的代码中,如何来获取当前请求的客户端证书是哪一个?高人可以结合某个特定的容器配置来说明,万分感谢 解决方案 X509Certificate[] certs = (X509Certificate[]) request.getAttribute("javax.servlet.request.X509Certificate");双向认证之后

iis7-IIS7用HTTPS的,证书申请了,客户端证书也安装了可是报403

问题描述 IIS7用HTTPS的,证书申请了,客户端证书也安装了可是报403 老板让发布个HTTPS的网站,我用IIS7发布的,申请了证书,证书也翻出来了,可是客户端一访问就报403,求救呀!!!!!哪个大神帮个忙. 解决方案 403是禁止访问 先看你iis有没有正确转发路径请求 以及客户端访问路径正确没

was7如何配置在需要时客户端证书证书认证

问题描述 在was中可以配置客户端证书认证,但是并不是所有通过HTTPS通道访问的资源都需要客户端证书认证,可能只有其中部分资源需要客户端证书认证.那么我应该如何配置才能做到在应用需要时才要求客户端提供证书验证? 解决方案 解决方案二:该回复于2011-03-16 16:14:11被版主删除解决方案三:都是高手`~

c# 如何判断服务器请求客户端证书

问题描述 在握手时服务器会发送客户端证书的请求?请问如何利用c#截获改消息并进行相应处理? 解决方案