webservices.h) (WS_SECURITY_ALGORITHM_SUITE 结构
定义要用于 WS-Security 的安全算法和密钥长度。 此设置与消息安全绑定和混合模式安全绑定相关。
语法
typedef struct _WS_SECURITY_ALGORITHM_SUITE {
WS_SECURITY_ALGORITHM_ID canonicalizationAlgorithm;
WS_SECURITY_ALGORITHM_ID digestAlgorithm;
WS_SECURITY_ALGORITHM_ID symmetricSignatureAlgorithm;
WS_SECURITY_ALGORITHM_ID asymmetricSignatureAlgorithm;
WS_SECURITY_ALGORITHM_ID encryptionAlgorithm;
WS_SECURITY_ALGORITHM_ID keyDerivationAlgorithm;
WS_SECURITY_ALGORITHM_ID symmetricKeyWrapAlgorithm;
WS_SECURITY_ALGORITHM_ID asymmetricKeyWrapAlgorithm;
ULONG minSymmetricKeyLength;
ULONG maxSymmetricKeyLength;
ULONG minAsymmetricKeyLength;
ULONG maxAsymmetricKeyLength;
WS_SECURITY_ALGORITHM_PROPERTY *properties;
ULONG propertyCount;
} WS_SECURITY_ALGORITHM_SUITE;
成员
canonicalizationAlgorithm
用于 XML 规范化的算法,例如独占 XML 规范化算法。 将此值设置为 WS_SECURITY_ALGORITHM_DEFAULT 将默认为 WS_SECURITY_ALGORITHM_CANONICALIZATION_EXCLUSIVE。
digestAlgorithm
用于消息部分摘要的算法,例如 SHA-1、SHA-256、SHA-384 或 SHA-512。 将此值设置为 WS_SECURITY_ALGORITHM_DEFAULT 将默认为 WS_SECURITY_ALGORITHM_DIGEST_SHA1。
symmetricSignatureAlgorithm
用于消息身份验证代码的算法 (也称为 MAC 或对称签名) ,例如 HMAC-SHA1、HMAC-SHA256、HMAC-SHA384 或 HMAC-SHA512。 将此值设置为 WS_SECURITY_ALGORITHM_DEFAULT 将默认为 WS_SECURITY_ALGORITHM_SYMMETRIC_SIGNATURE_HMAC_SHA1。
asymmetricSignatureAlgorithm
用于非对称签名的算法。 将此值设置为 WS_SECURITY_ALGORITHM_DEFAULT 将默认为 WS_SECURITY_ALGORITHM_ASYMMETRIC_SIGNATURE_RSA_SHA1。
encryptionAlgorithm
用于消息部分加密的算法。 保留供将来使用。 应设置为 WS_SECURITY_ALGORITHM_DEFAULT。
keyDerivationAlgorithm
用于从其他对称密钥派生密钥的算法。 将此值设置为 WS_SECURITY_ALGORITHM_DEFAULT 将默认为 WS_SECURITY_ALGORITHM_KEY_DERIVATION_P_SHA1。
symmetricKeyWrapAlgorithm
用于将对称密钥与其他对称密钥一起加密的算法。 保留供将来使用。 应设置为 WS_SECURITY_ALGORITHM_DEFAULT。
asymmetricKeyWrapAlgorithm
用于使用非对称密钥加密对称密钥的算法。 将此值设置为 WS_SECURITY_ALGORITHM_DEFAULT 将默认为 WS_SECURITY_ALGORITHM_ASYMMETRIC_KEYWRAP_RSA_OAEP。
minSymmetricKeyLength
对称密钥安全令牌的最小密钥长度 (位) 。 将此值设置为 0 将默认为 128 位。
maxSymmetricKeyLength
对称密钥安全令牌的最大密钥长度 (位) 。 将此值设置为 0 将默认为 512 位。
minAsymmetricKeyLength
非对称密钥安全令牌的最小密钥长度 (位) 。 将此值设置为 0 将默认为 1024 位。
maxAsymmetricKeyLength
非对称密钥安全令牌的最大密钥长度 (位) 。 将此值设置为 0 将默认为 16384 位。
properties
算法属性。 保留供将来使用。 应设置为 NULL。
propertyCount
属性数组中的条目数。 保留供将来使用。 应设置为 0。
注解
使用密钥派生时,密钥长度限制适用于从中派生签名或加密派生令牌的源安全令牌。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 7 [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2008 R2 [仅限桌面应用] |
标头 | webservices.h |