Exportar (0) Imprimir
Expandir todo
Este artículo se tradujo de forma manual. Mueva el puntero sobre las frases del artículo para ver el texto original. Más información.
Traducción
Original

Cómo: Configurar un emisor local

En este tema se describe cómo configurar un cliente para utilizar un emisor local para los tokens emitidos.

A menudo, cuando un cliente se comunica con un servicio federado, el servicio especifica la dirección del servicio de token de seguridad que se espera que emita el token y que el cliente utilizará para autenticarse con el servicio federado. En algunas situaciones, el cliente se puede configurar para utilizar un emisor local.

Windows Communication Foundation (WCF) utiliza un emisor local en casos donde la dirección del emisor de un enlace federado sea http://schemas.microsoft.com/2005/12/ServiceModel/Addressing/Anonymous o null. En casos como éste, debe configurar ClientCredentials con la dirección del emisor local y el enlace que se va a utilizar para comunicarse con ese emisor.

Nota Nota

Si la propiedad SupportInteractive de la clase ClientCredentials está establecida en true, no se especifica una dirección del emisor local y la dirección del emisor especificada por <wsFederationHttpBinding> u otro enlace federado es http://schemas.xmlsoap.org/ws/2005/05/identity/issuer/self, http://schemas.microsoft.com/2005/12/ServiceModel/Addressing/Anonymous, o es null, a continuación, se usará el emisor CardSpace de Windows.

Para configurar el emisor local en código

  1. Cree una variable de tipo IssuedTokenClientCredential

  2. Establezca la variable en la instancia devuelta de la propiedad IssuedToken de la clase ClientCredentials. Esa instancia es devuelta por la propiedad ClientCredentials del cliente (heredada de ClientBase<TChannel>) o la propiedad Credentials de ChannelFactory:

    
    IssuedTokenClientCredential itcc = client.ClientCredentials.IssuedToken;
    
    
    
  3. Establezca la propiedad LocalIssuerAddress en una nueva instancia de EndpointAddress, con la dirección del emisor local como un argumento para el constructor.

    
    itcc.LocalIssuerAddress = new EndpointAddress("http://fabrikam.com/sts");
    
    
    

    De manera alternativa, cree una nueva instancia Uri como un argumento para el constructor.

    
    itcc.LocalIssuerAddress = new EndpointAddress(new Uri("http://fabrikam.com/sts"),
        addressHeaders);
    
    
    

    El parámetro addressHeaders es una matriz de instancias de AddressHeader, tal como se muestra.

    
    itcc.LocalIssuerAddress = new EndpointAddress(
        new Uri("http://fabrikam.com/sts"),
        EndpointIdentity.CreateDnsIdentity("fabrikam.com"),
        addressHeaders);
    
    
    
  4. Establezca el enlace para el emisor local utilizando la propiedad LocalIssuerBinding.

    
    itcc.LocalIssuerBinding = new WSHttpBinding("LocalIssuerBinding");
    
    
    
  5. Opcional. Agregue los comportamientos del extremo configurados para el emisor local agregando tales comportamientos a la colección devuelta por la propiedad LocalIssuerChannelBehaviors.

    
    itcc.LocalIssuerChannelBehaviors.Add(myEndpointBehavior);
    
    
    

Para configurar el emisor local en la configuración

  1. Cree un elemento <localIssuer><issuedToken><clientCredentials>, que es a su vez un elemento secundario del elemento en un comportamiento del extremo.

  2. Establezca el atributo address en la dirección del emisor local que aceptará las solicitudes del token.

  3. Establezca los atributos bindingConfiguration y binding en valores que hacen referencia al enlace adecuado que se debe usar cuando se comunica con el extremo del emisor local.

  4. Opcional. Establezca el elemento <identity>< como elemento secundario del elemento localIssuer> y especifique la información de identidad para el emisor local.

  5. Opcional. Establezca el elemento <headers>< como elemento secundario del elemento localIssuer> y especifique los encabezados adicionales que son necesarios para dirigirse correctamente al emisor local.

Tenga en cuenta que si se especifica una dirección y un enlace del emisor para un enlace determinado, el emisor local no se utiliza para los extremos que utilizan ese enlace. Los clientes que siempre esperan utilizar el emisor local deberían asegurarse de que no utilizan este enlace o que modifican el enlace de manera que la dirección del emisor sea null.

Adiciones de comunidad

AGREGAR
Mostrar:
© 2015 Microsoft