ClientCredentials Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Позволяет пользователю настраивать учетные данные клиента и службы, а также параметры проверки подлинности учетных данных службы для использования на стороне клиента связи.
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
- Наследование
-
ClientCredentials
- Наследование
- Производный
- Реализации
Примеры
В следующем примере кода показано, как переопределить этот класс и реализовать собственные пользовательские учетные данные клиента, которые включают в себя пользовательский диспетчер маркеров безопасности.
Это важно
Важно отметить, что CreateSecurityTokenManager метод переопределяется для создания пользовательского диспетчера маркеров безопасности. Диспетчер маркеров безопасности, производный от ClientCredentialsSecurityTokenManager. должен возвращать пользовательский поставщик маркеров безопасности, производный от SecurityTokenProvider, чтобы создать фактический маркер безопасности. Если вы не следуйте этому шаблону для создания маркеров безопасности, ваше приложение будет подвержено риску атак безопасности, в частности, повышение привилегий. Этот шаблон кодирования гарантирует, что правильные учетные данные используются при кэшировании фабрик каналов.
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> класса.
Объект ClientCredentials добавляется в коллекцию Behaviors . Свойство ClientCredentials является фасадом (хорошо известным шаблоном дизайна) над записью в этой коллекции. Многие свойства в этом классе возвращают объекты, состоящие главным образом из свойств. Эти объекты можно использовать для настройки: после get того как объект можно использовать для set свойств, вызывая его члены.
Конструкторы
| Имя | Описание |
|---|---|
| ClientCredentials() |
Инициализирует новый экземпляр класса ClientCredentials. |
| ClientCredentials(ClientCredentials) |
Это конструктор копирования. |
Свойства
| Имя | Описание |
|---|---|
| ClientCertificate |
Возвращает объект, который можно использовать для предоставления сертификата X.509, который клиент использует для проверки подлинности в службе. |
| HttpDigest |
Возвращает текущие учетные данные дайджеста HTTP. |
| IssuedToken |
Используйте это свойство, чтобы указать адрес конечной точки и привязку для использования при обращении к локальной службе маркеров безопасности. Эти сведения используются, если служба требует проверки подлинности с помощью выданного маркера, но политика службы (представленная как привязка клиента) явно не указывает, как и где получить выданный маркер. |
| Peer |
Управляет учетными данными, которые одноранговый узел использует для проверки подлинности на других узлах в сетке, а также параметры проверки подлинности, которые использует одноранговый узел для проверки подлинности других одноранговых узлов. |
| SecurityTokenHandlerCollectionManager |
Возвращает или задает обработчик маркера безопасности для учетных данных клиента. |
| ServiceCertificate |
Возвращает объект, используемый для указания сертификата X.509 службы. |
| SupportInteractive |
Возвращает или задает значение, указывающее, разрешено ли системе интерактивно запрашивать учетные данные пользователя при необходимости. Например, можно задать его в |
| UseIdentityConfiguration |
Возвращает или задает, используются ли учетные данные клиента конфигурацией удостоверений. |
| UserName |
Возвращает объект учетных данных, который можно использовать для задания имени пользователя и пароля, используемого клиентом для проверки подлинности в службе. |
| Windows |
Получает объект, используемый для управления учетными данными Windows, которые клиент использует для проверки подлинности в службе. |
Методы
| Имя | Описание |
|---|---|
| ApplyClientBehavior(ServiceEndpoint, ClientRuntime) |
Применяет указанное поведение клиента к конечной точке. |
| Clone() |
Создает новую копию этого ClientCredentials экземпляра. |
| CloneCore() |
Создает новую копию этого ClientCredentials экземпляра. |
| CreateSecurityTokenManager() |
Создает диспетчер маркеров безопасности для этого экземпляра. Этот метод редко вызывается явным образом; он в основном используется в сценариях расширяемости и вызывается самой системой. |
| Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
| GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
| GetInfoCardSecurityToken(Boolean, CardSpacePolicyElement[], SecurityTokenSerializer) |
Создает и возвращает маркер безопасности с помощью системы CardSpace и указанной цепочки политик и сериализатора маркеров. |
| GetType() |
Возвращает Type текущего экземпляра. (Унаследовано от Object) |
| MemberwiseClone() |
Создает неглубокую копию текущей Object. (Унаследовано от Object) |
| ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |
Явные реализации интерфейса
| Имя | Описание |
|---|---|
| IEndpointBehavior.AddBindingParameters(ServiceEndpoint, BindingParameterCollection) |
Добавляет этот экземпляр этого класса в коллекцию параметров привязки. |
| IEndpointBehavior.ApplyDispatchBehavior(ServiceEndpoint, EndpointDispatcher) |
Реализует изменение или расширение службы в конечной точке. |
| IEndpointBehavior.Validate(ServiceEndpoint) |
Зарезервировано для дальнейшего использования. |