我们的 .Net 4 组件通过 WCF 客户端代理访问第三方 Web 服务。第三方 Web 服务的 WSDL 包含 Protect Tokens 安全策略:
<sp:ProtectTokens />
因此,Visual Studio 2013 生成的自定义绑定配置包含:
protectTokens="true"
我们已经在我们的本地环境中使用它几个星期了,没有任何问题。但是,在使用此版本的应用程序更新我们的 Azure 环境时,我们发现它会引发异常:
Unrecognized attribute 'protectTokens'.
Note that attribute names are case-sensitive
MSDN似乎对支持protectTokens 的.NET 版本存在冲突。链接页面的标题为 .NET 4.6 和 4.5,但其页脚声明“自 3.0 起可用”。无论如何,该应用程序是为 4.0 构建的,正如我所说,在本地环境中没有错误。
是什么导致 Azure 中的错误?这是 OS 系列 2 (2008R2)。