ClientCredentials Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Consente all'utente di configurare le credenziali client e del servizio, nonché le impostazioni di autenticazione delle credenziali del servizio da utilizzare per il lato client della comunicazione.
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
- Ereditarietà
-
ClientCredentials
- Ereditarietà
- Derivato
- Implementazioni
Esempio
Nell'esempio di codice seguente viene illustrato come eseguire l'override di questa classe e implementare credenziali client personalizzate che includono un gestore dei token di sicurezza personalizzato.
Importante
È importante da notare che l'override del metodo CreateSecurityTokenManager viene eseguito per creare un gestore del token di sicurezza personalizzato. Il gestore del token di sicurezza, derivato da ClientCredentialsSecurityTokenManager. deve restituire un provider del token di sicurezza personalizzato, derivato da SecurityTokenProvider, per creare il token di sicurezza effettivo. Se non si segue questo modello per la creazione di token di sicurezza, l'applicazione sarà esposta al rischio di attacchi alla sicurezza, in particolare tramite elevazione dei privilegi. Questo modello di codifica si assicura che vengano usate le credenziali corrette quando vengono memorizzate nella cache le channel factory.
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
Commenti
È possibile accedere a ClientCredentials tramite la proprietà ClientCredentials della classe ClientBase<TChannel>.
Oggetto ClientCredentials aggiunto alla raccolta Behaviors. La ClientCredentials proprietà è una facciata (un modello di progettazione noto) su una voce in tale raccolta. Molte proprietà di questa classe restituiscono oggetti costituiti principalmente da proprietà. Questi oggetti possono essere utilizzati per la configurazione: una volta eseguita l'operazione di get
dell'oggetto, è possibile utilizzarlo per eseguire l'operazione di set
delle proprietà chiamandone i membri.
Costruttori
ClientCredentials() |
Inizializza una nuova istanza della classe ClientCredentials. |
ClientCredentials(ClientCredentials) |
Si tratta di un costruttore di copia. |
Proprietà
ClientCertificate |
Ottiene un oggetto che è possibile utilizzare per fornire il certificato X.509 utilizzato dal client per l'autenticazione al servizio. |
HttpDigest |
Ottiene la credenziale digest HTTP corrente. |
IssuedToken |
Utilizzare questa proprietà per specificare l'indirizzo e l'associazione dell'endpoint da utilizzare per contattare il servizio locale del token di sicurezza. Queste informazioni vengono utilizzate quando per un servizio è necessaria l'autenticazione tramite un token emesso, ma i criteri del servizio (rappresentati come associazione sul client) non specificano in modo esplicito come e dove ottenere il token. |
Peer |
Controlla le credenziali che un nodo peer utilizza per autenticare se stesso agli altri nodi della rete, oltre che le impostazioni di autenticazione utilizzate da un nodo peer per autenticare altri nodi peer. |
SecurityTokenHandlerCollectionManager |
Ottiene o imposta il gestore di token di sicurezza per le credenziali client. |
ServiceCertificate |
Ottiene un oggetto utilizzato per specificare il certificato X.509 di un servizio. |
SupportInteractive |
Ottiene o imposta un valore che indica se il sistema è autorizzato a richiedere all'utente in modo interattivo le credenziali quando è necessario. Potrebbe, ad esempio, essere utile impostarlo su |
UseIdentityConfiguration |
Ottiene o imposta se le credenziali client utilizzano la configurazione di identità. |
UserName |
Ottiene un oggetto credenziale utilizzabile per impostare il nome utente e la password utilizzati dal client per l'autenticazione al servizio. |
Windows |
Ottiene un oggetto utilizzato per controllare le credenziali Windows utilizzate dal client per l'autenticazione al servizio. |
Metodi
ApplyClientBehavior(ServiceEndpoint, ClientRuntime) |
Applica il comportamento client specificato all'endpoint. |
Clone() |
Crea una nuova copia di questa istanza della classe ClientCredentials. |
CloneCore() |
Crea una nuova copia di questa istanza della classe ClientCredentials. |
CreateSecurityTokenManager() |
Crea un gestore dei token di sicurezza per questa istanza. Questo metodo viene raramente chiamato in modo esplicito; lo si utilizza principalmente in scenari di estensibilità e viene chiamato dal sistema stesso. |
Equals(Object) |
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
GetHashCode() |
Funge da funzione hash predefinita. (Ereditato da Object) |
GetInfoCardSecurityToken(Boolean, CardSpacePolicyElement[], SecurityTokenSerializer) |
Genera e restituisce un token di sicurezza usando il sistema CardSpace e la catena di criteri e il serializzatore di token specificati. |
GetType() |
Ottiene l'oggetto Type dell'istanza corrente. (Ereditato da Object) |
MemberwiseClone() |
Crea una copia superficiale dell'oggetto Object corrente. (Ereditato da Object) |
ToString() |
Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |
Implementazioni dell'interfaccia esplicita
IEndpointBehavior.AddBindingParameters(ServiceEndpoint, BindingParameterCollection) |
Aggiunge questa istanza della classe a una raccolta di parametri di associazione. |
IEndpointBehavior.ApplyDispatchBehavior(ServiceEndpoint, EndpointDispatcher) |
Implementa una modifica o un'estensione del servizio all'interno di un endpoint. |
IEndpointBehavior.Validate(ServiceEndpoint) |
Riservato per usi futuri. |