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

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

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

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

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

  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>  
    

См. также