Aracılığıyla paylaş


Nasıl yapılır: Yerel Yayımlayan Yapılandırma

Bu konuda, bir istemcinin verilen belirteçler için yerel vereni kullanacak şekilde nasıl yapılandırıldığı açıklanmaktadır.

Genellikle, bir istemci federasyon hizmetiyle iletişim kurarken hizmet, istemcinin federasyon hizmetinde kimliğini doğrulamak için kullanacağı belirteci vermesi beklenen güvenlik belirteci hizmetinin adresini belirtir. Bazı durumlarda, istemci yerel vereni kullanacak şekilde yapılandırılabilir.

Windows Communication Foundation (WCF), federasyon bağlamasının http://schemas.microsoft.com/2005/12/ServiceModel/Addressing/Anonymous veren adresinin veya nullolduğu durumlarda yerel bir veren kullanır. Böyle durumlarda, yerel verenin adresiyle ve bu verenle iletişim kurmak için kullanılacak bağlama ile öğesini yapılandırmanız ClientCredentials gerekir.

Not

SupportInteractive sınıfının özelliği ClientCredentials olarak trueayarlanırsa, yerel bir veren adresi belirtilmez ve wsFederationHttpBinding> veya diğer federasyon bağlaması http://schemas.xmlsoap.org/ws/2005/05/identity/issuer/selftarafından <belirtilen veren adresi , http://schemas.microsoft.com/2005/12/ServiceModel/Addressing/Anonymousveya isenull, Windows CardSpace veren kullanılır.

Yerel vereni kodda yapılandırmak için

  1. Türünde bir değişken oluşturma IssuedTokenClientCredential

  2. değişkenini sınıfının özelliğinden IssuedTokenClientCredentials döndürülen örneğe ayarlayın. Bu örnek, istemcinin ClientCredentials özelliği (öğesinden ClientBase<TChannel>devralınır) veya Credentials özelliği ChannelFactorytarafından döndürülür:

    IssuedTokenClientCredential itcc = client.ClientCredentials.IssuedToken;
    
    Dim itcc As IssuedTokenClientCredential = client.ClientCredentials.IssuedToken
    
  3. LocalIssuerAddress özelliğini, yerel verenin EndpointAddressadresini oluşturucunun bağımsız değişkeni olarak içeren yeni bir örneğine ayarlayın.

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

    Alternatif olarak, oluşturucuya bağımsız değişken olarak yeni Uri bir örnek oluşturun.

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

    addressHeaders parametresi, gösterildiği gibi bir örnek dizisidirAddressHeader.

    itcc.LocalIssuerAddress = new EndpointAddress(
        new Uri("http://fabrikam.com/sts"),
        EndpointIdentity.CreateDnsIdentity("fabrikam.com"),
        addressHeaders);
    
    itcc.LocalIssuerAddress = New EndpointAddress(New Uri("http://fabrikam.com/sts"), _
    EndpointIdentity.CreateDnsIdentity("fabrikam.com"), addressHeaders)
    
  4. özelliğini kullanarak yerel veren için bağlamayı LocalIssuerBinding ayarlayın.

    itcc.LocalIssuerBinding = new WSHttpBinding("LocalIssuerBinding");
    
    itcc.LocalIssuerBinding = New WSHttpBinding("LocalIssuerBinding")
    
  5. isteğe bağlı. Özelliği tarafından LocalIssuerChannelBehaviors döndürülen koleksiyona bu tür davranışları ekleyerek yerel veren için yapılandırılmış uç nokta davranışları ekleyin.

    itcc.LocalIssuerChannelBehaviors.Add(myEndpointBehavior);
    
    itcc.LocalIssuerChannelBehaviors.Add(myEndpointBehavior)
    

Yapılandırmada yerel vereni yapılandırmak için

  1. Bir uç nokta davranışında clientCredentials öğesinin< alt öğesi olan issuedToken> öğesinin< alt öğesi olarak bir localIssuer>> öğesi oluşturun.<

  2. özniteliğini address belirteç isteklerini kabul edecek yerel verenin adresine ayarlayın.

  3. binding ve bindingConfiguration özniteliklerini, yerel veren uç noktasıyla iletişim kurarken kullanılacak uygun bağlamaya başvuran değerlere ayarlayın.

  4. isteğe bağlı. <identity> öğesini öğesinin <localIssuer> alt öğesi olarak ayarlayın ve yerel veren için kimlik bilgilerini belirtin.

  5. isteğe bağlı. headers> öğesini öğenin alt <localIssuer> öğesi olarak ayarlayın ve yerel vereni doğru şekilde ele almak için gereken ek üst bilgileri belirtin.<

.NET Framework Güvenliği

Verilen bir bağlama için bir veren adresi ve bağlama belirtilirse, yerel verenin bu bağlamayı kullanan uç noktalar için kullanılmadığını unutmayın. Her zaman yerel vereni kullanmayı bekleyen istemciler, böyle bir bağlama kullanmadığından veya bağlayıcıyı veren adresi olacak nullşekilde değiştirdiklerinden emin olmalıdır.

Ayrıca bkz.