ClientCredentials Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ermöglicht es dem Benutzer, die Client- und Dienstanmeldeinformationen sowie die auf der Clientseite der Kommunikation zu verwendenden Authentifizierungseinstellungen für die Dienstanmeldeinformationen 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 überschreiben und Ihre eigenen benutzerdefinierten Clientanmeldeinformationen mit einem benutzerdefinierten Clientsicherheitstoken-Manager implementieren.
Wichtig
Wichtig: Beachten Sie, dass die CreateSecurityTokenManager-Methode überschrieben wird, um einen benutzerdefinierten Sicherheitstokenmanager zu erstellen. Der vom ClientCredentialsSecurityTokenManager abgeleitete Sicherheitstokenmanager muss einen benutzerdefinierten Sicherheitstokenanbieter zurückgeben, der vom SecurityTokenProvider abgeleitet wurde, um das eigentliche Sicherheitstoken zu erstellen. Wenn Sie diesem Muster zum Erstellen von Sicherheitstokens nicht folgen, läuft die Anwendung Gefahr, Sicherheitsangriffen (insbesondere Rechteerweiterungen) ausgesetzt zu sein. Dieses Codierungsmuster stellt sicher, dass die richtigen Anmeldeinformationen verwendet werden, wenn Channelfactorys 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 Zugriff auf die ClientCredentials erfolgt über die ClientCredentials-Eigenschaft der ClientBase<TChannel>-Klasse.
Der ClientCredentials-Auflistung wird ein Behaviors-Objekt hinzugefügt. Die ClientCredentials Eigenschaft ist eine Fassade (ein bekanntes Designmuster) über einen Eintrag in dieser Auflistung. Viele Eigenschaften in diesen Klassen geben Objekte zurück, die hauptsächlich aus Eigenschaften bestehen. Diese Objekte können für die Konfiguration verwendet werden: Nach dem get
des Objekts können Sie es durch Aufrufen seiner Member zum set
von Eigenschaften verwenden.
Konstruktoren
ClientCredentials() |
Initialisiert eine neue Instanz der ClientCredentials-Klasse. |
ClientCredentials(ClientCredentials) |
Dies ist ein Kopierkonstruktor. |
Eigenschaften
ClientCertificate |
Ruft ein Objekt ab, mit dem Sie das vom Client für die Authentifizierung des Diensts verwendete X.509-Zertifikat bereitstellen können. |
HttpDigest |
Ruft die aktuellen HTTP-Hashwertanmeldeinformationen ab. |
IssuedToken |
Geben Sie mithilfe dieser Eigenschaft die Endpunktadresse und die Bindung an, die beim Kontaktieren des lokalen Sicherheitstokendiensts verwendet werden sollen. Diese Informationen werden verwendet, wenn ein Dienst die Authentifizierung mit einem ausgestellten Token erfordert. In der Richtlinie des Diensts (durch eine Bindung auf dem Client dargestellt) ist jedoch nicht explizit angegeben, wie und wo das ausgestellte Token abgerufen werden kann. |
Peer |
Steuert die Anmeldeinformationen, mit denen sich ein Peerknoten gegenüber anderen Knoten im Netz authentifiziert, sowie die Authentifizierungseinstellungen, mit denen ein Peerknoten andere Peerknoten authentifiziert. |
SecurityTokenHandlerCollectionManager |
Ruft den Sicherheitstokenhandler für die Clientanmeldeinformationen ab oder legt diesen fest. |
ServiceCertificate |
Ruft ein Objekt ab, mit dem das X.509-Zertifikat eines Diensts angegeben wird. |
SupportInteractive |
Dient zum Abrufen oder Festlegen eines Werts, der angibt, ob das System den Benutzer ggf. interaktiv zur Eingabe von Anmeldeinformationen auffordern darf. Bei einem Szenario der mittleren Ebene könnte es z. B. wünschenswert sein, den Wert auf |
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, die der Client verwendet, um sich dem Dienst gegenüber zu authentifizieren. |
Windows |
Ruft ein Objekt zur Steuerung der Windows-Anmeldeinformationen ab, die der Client verwendet, um sich dem Dienst gegenüber zu authentifizieren. |
Methoden
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 nur selten explizit aufgerufen. In der Regel wird sie in Szenarien zur Erweiterbarkeit verwendet und vom System selbst aufgerufen. |
Equals(Object) |
Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist. (Geerbt von Object) |
GetHashCode() |
Fungiert als Standardhashfunktion. (Geerbt von Object) |
GetInfoCardSecurityToken(Boolean, CardSpacePolicyElement[], SecurityTokenSerializer) |
Generiert und gibt ein Sicherheitstoken mithilfe des CardSpace-Systems und der angegebenen Richtlinienkette und token serializer zurück. |
GetType() |
Ruft den Type der aktuellen Instanz ab. (Geerbt von Object) |
MemberwiseClone() |
Erstellt eine flache Kopie des aktuellen Object. (Geerbt von Object) |
ToString() |
Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Geerbt von Object) |
Explizite Schnittstellenimplementierungen
IEndpointBehavior.AddBindingParameters(ServiceEndpoint, BindingParameterCollection) |
Fügt diese Instanz dieser Klasse einer Bindungsparameterauflistung hinzu. |
IEndpointBehavior.ApplyDispatchBehavior(ServiceEndpoint, EndpointDispatcher) |
Implementiert eine Änderung oder eine Erweiterung des Diensts in einem Endpunkt. |
IEndpointBehavior.Validate(ServiceEndpoint) |
Für zukünftige Verwendung reserviert. |