Udostępnij za pośrednictwem


Instrukcje: Konfigurowanie lokalnego wystawcy

W tym temacie opisano sposób konfigurowania klienta pod kątem używania wystawcy lokalnego dla wystawionych tokenów.

Często, gdy klient komunikuje się z usługą federacyjną, usługa określa adres usługi tokenu zabezpieczającego, która ma wystawiać token, który będzie używany przez klienta do uwierzytelniania się w usłudze federacyjnej. W niektórych sytuacjach klient może być skonfigurowany do używania lokalnego wystawcy.

Program Windows Communication Foundation (WCF) używa lokalnego wystawcy w przypadkach, gdy adres wystawcy powiązania federacyjnego to http://schemas.microsoft.com/2005/12/ServiceModel/Addressing/Anonymous lub null. W takich przypadkach należy skonfigurować ClientCredentials element z adresem lokalnego wystawcy i powiązaniem, które będzie używane do komunikowania się z tym wystawcą.

Uwaga

Jeśli właściwość ClientCredentials klasy jest ustawiona na true, lokalny adres wystawcy nie jest określony, a adres wystawcy określony przez< wsFederationHttpBinding> lub inne powiązanie federacyjne to http://schemas.xmlsoap.org/ws/2005/05/identity/issuer/self, http://schemas.microsoft.com/2005/12/ServiceModel/Addressing/Anonymouslub jest null, jest używany wystawca Windows CardSpace.SupportInteractive

Aby skonfigurować wystawcę lokalnego w kodzie

  1. Tworzenie zmiennej typu IssuedTokenClientCredential

  2. Ustaw zmienną na wystąpienie zwrócone z IssuedToken właściwości ClientCredentials klasy. To wystąpienie jest zwracane przez ClientCredentials właściwość klienta (dziedziczone z ClientBase<TChannel>klasy ) lub Credentials właściwość elementu ChannelFactory:

    IssuedTokenClientCredential itcc = client.ClientCredentials.IssuedToken;
    
    Dim itcc As IssuedTokenClientCredential = client.ClientCredentials.IssuedToken
    
  3. LocalIssuerAddress Ustaw właściwość na nowe wystąpienie EndpointAddressklasy , z adresem lokalnego wystawcy jako argumentem konstruktora.

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

    Alternatywnie utwórz nowe Uri wystąpienie jako argument konstruktora.

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

    Parametr addressHeaders jest tablicą AddressHeader wystąpień, jak pokazano.

    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. Ustaw powiązanie dla wystawcy lokalnego LocalIssuerBinding przy użyciu właściwości .

    itcc.LocalIssuerBinding = new WSHttpBinding("LocalIssuerBinding");
    
    itcc.LocalIssuerBinding = New WSHttpBinding("LocalIssuerBinding")
    
  5. Opcjonalny. Dodaj skonfigurowane zachowania punktu końcowego dla lokalnego wystawcy, dodając takie zachowania do kolekcji zwróconej LocalIssuerChannelBehaviors przez właściwość .

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

Aby skonfigurować lokalnego wystawcę w konfiguracji

  1. Utwórz element localIssuer> jako element podrzędny <elementu issuedToken>, który jest samym elementem podrzędnym< elementu clientCredentials> w zachowaniu punktu końcowego.<

  2. address Ustaw atrybut na adres lokalnego wystawcy, który będzie akceptować żądania tokenu.

  3. binding Ustaw atrybuty i bindingConfiguration na wartości odwołujące się do odpowiedniego powiązania, które mają być używane podczas komunikacji z lokalnym punktem końcowym wystawcy.

  4. Opcjonalny. <Ustaw element tożsamości> jako element podrzędny elementu i określ informacje o tożsamości dla lokalnego <localIssuer> wystawcy.

  5. Opcjonalny. <Ustaw element nagłówków jako element podrzędny <localIssuer> elementu i określ dodatkowe nagłówki>, które są wymagane w celu poprawnego adresowania lokalnego wystawcy.

Zabezpieczenia.NET Framework

Należy pamiętać, że jeśli dla danego powiązania określono adres wystawcy i powiązanie, lokalny wystawca nie jest używany dla punktów końcowych korzystających z tego powiązania. Klienci, którzy oczekują, że zawsze korzystają z wystawcy lokalnego, powinni upewnić się, że nie używają takiego powiązania lub że modyfikują powiązanie tak, aby adres wystawcy to null.

Zobacz też