ServiceModelSecurityTokenRequirement Class

Definition

An abstract class that when implemented specifies security property requirements of the token being requested or authenticated that are specific to Windows Communication Foundation (WCF). The security token manager constructs security token providers and security token authenticators that are used by the WCF security processor based on the token requirement.

public ref class ServiceModelSecurityTokenRequirement abstract : System::IdentityModel::Selectors::SecurityTokenRequirement
public abstract class ServiceModelSecurityTokenRequirement : System.IdentityModel.Selectors.SecurityTokenRequirement
type ServiceModelSecurityTokenRequirement = class
    inherit SecurityTokenRequirement
Public MustInherit Class ServiceModelSecurityTokenRequirement
Inherits SecurityTokenRequirement
Inheritance
ServiceModelSecurityTokenRequirement
Derived

Remarks

A security token is a cryptographically signed data unit that transfers authentication and authorization information, based on a credential. The derived class is used by a security token manager to specify what is required of a security token, such as the key size, key type, and how the key can be used. When a security token can be identified that matches the specified criteria, a SecurityTokenProvider and SecurityTokenAuthenticator can be created to provide security tokens for outgoing SOAP messages and to authenticate security tokens for incoming SOAP messages, respectively. For example, the default security token manager for outgoing SOAP messages has the CreateSecurityTokenProvider method that takes a SecurityTokenRequirement parameter that can be called to obtain a security token provider that matches the security token provider.

This class's base class, SecurityTokenRequirement, contains a dictionary, Properties, which maps property names to their values. This class has numerous properties whose name ends in the word "Property". These properties return a string, which is the key used to get or set the corresponding value from the dictionary. For example, AuditLogLocationProperty is the key for the value of the AuditLogLocation property.

Constructors

ServiceModelSecurityTokenRequirement()

Initializes a new instance of the ServiceModelSecurityTokenRequirement class.

Fields

Namespace

Specifies the current namespace.

Properties

AuditLogLocationProperty

Gets the token requirement property name whose value is the location of the audit log to use when recording the results of the authentication (service only).

ChannelParametersCollectionProperty

Gets the token requirement property name whose value is the channel parameters collection (client only).

DuplexClientLocalAddressProperty

Gets a value that specifies the name of the index in the Properties collection for the DuplexClientLocalAddress property.

EndpointFilterTableProperty

Gets the key for the token requirement property whose value is the endpoint filter table that contains the filters for messages that a service endpoint accepts. This is a service property.

ExtendedProtectionPolicy

Gets the protection policy used by the server to validate incoming client connections.

HttpAuthenticationSchemeProperty

Gets the key of the token requirement property whose value is the HTTP authentication scheme if this request is for a token provider or token authenticator to be used in HTTP authentication.

IsInitiator

Gets a value that indicates whether the endpoint that is creating the security token requirement is an initiator or a recipient.

IsInitiatorProperty

Gets the key for the token requirement property whose value indicates whether the request is made by the initiator of the channel or the recipient of the channel.

IsOutOfBandTokenProperty

Gets the key for the token requirement property whose value indicates whether this is the request for a token that is configured on the client or service.

IssuedSecurityTokenParametersProperty

Gets the key for the token requirement property whose value is the IssuedSecurityTokenParameters that contains information about the token if the requirement is for an issued token.

IssuerAddress

If the token requirement is for an issued token, this property contains the endpoint address of the issuer.

IssuerAddressProperty

Gets the key for the token requirement property whose value is the EndpointAddress of the issuing party if the requirement is for an issued token.

IssuerBinding

If the token requirement is for an issued token, this property contains the binding to use to communicate with the issuer.

IssuerBindingContextProperty

Gets the key for the token requirement property whose value is the BindingContext to use to talk to the issuing party if the requirement is for an issued token.

IssuerBindingProperty

Gets the key for the token requirement property whose value is the binding to use to talk to the issuing party when the requirement is for an issued token.

KeySize

Gets or sets the required size of the key associated with a security token.

(Inherited from SecurityTokenRequirement)
KeyType

Gets or sets the type of key (asymmetric or symmetric) associated with a security token.

(Inherited from SecurityTokenRequirement)
KeyUsage

Gets or sets a value that specifies how the key associated with a security token can be used.

(Inherited from SecurityTokenRequirement)
ListenUriProperty

Gets the key for the token requirement property whose value is the URI that the service endpoint making the request is listening at (service only).

MessageAuthenticationAuditLevelProperty

Gets the key for the token requirement property whose value is the audit level to use when recording the results of the authentication (service only).

MessageDirectionProperty

Gets the key for the token requirement property whose value is the member of the MessageDirection enumeration to use and that indicates whether the token provider is needed for messages sent from client to server or server to client.

MessageSecurityVersion

Gets or sets the message security version to be used (if necessary).

MessageSecurityVersionProperty

Gets the key for the token requirement property whose value is the MessageVersion that the channel is configured with.

PreferSslCertificateAuthenticatorProperty

Gets the key for the token requirement property whose value is used to create SSL security token authenticator.

PrivacyNoticeUriProperty

Gets the key for the token requirement property whose value is the link to the URI that points to the service's privacy policy if the service has one.

PrivacyNoticeVersionProperty

Gets the key for the token requirement property whose value is a string that represents the privacy notice version.

Properties

Gets a collection of the non-static properties for the current SecurityTokenRequirement instance.

(Inherited from SecurityTokenRequirement)
RequireCryptographicToken

Gets or sets a value that indicates whether the security token must be capable of performing cryptographic operations, such as encryption.

(Inherited from SecurityTokenRequirement)
SecureConversationSecurityBindingElement

Gets or sets a security binding element used for securing the secure conversation bootstrap messages.

SecureConversationSecurityBindingElementProperty

Gets the key for the token requirement property whose value is the security binding element used to secure the secure conversation bootstrap messages.

SecurityAlgorithmSuite

Gets or sets the security algorithm suite to be used (if necessary).

SecurityAlgorithmSuiteProperty

Gets the key for the token requirement property whose value is the algorithm suite that the channel uses to perform message security.

SecurityBindingElement

Gets or sets the security binding element.

SecurityBindingElementProperty

Gets the key for the token requirement property whose value is the security binding element used to create the channel.

SupportingTokenAttachmentModeProperty

Gets the key for the token requirement property whose value is the associated SecurityTokenAttachmentMode enumeration member if the request is for a supporting token.

SupportSecurityContextCancellationProperty

Gets the key for the token requirement property whose value indicates whether the secure conversation token is for a security session (in which case its lifetime is tied to the lifetime of the user's channel) or for a datagram security channel.

SuppressAuditFailureProperty

Gets the key for the token requirement property whose value indicates whether to ignore errors that occur when recording the results of the authentication (service only).

TargetAddressProperty

Gets the key for the token requirement property whose value is the endpoint address that the channel is talking to (client only).

TokenType

Gets or sets the required security token type.

(Inherited from SecurityTokenRequirement)
TransportScheme

Gets or sets the transport scheme.

TransportSchemeProperty

If the request is made for a token provider/authenticator to be used with transport security, this string is the key for the token requirement property whose value is the transport scheme.

ViaProperty

Gets the key for the token requirement property whose value is the Via URI that the channel is connecting to (client only).

Methods

Equals(Object)

Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode()

Serves as the default hash function.

(Inherited from Object)
GetProperty<TValue>(String)

Gets the specified property for the current SecurityTokenRequirement instance.

(Inherited from SecurityTokenRequirement)
GetType()

Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone()

Creates a shallow copy of the current Object.

(Inherited from Object)
ToString()

Returns a string that represents the current object.

(Inherited from Object)
TryGetProperty<TValue>(String, TValue)

Gets the specified property for the current SecurityTokenRequirement instance.

(Inherited from SecurityTokenRequirement)

Applies to