最近安全团队询问是否可以更改WCF服务中反序列化问题返回的消息。有问题的错误是他们拦截了消息并传递了一个超出Int32范围的整数。
无法将值“2147483649”解析为“Int32”类型。
我的回答是反序列化过程发生在执行我的一行服务之前,而且不可能。但是,是否有可能实现这一目标?
答案 0 :(得分:4)
听起来你有includeExceptionDetailInFaults =“true”。 True是在执行生产部署之前应设置为false的默认值。一旦这是错误的,您将收到一般错误消息。这应该足以让安全感到高兴。
更好的选择是实施IErrorHandler。这是允许您处理异常的扩展点,即使它在执行到达您的服务代码之前发生。