Sdílet prostřednictvím


AsymmetricSecurityBindingElement Třída

Definice

Představuje vlastní prvek vazby, který podporuje zabezpečení kanálu pomocí asymetrického šifrování. Tento prvek vazby podepíše zprávu pomocí ověřovacího tokenu odesílatele a zašifruje zprávu pomocí tokenu příjemce.

public ref class AsymmetricSecurityBindingElement sealed : System::ServiceModel::Channels::SecurityBindingElement, System::ServiceModel::Description::IPolicyExportExtension
public sealed class AsymmetricSecurityBindingElement : System.ServiceModel.Channels.SecurityBindingElement, System.ServiceModel.Description.IPolicyExportExtension
type AsymmetricSecurityBindingElement = class
    inherit SecurityBindingElement
    interface IPolicyExportExtension
Public NotInheritable Class AsymmetricSecurityBindingElement
Inherits SecurityBindingElement
Implements IPolicyExportExtension
Dědičnost
AsymmetricSecurityBindingElement
Implementuje

Příklady

Následující příklad ukazuje, jak tuto třídu použít k vytvoření vlastní vazby, která zahrnuje tuto třídu jako element vazby zabezpečení. Další informace o kódu v tomto příkladu naleznete v tématu Postupy: Konzistentně odkazovat na certifikáty X.509.

public Binding CreateClientBinding()
{
    AsymmetricSecurityBindingElement abe =
        (AsymmetricSecurityBindingElement)SecurityBindingElement.
        CreateMutualCertificateBindingElement(
        MessageSecurityVersion.
        WSSecurity10WSTrustFebruary2005WSSecureConversationFebruary2005WSSecurityPolicy11BasicSecurityProfile10);

    abe.SetKeyDerivation(false);

    X509SecurityTokenParameters istp =
       abe.InitiatorTokenParameters as X509SecurityTokenParameters;
    if (istp != null)
    {
        istp.X509ReferenceStyle =
        X509KeyIdentifierClauseType.IssuerSerial;
    }
    X509SecurityTokenParameters rstp =
    abe.RecipientTokenParameters as X509SecurityTokenParameters;
    if (rstp != null)
    {
        rstp.X509ReferenceStyle =
        X509KeyIdentifierClauseType.IssuerSerial;
    }

    HttpTransportBindingElement transport =
        new HttpTransportBindingElement();

    return new CustomBinding(abe, transport);
}
Public Function CreateClientBinding() As Binding
    Dim abe As AsymmetricSecurityBindingElement = CType(SecurityBindingElement.CreateMutualCertificateBindingElement(MessageSecurityVersion.WSSecurity10WSTrustFebruary2005WSSecureConversationFebruary2005WSSecurityPolicy11BasicSecurityProfile10), AsymmetricSecurityBindingElement)

    abe.SetKeyDerivation(False)

    Dim istp As X509SecurityTokenParameters = TryCast(abe.InitiatorTokenParameters, X509SecurityTokenParameters)
    If istp IsNot Nothing Then
        istp.X509ReferenceStyle = X509KeyIdentifierClauseType.IssuerSerial
    End If
    Dim rstp As X509SecurityTokenParameters = TryCast(abe.RecipientTokenParameters, X509SecurityTokenParameters)
    If rstp IsNot Nothing Then
        rstp.X509ReferenceStyle = X509KeyIdentifierClauseType.IssuerSerial
    End If

    Dim transport As New HttpTransportBindingElement()

    Return New CustomBinding(abe, transport)
End Function

Poznámky

Vlastní vazba obsahuje kolekci prvků vazby uspořádaných v určitém pořadí: element, který představuje začátek zásobníku vazeb, je přidán jako první, další prvek dolů v zásobníku vazeb, je přidán druhý a tak dále.

Přidání této třídy do vazby

  1. BindingElementCollectionVytvořit .

  2. Vytvořte vlastní prvky vazby, které jsou nad tímto prvkem vazby v zásobníku vazeb, například volitelné TransactionFlowBindingElement a ReliableSessionBindingElement.

  3. Přidejte vytvořené prvky v předchozím pořadí do BindingElementCollection metody.InsertItem(Int32, BindingElement)

  4. Vytvořte instanci AsymmetricSecurityBindingElement a přidejte ji do kolekce.

  5. Přidejte do kolekce všechny další vlastní prvky vazby, například TcpTransportBindingElement.

Před použitím této třídy byste měli určit, jestli standardní vazba splňuje vaše požadavky na zabezpečení.

Poznámka

Po vytvoření instance tohoto objektu byste měli zacházet s vlastnostmi její základní třídy SecurityBindingElement jako neměnné. Volání nastavené na některé vlastnosti může mít nepředvídatelné účinky: Vazba se může chovat, jako by vlastnost zachovala svou starou hodnotu, přičemž selhání za běhu je jediným příznakem problému. Dvě vlastnosti, které se mají chovat tímto způsobem, jsou KeyType a MessageSecurityVersion. Mohou existovat další vlastnosti, na které platí.

Konstruktory

AsymmetricSecurityBindingElement()

Vytvoří instanci této třídy.

AsymmetricSecurityBindingElement(SecurityTokenParameters)

Inicializuje novou instanci AsymmetricSecurityBindingElement s zadanými parametry tokenu příjemce.

AsymmetricSecurityBindingElement(SecurityTokenParameters, SecurityTokenParameters)

Inicializuje novou instanci se zadanými parametry tokenu AsymmetricSecurityBindingElement příjemce a iniciátoru.

Vlastnosti

AllowInsecureTransport

Získá nebo nastaví hodnotu, která označuje, zda lze zprávy zabezpečené smíšeným režimem odesílat přes nezabezpečený přenos, jako je HTTP.

(Zděděno od SecurityBindingElement)
AllowSerializedSigningTokenOnReply

Získá nebo nastaví hodnotu, která označuje, zda serializace podpisového tokenu ve zprávě odpovědi je povolena.

DefaultAlgorithmSuite

Získá nebo nastaví šifrování zpráv a algoritmy obtékání klíčů.

(Zděděno od SecurityBindingElement)
EnableUnsecuredResponse

Získá nebo nastaví hodnotu, která označuje, zda WCF může odesílat a přijímat nezabezpečené odpovědi na zabezpečené požadavky.

(Zděděno od SecurityBindingElement)
EndpointSupportingTokenParameters

Získá koncový bod, který podporuje parametry tokenu.

(Zděděno od SecurityBindingElement)
IncludeTimestamp

Získá nebo nastaví hodnotu, která označuje, zda jsou časové razítka zahrnuta do každé zprávy.

(Zděděno od SecurityBindingElement)
InitiatorTokenParameters

Určuje definici tokenu pro iniciátora.

KeyEntropyMode

Získá nebo nastaví zdroj entropie použité k vytvoření klíčů.

(Zděděno od SecurityBindingElement)
LocalClientSettings

Získá vlastnosti vazby specifické pro místní nastavení zabezpečení používané klientem.

(Zděděno od SecurityBindingElement)
LocalServiceSettings

Získá vlastnosti vazby specifické pro místní nastavení zabezpečení používané službou.

(Zděděno od SecurityBindingElement)
MessageProtectionOrder

Získá nebo nastaví pořadí šifrování zpráv a podepisování pro tuto vazbu.

MessageSecurityVersion

Získá nebo nastaví verzi zabezpečení zprávy.

(Zděděno od SecurityBindingElement)
OperationSupportingTokenParameters

Získá kolekci parametrů podpůrných tokenů operace.

(Zděděno od SecurityBindingElement)
OptionalEndpointSupportingTokenParameters

Získá volitelné parametry podpůrného tokenu pro koncový bod služby.

(Zděděno od SecurityBindingElement)
OptionalOperationSupportingTokenParameters

Získá kolekci volitelných operací podporujících parametry tokenu.

(Zděděno od SecurityBindingElement)
ProtectTokens

Získá nebo nastaví, zda prvek vazby zabezpečení chrání tokeny.

(Zděděno od SecurityBindingElement)
RecipientTokenParameters

Určuje definici tokenu pro příjemce.

RequireSignatureConfirmation

Získá nebo nastaví hodnotu, která označuje, jestli se podpisy zpráv musí potvrdit.

SecurityHeaderLayout

Získá nebo nastaví pořadí prvků v hlavičce zabezpečení pro tuto vazbu.

(Zděděno od SecurityBindingElement)

Metody

BuildChannelFactory<TChannel>(BindingContext)

Vytvoří objekt pro vytváření kanálů na SecurityBindingElement základě nastavení a kontextu vazby předaného. Vytvořená továrna kanálu je objekt pro zabezpečení zpráv SOAP, který interně obsahuje odkaz na objekt pro vytváření kanálů, který odpovídá kontextu vazby (který zahrnuje továrnu přenosového kanálu).

(Zděděno od SecurityBindingElement)
BuildChannelFactoryCore<TChannel>(BindingContext)

Při implementaci vytvoří objekt pro vytváření kanálů zadaného typu.

(Zděděno od SecurityBindingElement)
BuildChannelListener<TChannel>(BindingContext)

Vytvoří naslouchací proces kanálu na SecurityBindingElement základě nastavení a kontextu vazby předaného.

(Zděděno od SecurityBindingElement)
BuildChannelListenerCore<TChannel>(BindingContext)

Při implementaci vytvoří naslouchací proces kanálu zadaného typu.

(Zděděno od SecurityBindingElement)
CanBuildChannelFactory<TChannel>(BindingContext)

Určuje, zda lze sestavit objekt pro vytváření kanálů zadaného typu.

(Zděděno od SecurityBindingElement)
CanBuildChannelListener<TChannel>(BindingContext)

Určuje, zda lze sestavit naslouchací proces kanálu zadaného typu.

(Zděděno od SecurityBindingElement)
Clone()

Vytvoří novou instanci této třídy inicializované z aktuální instance.

Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.

(Zděděno od Object)
GetHashCode()

Slouží jako výchozí funkce hash.

(Zděděno od Object)
GetProperty<T>(BindingContext)

Získá zadaný objekt z objektu BindingContext.

GetType()

Type Získá aktuální instanci.

(Zděděno od Object)
MemberwiseClone()

Vytvoří použádnou kopii aktuálního souboru Object.

(Zděděno od Object)
SetKeyDerivation(Boolean)

Nastaví hodnotu, která označuje, jestli jsou odvozené klíče povinné.

ToString()

Vrátí řetězec, který představuje tuto AsymmetricSecurityBindingElement instanci.

Explicitní implementace rozhraní

IPolicyExportExtension.ExportPolicy(MetadataExporter, PolicyConversionContext)

Exportuje vlastní kontrolní výraz zásad o vazbách, který se přidá do informací wsDL (Web Services Description Language).

Platí pro