0

我正在研究如下数据合同,该数据合同使用 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; }
    }

    ....
}

提前致谢

4

1 回答 1

0

保护您的服务的方法是限制MaxReceivedMessageSize(默认为 65KB)和绑定中的读者配额。

于 2012-01-16T14:46:55.333 回答