Freigeben über


ClientCredentials Klasse

Definition

Ermöglicht es dem Benutzer, Client- und Dienstanmeldeinformationen sowie Dienstanmeldeinformationen für die Verwendung auf der Clientseite der Kommunikation zu konfigurieren.

public ref class ClientCredentials : System::ServiceModel::Description::IEndpointBehavior
public ref class ClientCredentials : System::ServiceModel::Security::SecurityCredentialsManager, System::ServiceModel::Description::IEndpointBehavior
public class ClientCredentials : System.ServiceModel.Description.IEndpointBehavior
public class ClientCredentials : System.ServiceModel.Security.SecurityCredentialsManager, System.ServiceModel.Description.IEndpointBehavior
type ClientCredentials = class
    interface IEndpointBehavior
type ClientCredentials = class
    inherit SecurityCredentialsManager
    interface IEndpointBehavior
Public Class ClientCredentials
Implements IEndpointBehavior
Public Class ClientCredentials
Inherits SecurityCredentialsManager
Implements IEndpointBehavior
Vererbung
ClientCredentials
Vererbung
Abgeleitet
Implementiert

Beispiele

Im folgenden Codebeispiel wird gezeigt, wie Sie diese Klasse außer Kraft setzen und eigene benutzerdefinierte Clientanmeldeinformationen implementieren, die einen benutzerdefinierten Sicherheitstoken-Manager enthalten.

Von Bedeutung

Es ist wichtig zu beachten, dass die CreateSecurityTokenManager Methode überschrieben wird, um einen benutzerdefinierten Sicherheitstoken-Manager zu erstellen. Der Sicherheitstoken-Manager, abgeleitet von ClientCredentialsSecurityTokenManager. muss einen benutzerdefinierten Sicherheitstokenanbieter zurückgeben, der von SecurityTokenProviderdem abgeleitet wird, um das tatsächliche Sicherheitstoken zu erstellen. Wenn Sie diesem Muster zum Erstellen von Sicherheitstoken nicht folgen, besteht Ihre Anwendung gefahr für Sicherheitsangriffe, insbesondere die Erhöhung von Berechtigungen. Dieses Codierungsmuster stellt sicher, dass die richtigen Anmeldeinformationen verwendet werden, wenn Kanalfabriken zwischengespeichert werden.

public class MyClientCredentials : ClientCredentials
{
    string creditCardNumber;

    public MyClientCredentials()
    {
        // Perform client credentials initialization.
    }

    protected MyClientCredentials(MyClientCredentials other)
        : base(other)
    {
        // Clone fields defined in this class.
        this.creditCardNumber = other.creditCardNumber;
    }

    public string CreditCardNumber
    {
        get
        {
            return this.creditCardNumber;
        }
        set
        {
            if (value == null)
            {
                throw new ArgumentNullException("value");
            }
            this.creditCardNumber = value;
        }
    }

    public override SecurityTokenManager CreateSecurityTokenManager()
    {
        // Return your implementation of the SecurityTokenManager.
        return new MyClientCredentialsSecurityTokenManager(this);
    }

    protected override ClientCredentials CloneCore()
    {
        // Implement the cloning functionality.
        return new MyClientCredentials(this);
    }
}
Public Class MyClientCredentials
    Inherits ClientCredentials
    Private creditCardNumberValue As String

    Public Sub New() 
    
    End Sub
    
    ' Perform client credentials initialization.    
    Protected Sub New(ByVal other As MyClientCredentials) 
        MyBase.New(other)
        ' Clone fields defined in this class.
        Me.creditCardNumberValue = other.creditCardNumberValue
    
    End Sub

    Public Property CreditCardNumber() As String 
        Get
            Return Me.creditCardNumberValue
        End Get
        Set
            If value Is Nothing Then
                Throw New ArgumentNullException("value")
            End If
            Me.creditCardNumberValue = value
        End Set
    End Property

    Public Overrides Function CreateSecurityTokenManager() As SecurityTokenManager 
        ' Return your implementation of the SecurityTokenManager.
        Return New MyClientCredentialsSecurityTokenManager(Me)
    
    End Function
    
    Protected Overrides Function CloneCore() As ClientCredentials 
        ' Implement the cloning functionality.
        Return New MyClientCredentials(Me)
    
    End Function
End Class

Hinweise

Der ClientCredentials Zugriff erfolgt über die ClientCredentials Eigenschaft der ClientBase<TChannel> Klasse.

Der Auflistung wird ein ClientCredentials Objekt hinzugefügt Behaviors . Die ClientCredentials Eigenschaft ist ein Fassadenmuster (ein bekanntes Designmuster) über einen Eintrag in dieser Sammlung. Viele Eigenschaften in dieser Klasse geben Objekte zurück, die hauptsächlich aus Eigenschaften bestehen. Diese Objekte können für die Konfiguration verwendet werden: Nachdem Sie get das Objekt erstellt haben, können Sie es für set Eigenschaften verwenden, indem Sie dessen Member aufrufen.

Konstruktoren

Name Beschreibung
ClientCredentials()

Initialisiert eine neue Instanz der ClientCredentials-Klasse.

ClientCredentials(ClientCredentials)

Dies ist ein Kopierkonstruktor.

Eigenschaften

Name Beschreibung
ClientCertificate

Ruft ein Objekt ab, das Sie verwenden können, um das X.509-Zertifikat bereitzustellen, das der Client für die Authentifizierung beim Dienst verwendet.

HttpDigest

Ruft die aktuellen HTTP Digest-Anmeldeinformationen ab.

IssuedToken

Verwenden Sie diese Eigenschaft, um die Endpunktadresse und bindung anzugeben, die beim Kontaktieren des lokalen Sicherheitstokendiensts verwendet werden soll. Diese Informationen werden verwendet, wenn ein Dienst eine Authentifizierung mit einem ausgestellten Token erfordert, aber die Richtlinie des Diensts (dargestellt als Bindung auf dem Client) gibt nicht explizit an, wie und wo das ausgestellte Token abgerufen werden soll.

Peer

Steuert die Anmeldeinformationen, die ein Peerknoten verwendet, um sich bei anderen Knoten im Gitter zu authentifizieren, sowie Authentifizierungseinstellungen, die ein Peerknoten zum Authentifizieren anderer Peerknoten verwendet.

SecurityTokenHandlerCollectionManager

Dient zum Abrufen oder Festlegen des Sicherheitstokenhandlers für die Clientanmeldeinformationen.

ServiceCertificate

Ruft ein Objekt ab, das zum Angeben des X.509-Zertifikats eines Diensts verwendet wird.

SupportInteractive

Dient zum Abrufen oder Festlegen eines Werts, der angibt, ob das System den Benutzer bei Bedarf interaktiv zur Eingabe von Anmeldeinformationen auffordern darf. Beispielsweise kann die false Einstellung in Szenarien auf mittlerer Ebene gewünscht werden.

UseIdentityConfiguration

Ruft ab oder legt fest, ob die Clientanmeldeinformationen die Identitätskonfiguration verwenden.

UserName

Ruft ein Anmeldeinformationsobjekt ab, mit dem Sie den Benutzernamen und das Kennwort festlegen können, den der Client zum Authentifizieren beim Dienst verwendet.

Windows

Ruft ein Objekt ab, das zum Steuern der Windows-Anmeldeinformationen verwendet wird, die der Client zum Authentifizieren für den Dienst verwendet.

Methoden

Name Beschreibung
ApplyClientBehavior(ServiceEndpoint, ClientRuntime)

Wendet das angegebene Clientverhalten auf den Endpunkt an.

Clone()

Erstellt eine neue Kopie dieser ClientCredentials Instanz.

CloneCore()

Erstellt eine neue Kopie dieser ClientCredentials Instanz.

CreateSecurityTokenManager()

Erstellt einen Sicherheitstoken-Manager für diese Instanz. Diese Methode wird selten explizit aufgerufen. sie wird in erster Linie in Erweiterungsszenarien verwendet und vom System selbst aufgerufen.

Equals(Object)

Bestimmt, ob das angegebene Objekt dem aktuellen Objekt entspricht.

(Geerbt von Object)
GetHashCode()

Dient als Standardhashfunktion.

(Geerbt von Object)
GetInfoCardSecurityToken(Boolean, CardSpacePolicyElement[], SecurityTokenSerializer)

Generiert und gibt ein Sicherheitstoken mit dem CardSpace-System und der angegebenen Richtlinienkette und token serializer zurück.

GetType()

Ruft die Type der aktuellen Instanz ab.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie der aktuellen Object.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Explizite Schnittstellenimplementierungen

Name Beschreibung
IEndpointBehavior.AddBindingParameters(ServiceEndpoint, BindingParameterCollection)

Fügt diese Instanz dieser Klasse einer Bindungsparameterauflistung hinzu.

IEndpointBehavior.ApplyDispatchBehavior(ServiceEndpoint, EndpointDispatcher)

Implementiert eine Änderung oder Erweiterung des Diensts über einen Endpunkt hinweg.

IEndpointBehavior.Validate(ServiceEndpoint)

Reserviert für zukünftige Verwendung.

Gilt für: