AsymmetricSecurityBindingElement Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Představuje vlastní prvek vazby, který podporuje zabezpečení kanálu pomocí asymetrického šifrování. Tento element 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
- Implementuje
Příklady
Následující příklad ukazuje, jak použít tuto třídu k vytvoření vlastní vazby, která zahrnuje tuto třídu jako prvek 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
Vytvoření souboru BindingElementCollection.
Vytvořte vlastní prvky vazby, které jsou nad tímto prvkem vazby v zásobníku vazeb, například volitelné TransactionFlowBindingElement a ReliableSessionBindingElement.
Přidejte vytvořené elementy v předchozím pořadí do BindingElementCollection metody.InsertItem(Int32, BindingElement)
Vytvořte instanci AsymmetricSecurityBindingElement a přidejte ji do kolekce.
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é u některých vlastností může mít nepředvídatelné účinky: Vazba se může chovat, jako kdyby vlastnost zachovala svou starou hodnotu, přičemž selhání za běhu je jediným indikátorem problému. Dvě vlastnosti, o kterých je známo, že se tímto způsobem chovají, jsou KeyType a MessageSecurityVersion. Mohou existovat další vlastnosti, na které platí.
Konstruktory
| Name | Description |
|---|---|
| AsymmetricSecurityBindingElement() |
Vytvoří instanci této třídy. |
| AsymmetricSecurityBindingElement(SecurityTokenParameters, SecurityTokenParameters) |
Inicializuje novou instanci se zadanými parametry tokenu AsymmetricSecurityBindingElement příjemce a iniciátoru. |
| AsymmetricSecurityBindingElement(SecurityTokenParameters) |
Inicializuje novou instanci AsymmetricSecurityBindingElement se zadanými parametry tokenu příjemce. |
Vlastnosti
| Name | Description |
|---|---|
| AllowInsecureTransport |
Získá nebo nastaví hodnotu, která označuje, zda lze zprávy zabezpečené ve smíšeném režimu 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 zalamová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á urč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 operací podporující parametry tokenu. (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 element 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, zda podpisy zpráv musí být potvrzeny. |
| SecurityHeaderLayout |
Získá nebo nastaví pořadí prvků v hlavičce zabezpečení pro tuto vazbu. (Zděděno od SecurityBindingElement) |
Metody
| Name | Description |
|---|---|
| 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 kanálu soap je továrna 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čuje, zda je zadaný objekt roven 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() |
Získá Type aktuální instance. (Zděděno od Object) |
| MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Object. (Zděděno od Object) |
| SetKeyDerivation(Boolean) |
Nastaví hodnotu, která určuje, jestli jsou odvozené klíče povinné. |
| ToString() |
Vrátí řetězec, který představuje tuto AsymmetricSecurityBindingElement instanci. |
Explicitní implementace rozhraní
| Name | Description |
|---|---|
| IPolicyExportExtension.ExportPolicy(MetadataExporter, PolicyConversionContext) |
Exportuje vlastní kontrolní výraz zásad o vazbách, které se přidají do informací wsDL (Web Services Description Language). |