ClientCredentials Класс

Определение

Позволяет пользователю настроить клиента и учетные данные службы, а также параметры проверки подлинности учетных данных службы для использования со стороны клиента связи.Enables the user to configure client and service credentials as well as service credential authentication settings for use on the client side of communication.

public ref class ClientCredentials : System::ServiceModel::Description::IEndpointBehavior
public class ClientCredentials : System.ServiceModel.Description.IEndpointBehavior
type ClientCredentials = class
    interface IEndpointBehavior
Public Class ClientCredentials
Implements IEndpointBehavior
Наследование
ClientCredentials
Реализации

Примеры

В следующем примере кода показан способ переопределения этого класса и реализации своих собственных настраиваемых клиентских учетных данных, в которых включается настраиваемый диспетчер маркера безопасности.The following code sample shows how to override this class and implement your own custom client credentials that includes a custom security token manager.

Важно!

Важно отметить, что метод CreateSecurityTokenManager переопределен, чтобы создать пользовательский диспетчер маркеров безопасности.It is important to note that the CreateSecurityTokenManager method is overridden to create a custom security token manager. Диспетчер маркера безопасности, производный от ClientCredentialsSecurityTokenManager.The security token manager, derived from ClientCredentialsSecurityTokenManager. Должен возвратить пользовательский поставщик маркера безопасности, производный от SecurityTokenProvider, чтобы создать действующий маркер безопасности.must return a custom security token provider, derived from SecurityTokenProvider, to create the actual security token. Если не придерживаться данного способа создания маркеров безопасности, приложение будет подвергаться риску, особенно атак с повышением прав доступа.If you do not follow this pattern for creating security tokens, your application will be at risk for security attacks, specifically elevation of privileges. Этот способ кодировки гарантирует, что при кэшировании фабрик каналов используются верные учетные данные.This coding pattern ensures that the correct credentials are used when channel factories are cached.

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

Комментарии

Доступ к коллекции ClientCredentials осуществляется с помощью свойства ClientCredentials класса ClientBase<TChannel>.The ClientCredentials is accessed through the ClientCredentials property of the ClientBase<TChannel> class.

Объект ClientCredentials, добавляемый в коллекцию Behaviors.A ClientCredentials object is added to the Behaviors collection. Свойство ClientCredentials является фасадной (хорошо известным шаблоном разработки) над записью в этой коллекции.The ClientCredentials property is a Façade (a well-known design pattern) over an entry in that collection. Многие свойства в этом классе возвращают объекты, которые состоят в основном из свойств.Many properties in this class return objects that consist mainly of properties. Эти объекты могут использоваться для настройки: при get объекта его можно использовать для set свойств путем вызова его участников.These objects can be used for configuration: once you get the object, you can use it to set properties by calling its members.

Конструкторы

ClientCredentials()

Инициализирует новый экземпляр класса ClientCredentials.Initializes a new instance of the ClientCredentials class.

ClientCredentials(ClientCredentials)

Это копия конструктора.This is a copy constructor.

Свойства

ClientCertificate

Возвращает объект, который можно использовать для предоставления сертификата X.509, используемого клиентом для проверки подлинности службы.Gets an object that you can use to provide the X.509 certificate that the client uses to authenticate to the service.

HttpDigest

Возвращает текущую учетную запись дайджест-проверки подлинности HTTP.Gets the current HTTP Digest credential.

IssuedToken

Используйте это свойство, чтобы задать адрес конечной точки и привязку для использования при контакте с локальной службой маркеров безопасности.Use this property to specify the endpoint address and binding to use when contacting your local Security Token Service. Эти сведения используются, когда для службы требуется проверка подлинности с помощью выданного маркера, но политика службы (представленная как привязка для клиента) явно не задает, как и где получить выданный маркер.This information is used when a service requires authentication using an issued token, but the policy of the service (represented as a binding on the client) does not explicitly specify how and where to obtain the issued token.

Peer

Контролирует учетные данные, используемые одноранговым узлом для проверки подлинности самого себя для других узлов в сетке, а также параметры проверки подлинности, используемые одноранговым узлом для проверки подлинности других одноранговых узлов.Controls the credentials that a peer node uses to authenticate itself to other nodes in the mesh, as well as authentication settings that a peer node uses to authenticate other peer nodes.

SecurityTokenHandlerCollectionManager

Получает или задает обработчик токенов безопасности для учетных данных клиента.Gets or sets the security token handler for the client credential.

ServiceCertificate

Возвращает объект, используемый для задания сертификата X.509 службы.Gets an object used to specify a service's X.509 certificate.

SupportInteractive

Возвращает или задает значение, указывающее, позволено ли системе при необходимости запрашивать ввод учетных данных пользователя в интерактивном режиме.Gets or sets a value that indicates whether the system is allowed to interactively prompt the user for credentials when necessary. Например, задание значения false может быть полезным в сценариях среднего уровня.For example, setting it to false might be desired in middle-tier scenarios.

UseIdentityConfiguration

Получает или задает значение, указывающее, используется ли в учетных данных клиента конфигурация удостоверения.Gets or sets whether the client credentials uses identity configuration.

UserName

Возвращает объект учетных данных, который можно использовать для задания имени пользователя и пароля, используемого клиентом для проверки подлинности самого себя для службы.Gets a credential object that you can use to set the user name and password that the client uses to authenticate itself to the service.

Windows

Возвращает объект, используемый, чтобы контролировать учетные данные Windows, используемые клиентом для проверки подлинности самого себя для службы.Gets an object used to control the Windows credential that the client uses to authenticate itself to the service.

Методы

ApplyClientBehavior(ServiceEndpoint, ClientRuntime)

Применяет заданное поведение клиента к конечной точке.Applies the specified client behavior to the endpoint.

Clone()

Создает новую копию этого экземпляра ClientCredentials.Creates a new copy of this ClientCredentials instance.

CloneCore()

Создает новую копию этого экземпляра ClientCredentials.Creates a new copy of this ClientCredentials instance.

CreateSecurityTokenManager()

Создает диспетчер маркера безопасности для этого экземпляра.Creates a security token manager for this instance. Этот метод редко вызывается явным образом, в основном он используется в сценариях расширяемости и вызывается самой системой.This method is rarely called explicitly; it is primarily used in extensibility scenarios and is called by the system itself.

Equals(Object)

Определяет, равен ли указанный объект текущему объекту.Determines whether the specified object is equal to the current object.

(Унаследовано от Object)
GetHashCode()

Служит в качестве хэш-функции по умолчанию.Serves as the default hash function.

(Унаследовано от Object)
GetInfoCardSecurityToken(Boolean, CardSpacePolicyElement[], SecurityTokenSerializer)

Создает и возвращает маркер безопасности с помощью системы CardSpaceCardSpace и заданной цепочки политики и сериализатора маркера.Generates and returns a security token using the CardSpaceCardSpace system and the specified policy chain and token serializer.

GetType()

Возвращает объект Type для текущего экземпляра.Gets the Type of the current instance.

(Унаследовано от Object)
MemberwiseClone()

Создает неполную копию текущего объекта Object.Creates a shallow copy of the current Object.

(Унаследовано от Object)
ToString()

Возвращает строку, представляющую текущий объект.Returns a string that represents the current object.

(Унаследовано от Object)

Явные реализации интерфейса

IEndpointBehavior.AddBindingParameters(ServiceEndpoint, BindingParameterCollection)

Добавляет этот экземпляр этого класса к коллекции параметров привязки.Adds this instance of this class to a binding parameter collection.

IEndpointBehavior.ApplyDispatchBehavior(ServiceEndpoint, EndpointDispatcher)

Реализует изменение или расширение службы по всей конечной точке.Implements a modification or extension of the service across an endpoint.

IEndpointBehavior.Validate(ServiceEndpoint)

Зарезервировано для будущего использования.Reserved for future use.

Применяется к