WS_SECURITY_ALGORITHM_SUITE structure (webservices.h)
Defines the security algorithms and key lengths to be used with WS-Security. This setting is relevant to message security bindings and mixed-mode security bindings.
Syntax
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;
Members
canonicalizationAlgorithm
Algorithm to use for XML canonicalization, such as the exclusive XML canonicalization algorithm. Setting this value to WS_SECURITY_ALGORITHM_DEFAULT will default to WS_SECURITY_ALGORITHM_CANONICALIZATION_EXCLUSIVE.
digestAlgorithm
Algorithm to use for message part digests, such as SHA-1, SHA-256, SHA-384, or SHA-512. Setting this value to WS_SECURITY_ALGORITHM_DEFAULT will default to WS_SECURITY_ALGORITHM_DIGEST_SHA1.
symmetricSignatureAlgorithm
Algorithm to use for message authentication codes (also known as MACs or symmetric signatures) such as HMAC-SHA1, HMAC-SHA256, HMAC-SHA384, or HMAC-SHA512. Setting this value to WS_SECURITY_ALGORITHM_DEFAULT will default to WS_SECURITY_ALGORITHM_SYMMETRIC_SIGNATURE_HMAC_SHA1.
asymmetricSignatureAlgorithm
Algorithm to use for asymmetric signatures. Setting this value to WS_SECURITY_ALGORITHM_DEFAULT will default to WS_SECURITY_ALGORITHM_ASYMMETRIC_SIGNATURE_RSA_SHA1.
encryptionAlgorithm
Algorithm to use for message part encryption. Reserved for future use. Should be set to WS_SECURITY_ALGORITHM_DEFAULT.
keyDerivationAlgorithm
Algorithm to use for deriving keys from other symmetric keys. Setting this value to WS_SECURITY_ALGORITHM_DEFAULT will default to WS_SECURITY_ALGORITHM_KEY_DERIVATION_P_SHA1.
symmetricKeyWrapAlgorithm
Algorithm to use for encrypting symmetric keys with other symmetric keys. Reserved for future use. Should be set to WS_SECURITY_ALGORITHM_DEFAULT.
asymmetricKeyWrapAlgorithm
Algorithm to use for encrypting symmetric keys with asymmetric keys. Setting this value to WS_SECURITY_ALGORITHM_DEFAULT will default to WS_SECURITY_ALGORITHM_ASYMMETRIC_KEYWRAP_RSA_OAEP.
minSymmetricKeyLength
The minimum key length (in bits) of symmetric key security tokens. Setting this value to 0 will default to 128 bits.
maxSymmetricKeyLength
The maximum key length (in bits) of symmetric key security tokens. Setting this value to 0 will default to 512 bits.
minAsymmetricKeyLength
The minimum key length (in bits) of asymmetric key security tokens. Setting this value to 0 will default to 1024 bits.
maxAsymmetricKeyLength
The maximum key length (in bits) of asymmetric key security tokens. Setting this value to 0 will default to 16384 bits.
properties
Algorithm properties. Reserved for future use. Should be set to NULL.
propertyCount
Number of entries in properties array. Reserved for future use. Should be set to 0.
Remarks
When key derivation is used, the key length restrictions apply to the source security token from which the signing or encryption derived token are derived.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Windows 7 [desktop apps only] |
Minimum supported server | Windows Server 2008 R2 [desktop apps only] |
Header | webservices.h |