Практическое руководство. Указание типа учетных данных клиента

После установки режима безопасности (транспорта или сообщения) можно задать тип учетных данных клиента. Это свойство указывает тип учетных данных, которые клиент должен предоставить службе для проверки подлинности. Дополнительные сведения о настройке режима безопасности (необходимого шага перед настройкой типа учетных данных клиента) см. в статье "Настройка режима безопасности".

Установка типа учетных данных клиента в коде

  1. Создайте экземпляр привязки, которую будет использовать служба. В этом примере используется привязка WSHttpBinding .

  2. Mode Задайте для свойства соответствующее значение. В этом примере используется режим сообщения.

  3. ClientCredentialType Задайте для свойства соответствующее значение. В этом примере устанавливается использование аутентификации Windows (Windows).

    ServiceHost myServiceHost = new ServiceHost(typeof(CalculatorService));
    // Create a binding to use.
    WSHttpBinding binding = new WSHttpBinding();
    binding.Security.Mode = SecurityMode.Message;
    binding.Security.Message.ClientCredentialType =
        MessageCredentialType.Windows;
    
    Dim myServiceHost As New ServiceHost(GetType(CalculatorService))
    ' Create a binding to use.
    Dim binding As New WSHttpBinding()
    binding.Security.Mode = SecurityMode.Message
    binding.Security.Message.ClientCredentialType = _
    MessageCredentialType.Windows
    

Настройка типа учетных данных клиента в конфигурации

  1. <Добавьте элемент system.serviceModel> в файл конфигурации.

  2. В качестве дочернего элемента добавьте элемент bindings<.>

  3. Добавьте соответствующую привязку. В этом примере используется <элемент wsHttpBinding> .

  4. <Добавьте элемент привязки> и задайте name атрибут соответствующим значением. В этом примере используется имя SecureBinding.

  5. Добавьте привязку <security> . Задайте для атрибута mode соответствующее значение. Этот пример задает значение "Message".

  6. Добавьте элемент <message> или <transport>, в зависимости от режима безопасности. Задайте для атрибута clientCredentialType соответствующее значение. В этом примере используется "Windows".

    <system.serviceModel>
      <bindings>
        <wsHttpBinding>
          <binding name="SecureBinding">
            <security mode="Message">
                 <message clientCredentialType="Windows" />
             </security>
          </binding>
        </wsHttpBinding>
      </bindings>
    </system.serviceModel>
    

См. также