Share via


AsymmetricSecurityBindingElement Sınıf

Tanım

Asimetrik şifreleme kullanarak kanal güvenliğini destekleyen özel bir bağlama öğesini temsil eder. Bu bağlama öğesi, gönderenin kimlik doğrulama belirtecini kullanarak iletiyi imzalar ve alıcının belirtecini kullanarak iletiyi şifreler.

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
Devralma
AsymmetricSecurityBindingElement
Uygulamalar

Örnekler

Aşağıdaki örnekte, bu sınıfı güvenlik bağlama öğesi olarak içeren bir özel bağlama oluşturmak için bu sınıfın nasıl kullanılacağı gösterilmektedir. Bu örnekteki kod hakkında daha fazla bilgi için bkz . Nasıl yapılır: X.509 Sertifikalarına Tutarlı Olarak Başvurma.

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

Açıklamalar

Özel bağlama, belirli bir sırada düzenlenmiş bağlama öğeleri koleksiyonunu içerir: bağlama yığınının üst kısmını temsil eden öğe önce eklenir, sonraki öğe bağlama yığınında aşağı eklenir, ikinci eklenir vb.

Bu sınıfı bağlamaya eklemek için

  1. oluşturun BindingElementCollection.

  2. Bağlama yığınında bu bağlama öğesinin üzerinde olan isteğe bağlı TransactionFlowBindingElement ve ReliableSessionBindingElementgibi özel bağlama öğeleri oluşturun.

  3. yöntemini kullanarak InsertItem(Int32, BindingElement) yukarıdaki sırayla oluşturulan öğeleri öğesine BindingElementCollection ekleyin.

  4. örneğini AsymmetricSecurityBindingElement oluşturun ve koleksiyona ekleyin.

  5. Koleksiyonuna gibi TcpTransportBindingElementek özel bağlama öğeleri ekleyin.

Bu sınıfı kullanmadan önce standart bağlamanın güvenlik gereksinimlerinizi karşılayıp karşılamadığını belirlemeniz gerekir.

Not

Bu nesnenin bir örneği oluşturulduktan sonra, temel sınıfının SecurityBindingElement özelliklerini sabit olarak değerlendirmeniz gerekir. Bazı özelliklerde küme çağrısının öngörülemeyen etkileri olabilir: Bağlama, özelliğin eski değerini korumuş gibi davranması ve çalışma zamanı hatasının sorunun tek göstergesi olması olabilir. Bu şekilde davranan iki özellik ve MessageSecurityVersionşeklindedirKeyType. Bunun doğru olduğu başka özellikler de olabilir.

Oluşturucular

AsymmetricSecurityBindingElement()

Bu sınıfın bir örneğini oluşturur.

AsymmetricSecurityBindingElement(SecurityTokenParameters)

Belirtilen alıcı belirteci parametreleriyle yeni bir örneği AsymmetricSecurityBindingElement başlatır.

AsymmetricSecurityBindingElement(SecurityTokenParameters, SecurityTokenParameters)

Belirtilen alıcı ve başlatıcı belirteci parametreleriyle yeni bir örneği AsymmetricSecurityBindingElement başlatır.

Özellikler

AllowInsecureTransport

Karma mod güvenli iletilerin HTTP gibi güvenli olmayan bir aktarım üzerinden gönderilip gönderilemeyeceğini belirten bir değer alır veya ayarlar.

(Devralındığı yer: SecurityBindingElement)
AllowSerializedSigningTokenOnReply

Bir yanıt iletisinde imzalama belirtecini serileştirmeye izin verilip verilmeyeceğini belirten bir değer alır veya ayarlar.

DefaultAlgorithmSuite

İleti şifrelemesini ve anahtar sarmalama algoritmalarını alır veya ayarlar.

(Devralındığı yer: SecurityBindingElement)
EnableUnsecuredResponse

WCF'nin güvenli isteklere güvenli olmayan yanıtlar gönderip gönderip alamayacağını gösteren bir değer alır veya ayarlar.

(Devralındığı yer: SecurityBindingElement)
EndpointSupportingTokenParameters

Belirteç parametrelerini destekleyen uç noktayı alır.

(Devralındığı yer: SecurityBindingElement)
IncludeTimestamp

Zaman damgalarının her iletiye eklenip eklenmediğini belirten bir değer alır veya ayarlar.

(Devralındığı yer: SecurityBindingElement)
InitiatorTokenParameters

Başlatıcı için belirteç tanımını belirtir.

KeyEntropyMode

Anahtar oluşturmak için kullanılan entropi kaynağını alır veya ayarlar.

(Devralındığı yer: SecurityBindingElement)
LocalClientSettings

İstemci tarafından kullanılan yerel güvenlik ayarlarına özgü bağlama özelliklerini alır.

(Devralındığı yer: SecurityBindingElement)
LocalServiceSettings

Hizmet tarafından kullanılan yerel güvenlik ayarlarına özgü bağlama özelliklerini alır.

(Devralındığı yer: SecurityBindingElement)
MessageProtectionOrder

Bu bağlama için ileti şifreleme ve imzalama sırasını alır veya ayarlar.

MessageSecurityVersion

İleti güvenlik sürümünü alır veya ayarlar.

(Devralındığı yer: SecurityBindingElement)
OperationSupportingTokenParameters

Belirteç parametrelerini destekleyen işlem koleksiyonunu alır.

(Devralındığı yer: SecurityBindingElement)
OptionalEndpointSupportingTokenParameters

Hizmet uç noktası için isteğe bağlı destekleyici belirteç parametrelerini alır.

(Devralındığı yer: SecurityBindingElement)
OptionalOperationSupportingTokenParameters

Belirteç parametrelerini destekleyen isteğe bağlı işlem koleksiyonunu alır.

(Devralındığı yer: SecurityBindingElement)
ProtectTokens

Güvenlik bağlama öğesinin belirteçleri koruyup korumadığını alır veya ayarlar.

(Devralındığı yer: SecurityBindingElement)
RecipientTokenParameters

Alıcı için belirteç tanımını belirtir.

RequireSignatureConfirmation

İleti imzalarının onaylanması gerekip gerekmediğini belirten bir değer alır veya ayarlar.

SecurityHeaderLayout

Bu bağlama için güvenlik üst bilgisindeki öğelerin sırasını alır veya ayarlar.

(Devralındığı yer: SecurityBindingElement)

Yöntemler

BuildChannelFactory<TChannel>(BindingContext)

Geçirilen ayarlara ve bağlama bağlamını SecurityBindingElement temel alan bir kanal fabrikası oluşturur. Oluşturulan kanal fabrikası, bağlama bağlamını (taşıma kanalı fabrikasını içeren) karşılık gelen kanal fabrikasına dahili olarak başvuruda bulunan bir SOAP iletisi güvenlik kanalı fabrikasıdır.

(Devralındığı yer: SecurityBindingElement)
BuildChannelFactoryCore<TChannel>(BindingContext)

Uygulandığında, belirtilen türde bir kanal fabrikası oluşturur.

(Devralındığı yer: SecurityBindingElement)
BuildChannelListener<TChannel>(BindingContext)

Geçirilen ayarlara ve bağlama bağlamını SecurityBindingElement temel alan bir kanal dinleyicisi oluşturur.

(Devralındığı yer: SecurityBindingElement)
BuildChannelListenerCore<TChannel>(BindingContext)

Uygulandığında, belirtilen türde bir kanal dinleyicisi oluşturur.

(Devralındığı yer: SecurityBindingElement)
CanBuildChannelFactory<TChannel>(BindingContext)

Belirtilen türdeki bir kanal fabrikasının oluşturulup oluşturulamayacağını belirler.

(Devralındığı yer: SecurityBindingElement)
CanBuildChannelListener<TChannel>(BindingContext)

Belirtilen türdeki bir kanal dinleyicisinin oluşturulup oluşturulamayacağını belirler.

(Devralındığı yer: SecurityBindingElement)
Clone()

Bu sınıfın geçerli olandan başlatılan yeni bir örneğini oluşturur.

Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetProperty<T>(BindingContext)

öğesinden BindingContextbelirtilen nesneyi alır.

GetType()

Type Geçerli örneğini alır.

(Devralındığı yer: Object)
MemberwiseClone()

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

(Devralındığı yer: Object)
SetKeyDerivation(Boolean)

Türetilmiş anahtarların gerekli olup olmadığını gösteren bir değer ayarlar.

ToString()

Bu AsymmetricSecurityBindingElement örneği temsil eden bir dize döndürür.

Belirtik Arabirim Kullanımları

IPolicyExportExtension.ExportPolicy(MetadataExporter, PolicyConversionContext)

Web Hizmetleri Açıklama Dili (WSDL) bilgilerine eklenen bağlamalar hakkında özel bir ilke onayını dışarı aktarır.

Şunlara uygulanır