ClientCredentials Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Permite que o usuário configure o cliente e credenciais de serviço, bem como configurações de autenticação de credenciais de serviço para uso no lado do cliente de comunicação.
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
- Herança
-
ClientCredentials
- Herança
- Derivado
- Implementações
Exemplos
O exemplo de código a seguir mostra como substituir essa classe e implementar suas próprias credenciais de cliente personalizadas que incluem um gerenciador de tokens de segurança personalizado.
Importante
É importante observar que o CreateSecurityTokenManager método é substituído para criar um gerenciador de tokens de segurança personalizado. O gerenciador de tokens de segurança, derivado de ClientCredentialsSecurityTokenManager. deve retornar um provedor de token de segurança personalizado, derivado de SecurityTokenProvider, para criar o token de segurança real. Se você não seguir esse padrão para criar tokens de segurança, seu aplicativo estará em risco de ataques de segurança, especificamente elevação de privilégios. Esse padrão de codificação garante que as credenciais corretas sejam usadas quando as fábricas de canais são armazenadas em cache.
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
Comentários
O ClientCredentials é acessado por meio da ClientCredentials propriedade da ClientBase<TChannel> classe.
Um ClientCredentials objeto é adicionado à Behaviors coleção. A ClientCredentials propriedade é uma Facade (um padrão de design bem conhecido) sobre uma entrada nessa coleção. Muitas propriedades nessa classe retornam objetos que consistem principalmente em propriedades. Esses objetos podem ser usados para configuração: depois que o get
objeto for usado, você poderá usá-lo para set
propriedades chamando seus membros.
Construtores
ClientCredentials() |
Inicializa uma nova instância da classe ClientCredentials. |
ClientCredentials(ClientCredentials) |
Esse é um construtor de cópia. |
Propriedades
ClientCertificate |
Obtém um objeto que pode ser usado para fornecer o certificado X.509 usado pelo cliente para se autenticar no serviço. |
HttpDigest |
Obtém a credencial de Resumo HTTP. |
IssuedToken |
Use essa propriedade para especificar a associação e o endereço do ponto de extremidade a serem usados ao entrar em contato com o serviço de token de segurança local. Essas informações são usadas quando um serviço requer autenticação usando um token emitido, mas a política do serviço (representada como uma associação no cliente) não especifica explicitamente como e onde obter o token emitido. |
Peer |
Controla as credenciais que um nó par usa para se autenticar em outros nós da malha, bem como configurações de autenticação que um nó par usa para autenticar outros nós pares. |
SecurityTokenHandlerCollectionManager |
Obtém ou define o manipulador de token de segurança para a credencial do cliente. |
ServiceCertificate |
Obtém um objeto usado para especificar o certificado X.509 de um serviço. |
SupportInteractive |
Obtém ou define um valor que indica se o sistema tem permissão para solicitar credenciais interativamente ao usuário quando necessário. Por exemplo, a definição |
UseIdentityConfiguration |
Obtém ou define se as credenciais do cliente usa a configuração de identidade. |
UserName |
Obtém um objeto de credencial que pode ser usado para definir o nome de usuário e a senha usados pelo cliente para se autenticar no serviço. |
Windows |
Obtém um objeto usado para controlar a credencial do Windows que o cliente usa para se autenticar no serviço. |
Métodos
ApplyClientBehavior(ServiceEndpoint, ClientRuntime) |
Aplica o comportamento do cliente especificado ao ponto de extremidade. |
Clone() |
Cria uma nova cópia dessa instância de ClientCredentials. |
CloneCore() |
Cria uma nova cópia dessa instância de ClientCredentials. |
CreateSecurityTokenManager() |
Cria um gerenciador de token de segurança para essa instância. Este método é raramente chamado explicitamente; ele é usado principalmente em cenários de extensibilidade e é chamado pelo próprio sistema. |
Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
GetHashCode() |
Serve como a função de hash padrão. (Herdado de Object) |
GetInfoCardSecurityToken(Boolean, CardSpacePolicyElement[], SecurityTokenSerializer) |
Gera e retorna um token de segurança usando o sistema CardSpace e o serializador de token e cadeia de políticas especificados. |
GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
MemberwiseClone() |
Cria uma cópia superficial do Object atual. (Herdado de Object) |
ToString() |
Retorna uma cadeia de caracteres que representa o objeto atual. (Herdado de Object) |
Implantações explícitas de interface
IEndpointBehavior.AddBindingParameters(ServiceEndpoint, BindingParameterCollection) |
Adiciona essa instância dessa classe a uma coleção de parâmetros de associação. |
IEndpointBehavior.ApplyDispatchBehavior(ServiceEndpoint, EndpointDispatcher) |
Implementa uma modificação ou extensão do serviço em um ponto de extremidade. |
IEndpointBehavior.Validate(ServiceEndpoint) |
Reservado para uso futuro. |