2012-01-16 4 views
0

Я работаю над datacontract следующим образом, который использует IExtensiblesDataObject, чтобы сделать его совместимым с версией 02 этого контракта, но я беспокоюсь о возможном «случайном» отказе в обслуживании через клиентов, передающих чрезмерные количества данных через провод, который необходимо де-сериализовать, повторно сериализовать и отправить обратно.Атаки с данными об обмене данными и событиями, связанными со службой обслуживания

Не поворачивая опору через ignoreExtensionDataObject в файле конфигурации, существует ли способ защиты от такой возможности, то есть вы можете каким-то образом ограничить количество?

[DataContract(Namespace="http://schemas.myComany.com/sample/01")] 
public class Sample : IExtensibleDataObject 
{ 
    [DataMember] 
    public int32 sample_ID; 

    private ExtensionDataObject _data; 
    public virtual ExtensionDataObject ExtensionData 
    { 
     get { return _data; } 
     set { _data = value; } 
    } 

    .... 
} 

Заранее спасибо

ответ

0

пути к защите вашей службы ограничивает MaxReceivedMessageSize (по умолчанию это 65KB) и квоты чтения в вашем переплете.