<behaviorExtensions>

Davranış uzantıları, kullanıcının kullanıcı tanımlı davranış öğeleri oluşturmasını sağlar. Bu öğeler standart Windows Communication Foundation (WCF) davranış öğeleriyle birlikte kullanılabilir. behaviorExtensions bölümü, öğesini yapılandırmada kullanılabilecek şekilde tanımlar. Aşağıda tipik bir davranış uzantısı örneği verilmiştir.

<system.serviceModel>
  <extensions>
    <behaviorExtensions>
      <add name="myBehavior"
           type="Microsoft.ServiceModel.Samples.MyBehaviorSection, MyBehavior,
                 Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" />
    </behaviorExtensions>
  </extensions>
</system.serviceModel>

öğesine yapılandırma yetenekleri eklemek için bir yapılandırma öğesi yazmanız ve kaydetmeniz gerekir. Bu konuda daha fazla bilgi için belgelere System.Configuration bakın.

Öğesi ve yapılandırma türü tanımlandıktan sonra, uzantı aşağıdaki örnekte gösterildiği gibi kullanılabilir.

<behaviors>
  <behavior configurationName="testChannelBehavior">
    <myBehavior />
    <channelSecurity cacheCookies="false"
                     detectReplays="false"
                     maxCachedNonces="9"
                     maxClockSkew="00:00:03"
                     maxCookieCachingTime="00:07:24"
                     replayWindow="00:07:22.2190000" />
  </behavior>
</behaviors>

Güvenlik

ve app.config dosyalarına türleri machine.config kaydederken tam derleme adları kullanmanız kesinlikle önerilir. Tür benzersiz olarak tanımlanmamışsa, CLR türü yükleyicisi bunu belirtilen sırada aşağıdaki konumlarda arar:

Türün derlemesi biliniyorsa, yükleyici yapılandırma dosyasının yeniden yönlendirme konumlarını, GAC'yi, yapılandırma bilgilerini kullanarak geçerli derlemeyi ve uygulama temel dizinini arar. Derleme bilinmiyorsa, yükleyici geçerli derlemeyi, mscorlib'i ve olay işleyicisi TypeResolve tarafından döndürülen konumu arar. Bu CLR arama sırası, Tür İletme mekanizması ve AppDomain.TypeResolve olayı gibi kancalarla değiştirilebilir.

Saldırgan, CLR arama düzeninden yararlanabilir ve yetkisiz kod yürütebilir. Tam (tanımlayıcı) adların kullanılması bir türü benzersiz olarak tanımlar ve sisteminizin güvenliğini daha da artırır.

Daha fazla bilgi için bkz. Çalışma Zamanı Derlemeleri Nasıl Bulur ve TypeResolve.

Ayrıca bkz.