Cómo: Especificar el tipo de credencial de cliente

Después de establecer un modo de seguridad (ya sea transporte o mensaje), tiene la opción de establecer el tipo de credencial de cliente. Esta propiedad especifica qué tipo de credencial debe proporcionar el cliente al servicio para su autenticación. Para obtener más información sobre establecer el modo de seguridad (un paso necesario antes de definir el tipo de credencial de cliente), vea Cómo: Establecer el modo de seguridad.

Para establecer el tipo de credencial de cliente en el código

  1. Cree una instancia del enlace que el servicio va a usar. En el ejemplo siguiente se utiliza el enlace WSHttpBinding.

  2. Establezca la propiedad Mode en un valor adecuado. Este ejemplo utiliza el modo de mensaje.

  3. Establezca la propiedad ClientCredentialType en un valor apropiado. Este ejemplo establece el uso de la autenticación de Windows (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
    
    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;
    

Para establecer el tipo de credencial en la configuración

  1. Agregue un elemento <system.ServiceModel> al archivo de configuración.

  2. Como elemento secundario, añada un elemento <bindings>.

  3. Agregue un enlace adecuado. En el ejemplo siguiente se utiliza el elemento <wsHttpBinding>.

  4. Agregue un elemento <binding> y establezca el atributo name en un valor adecuado. Este ejemplo utiliza el nombre "SecureBinding".

  5. Agregue un enlace <security>. Establezca el atributo mode en un valor adecuado. Este ejemplo lo define en "Message".

  6. Agregue un elemento <message><transport> o , tal y como se haya determinado en el modo de seguridad. Establezca el atributo clientCredentialType en un valor adecuado. Este ejemplo utiliza "Windows".

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

Vea también

Tareas

Cómo: Establecer el modo de seguridad

Conceptos

Seguridad de servicios