c# - 建立SecurityContext="False" 和negotiateServiceCredential="False" 的安全含义是什么
问题描述
我们已经设置establishSecurityContext="False"
了negotiateServiceCredential="False"
一个wsHttpBinding
. 在每个 Web 服务调用都涉及连接和断开连接的设置中,这将每个 Web 服务调用的请求数从 5 个减少到 1 个,从而显着提高了性能。
客户端已配置为通过身份节点了解服务器身份:
<endpoint address="..." behaviorConfiguration="..." binding="wsHttpBinding" bindingConfiguration="..." contract="..." name="...">
<identity>
<certificate encodedValue="..." />
</identity>
</endpoint>
这些设置的安全含义是什么?他们会以任何方式降低安全性吗?
解决方案
所描述的场景实际上并没有改变客户端和服务器之间建立的连接的安全性。它只是改变了如何指定安全性以及如何指定凭证。
establishSecurityContext
是一种更高级别的机制,它有助于使用令牌指定安全上下文,而不是直接指定较低级别的详细信息。
negotiateServiceCredential
指定是否可以协商要使用的凭据,而不是明确指定。
完整的框架文档在这里。
在客户端为每个调用建立和处理连接并且已知客户端和服务器可以满足指定要求(即无需协商)的设置中,OP描述的设置是减少的合理方法在不更改实际应用于连接的安全策略的情况下建立连接的开销。
推荐阅读
- xquery - 如何使用xquery从json文件中删除元素
- r - 使用自举将置信区间功能区添加到 geom_density 图 (R)
- amazon-web-services - 如何列出所有区域的aws帐户中的所有存储桶
- python - 使用循环计算多列的排名
- python - Python:迭代布尔数组
- python - 我如何从 Google Adword API 的 Adgroup -Device level - MOBILE 中获取 Bid调整实际百分比值?
- sql - 使用 SQL 根据订单更新库存数量
- testing - 自动填充 Moodle 3.* 的测试数据
- metal - 如何在金属上创建 astc 压缩切片 3d 纹理?
- ios - 选中时更改 UICollectionView 单元格的背景和标签颜色