X.509 二进制安全性令牌

X.509 二进制安全性令牌是 X.509 公用证书的 base64 编码表示。

下表描述了 X.509 令牌类型。

X.509 令牌类型 描述
X.509 V1 仅包含 X.509 公用证书。
X.509 V3 仅包含 X.509 公用证书。
PKIPath 包含打包在 PKIPath 中的 X.509 公用证书的已排序列表。X509PKIPathv1 令牌类型可用于表示证书路径。
PKCS7 包含 X.509 证书的列表以及包装在 PKCS#7 包装器中的证书撤销列表 (CRL)(后者可选)。PKCS7 令牌可用于表示证书路径。

通常,X.509 令牌用于通过 XML 数字签名或 XML 加密来保护 SOAP 消息。虽然未建议,但 X.509 令牌也可用作认证令牌。

使用 X.509 令牌进行认证

对令牌进行认证时,将验证令牌的发送方是否是他所标称的发送方。您可以提取该消息中发送的一部分公共信息(例如用户标识),并通过某种方式使用只能由发送方提供的专用信息(例如密码)对该信息进行验证。

以下是一个非常简单的示例:当您对 UsernameToken 进行认证时,将在 SOAP 消息中传递用户名和密码,并在端点处针对用户注册表检查该用户名和密码。

对于 X.509 证书,公共信息是公用密钥/DN,专用信息是专用密钥。与 UsernameToken 的密码不同的是,在消息中不发送专用密钥。

使用 X.509 令牌来签署消息时,将使用以下过程:
  1. 启用信任时,如果配置了信任库和证书库,那么将对信任库和证书库评估证书。这将捕获到信任错误、证书链错误、撤销错误和证书过期等。例如,您可以在信任库中存储特定的 DN 以显式信任每一个证书,也可以只存储根 CA 以信任从此 CA 颁发的所有证书,但不信任从其他 CA 颁发的证书。
  2. 运行时将通过验证签名,验证消息的发送方是否具有与证书相关联的专用密钥。如果不能验证签名,那就说明发生了下列其中一种情况:
    1. 签署消息时所用的专用密钥与消息中的公用密钥不匹配。
    2. 发送消息之后,对该消息进行了修改。

验证签名之后,您就知道消息的发送方是专用密钥的持有人;即,发送方是他所标称的发送方。

如果您在消息中传递了 X.509 令牌但不使用它的专用密钥来签署该消息,那么您将不执行步骤 #2。您将不验证消息的发送方是否是专用密钥的持有人(即,他所标称的发送方)。签署消息时,您正在执行只能由专用密钥的持有人才可以执行的操作。

使用未受保护的 X.509 令牌时(即,不使用 X.509 令牌来签署消息),以下方式可使系统受到危害:
  • 捕获有效消息并在相同消息中替换为攻击者的 X.509 令牌。

建议您不要在消息中发送未受保护的 X.509 令牌。如果要使用 X.509 令牌进行认证,那么建议您通过调用者配置在消息中发送一个 X.509 令牌并将该 X.509 令牌同时用于数字签名和认证。签名部件引用将用在调用者设置中。

下表描述了 X.509 令牌值类型。

X.509 令牌类型 值类型
X.509 V1 http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509
X.509 V3 http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3
PKIPath http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509PKIPathv1
PKCS7 http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#PKCS7

指示主题类型的图标 概念主题



时间戳记图标 最近一次更新时间: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=cwbs_binarysectokenx509
文件名:cwbs_binarysectokenx509.html