ClientCredentials Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Le permite al usuario configurar las credenciales del cliente y del servicio, así como los valores de autenticación de la credencial de servicio para el uso en la parte de la comunicación del cliente.
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
- Herencia
-
ClientCredentials
- Herencia
- Derivado
- Implementaciones
Ejemplos
El ejemplo de código siguiente muestra cómo invalidar esta clase e implementar sus propias credenciales de cliente personalizadas, que incluye un administrador de tokens de seguridad personalizado.
Importante
Es importante tener en cuenta que el método CreateSecurityTokenManager se invalida para crear un administrador de tokens de seguridad personalizado. El administrador de tokens de seguridad, derivado de ClientCredentialsSecurityTokenManager, debe devolver un proveedor de tokens de seguridad personalizado, derivado de SecurityTokenProvider, para crear el token de seguridad propiamente dicho. Si no sigue este modelo para crear los tokens de seguridad, su aplicación estará en peligro y podrá sufrir ataques de seguridad, sobre todo en las elevaciones de privilegios. Este modelo de codificación garantiza el uso de las credenciales correctas cuando los generadores de canales están almacenados en memoria caché.
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
Comentarios
Se obtiene acceso a ClientCredentials mediante la propiedad ClientCredentials de la clase ClientBase<TChannel>.
Un objeto ClientCredentials se agrega a la colección Behaviors. La ClientCredentials propiedad es una fachada (un patrón de diseño conocido) sobre una entrada de esa colección. Muchas propiedades de esta clase devuelve objetos que están compuestos principalmente por propiedades. Estos objetos se pueden utilizar para la configuración: cuando get
el objeto, puede utilizarlo para set
propiedades llamando a sus miembros.
Constructores
ClientCredentials() |
Inicializa una nueva instancia de la clase ClientCredentials. |
ClientCredentials(ClientCredentials) |
Éste es un constructor de copias. |
Propiedades
ClientCertificate |
Obtiene un objeto que puede utilizar para proporcionar el certificado X.509 que el cliente utiliza para autenticar al servicio. |
HttpDigest |
Obtiene la credencial de resumen HTTP actual. |
IssuedToken |
Utilice esta propiedad para especificar la dirección del punto de conexión y el enlace que se utilizará al ponerse en contacto con su servicio de token de seguridad local. Se utiliza esta información cuando un servicio requiere autenticación mediante un token emitido, pero la directiva del servicio (se representa como un enlace del cliente) no especifica explícitamente cómo y dónde obtener el token emitido. |
Peer |
Controla las credenciales que un nodo del mismo nivel utiliza para autenticarse en otros nodos de la malla, así como los valores de autenticación que un nodo del mismo nivel utiliza para autenticar otros nodos entre pares. |
SecurityTokenHandlerCollectionManager |
Obtiene o establece el controlador de token de seguridad para la credencial de cliente. |
ServiceCertificate |
Obtiene un objeto usado para especificar un certificado X.509 de servicio. |
SupportInteractive |
Obtiene o establece un valor que indica si se permite al sistema preguntar interactivamente al usuario las credenciales cuando sea necesario. Por ejemplo, establecer esto como |
UseIdentityConfiguration |
Obtiene o establece si las credenciales del cliente usan la configuración de identidad. |
UserName |
Obtiene un objeto de credencial que puede utilizar para establecer el nombre de usuario y contraseña que el cliente utiliza para autenticarse en el servicio. |
Windows |
Obtiene un objeto utilizado para controlar la credencial de Windows que el cliente utiliza para autenticarse en el servicio. |
Métodos
ApplyClientBehavior(ServiceEndpoint, ClientRuntime) |
Aplica el comportamiento del cliente especificado al punto de conexión. |
Clone() |
Crea una nueva copia de esta instancia de ClientCredentials. |
CloneCore() |
Crea una nueva copia de esta instancia de ClientCredentials. |
CreateSecurityTokenManager() |
Crea un administrador de tokens de seguridad para esta instancia. Raramente se llama a este método explícitamente; se utiliza principalmente en escenarios de extensibilidad y es llamado por el propio sistema. |
Equals(Object) |
Determina si el objeto especificado es igual que el objeto actual. (Heredado de Object) |
GetHashCode() |
Sirve como la función hash predeterminada. (Heredado de Object) |
GetInfoCardSecurityToken(Boolean, CardSpacePolicyElement[], SecurityTokenSerializer) |
Genera y devuelve un token de seguridad mediante el sistema CardSpace y la cadena de directivas y el serializador de tokens especificados. |
GetType() |
Obtiene el Type de la instancia actual. (Heredado de Object) |
MemberwiseClone() |
Crea una copia superficial del Object actual. (Heredado de Object) |
ToString() |
Devuelve una cadena que representa el objeto actual. (Heredado de Object) |
Implementaciones de interfaz explícitas
IEndpointBehavior.AddBindingParameters(ServiceEndpoint, BindingParameterCollection) |
Agrega esta instancia de esta clase a una colección de parámetros obligatoria. |
IEndpointBehavior.ApplyDispatchBehavior(ServiceEndpoint, EndpointDispatcher) |
Implementa una modificación o extensión del servicio en este punto de conexión. |
IEndpointBehavior.Validate(ServiceEndpoint) |
Reservado para un uso futuro. |