Security Channel Settings
Security channel settings control the way security is applied and verified on a channel. Each security channel setting is represented by a collection of property-value pairs, with the property keys defined by the enumeration WS_SECURITY_PROPERTY_ID. Each property in the collection has a reasonable default value. Because of these default values, it is possible to define and use a security description without specifying any of the security channel settings.
Security binding settings contain similar collections of property-value pairs whose keys are defined by the WS_SECURITY_BINDING_PROPERTY structure. The difference between these two sorts of settings is that the security channel settings are scoped to a security description (that is, they contain channel-wide security properties), whereas security binding settings are scoped to one of the security bindings, and there may be many security bindings. Consequently, for example, a custom security description that contains three security bindings will have one security channel settings bag for the entire channel and three security binding settings bags, one for each security binding.
The following enumerations are used with security channel settings:
- WS_PROTECTION_LEVEL
- WS_REQUEST_SECURITY_TOKEN_PROPERTY_ID
- WS_SECURITY_ALGORITHM_ID
- WS_SECURITY_ALGORITHM_PROPERTY_ID
- WS_SECURITY_HEADER_LAYOUT
- WS_SECURITY_HEADER_VERSION
- WS_SECURITY_PROPERTY_ID
- WS_SECURITY_TIMESTAMP_USAGE
- WS_XML_SECURITY_TOKEN_PROPERTY_ID
The following structures are used with security channel settings:
- WS_REQUEST_SECURITY_TOKEN_PROPERTY
- WS_SECURITY_ALGORITHM_PROPERTY
- WS_SECURITY_ALGORITHM_SUITE
- WS_SECURITY_PROPERTY
- WS_XML_SECURITY_TOKEN_PROPERTY