ServiceCredentials Class 
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Configures a service credential. Use this class to specify the credential for the service such as an X.509 certificate. Also, use this class to specify the authentication model for various client credentials such as user name and password validation.
public ref class ServiceCredentials : System::ServiceModel::Security::SecurityCredentialsManager, System::ServiceModel::Description::IServiceBehaviorpublic class ServiceCredentials : System.ServiceModel.Security.SecurityCredentialsManager, System.ServiceModel.Description.IServiceBehaviortype ServiceCredentials = class
    inherit SecurityCredentialsManager
    interface IServiceBehaviorPublic Class ServiceCredentials
Inherits SecurityCredentialsManager
Implements IServiceBehavior- Inheritance
- Implements
Examples
The following code shows how to override this class to implement custom service credentials.
public class MyServiceCredentials : ServiceCredentials
{
    X509Certificate2 additionalCertificate;
    public MyServiceCredentials()
    {
    }
    protected MyServiceCredentials(MyServiceCredentials other)
        : base(other)
    {
        this.additionalCertificate = other.additionalCertificate;
    }
    public X509Certificate2 AdditionalCertificate
    {
        get
        {
            return this.additionalCertificate;
        }
        set
        {
            if (value == null)
            {
                throw new ArgumentNullException("value");
            }
            this.additionalCertificate = value;
        }
    }
    public override SecurityTokenManager CreateSecurityTokenManager()
    {
        return base.CreateSecurityTokenManager();
    }
    protected override ServiceCredentials CloneCore()
    {
        return new MyServiceCredentials(this);
    }
}
Public Class MyServiceCredentials
    Inherits ServiceCredentials
    Private additionalCertificateValue As X509Certificate2
    Public Sub New() 
    
    End Sub
    Protected Sub New(ByVal other As MyServiceCredentials) 
        MyBase.New(other)
        Me.additionalCertificate = other.additionalCertificate
    End Sub
    
    
    Public Property AdditionalCertificate() As X509Certificate2 
        Get
            Return Me.additionalCertificateValue
        End Get
        Set
            If value Is Nothing Then
                Throw New ArgumentNullException("value")
            End If
            Me.additionalCertificateValue = value
        End Set
    End Property
    Public Overrides Function CreateSecurityTokenManager() As SecurityTokenManager 
        Return MyBase.CreateSecurityTokenManager()
    
    End Function
    
    
    Protected Overrides Function CloneCore() As ServiceCredentials 
        Return New MyServiceCredentials(Me)
    
    End Function
End Class
Remarks
This class is used as a parameter in the BuildChannelListenerCore method, by methods of the ServiceCredentialsSecurityTokenManager, and is returned by the ServiceHostBase.Credentials property.
Constructors
| ServiceCredentials() | Initializes a new instance of the ServiceCredentials class. | 
| ServiceCredentials(ServiceCredentials) | Initializes a new instance of ServiceCredentials from the specified ServiceCredentials. | 
Properties
| ClientCertificate | Gets the current client certificate authentication and provisioning settings for this service. | 
| ExceptionMapper | Gets or sets the exception mapper associated with the service credentials. | 
| IdentityConfiguration | Gets or sets the identity configuration for the service. | 
| IssuedTokenAuthentication | Gets the current issued token (for example, SAML) authentication settings for this service. | 
| Peer | Gets the current credential authentication and provisioning settings to be used by peer transport endpoints configured on the service. | 
| SecureConversationAuthentication | Gets the current settings to be used by a secure conversation. | 
| ServiceCertificate | Gets the current certificate associated with this service. | 
| UseIdentityConfiguration | Gets or sets whether the service credential uses identity configuration. | 
| UserNameAuthentication | Gets the current user name/password authentication settings for this service. | 
| WindowsAuthentication | Gets the current Windows authentication settings for this service. | 
Methods
| Clone() | Creates a copy of the current instance. | 
| CloneCore() | Copies the essential members of the current instance. | 
| CreateSecurityTokenManager() | Creates a token manager for this service. | 
| 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) | 
| 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) | 
Explicit Interface Implementations
| IServiceBehavior.AddBindingParameters(ServiceDescription, ServiceHostBase, Collection<ServiceEndpoint>, BindingParameterCollection) | Adds this instance to a binding parameter collection. This is an infrastructure method and not intended to be called directly. | 
| IServiceBehavior.ApplyDispatchBehavior(ServiceDescription, ServiceHostBase) | Apply the dispatch behavior. This is an infrastructure method and not intended to be called directly. | 
| IServiceBehavior.Validate(ServiceDescription, ServiceHostBase) | Validates a service description. This is an infrastructure method and not intended to be called directly. |