- 安全
- 隐私
- 应用程序优先权
- 用户帐户优先权
- 传输控制
规范还描述了这些策略的处理模型,处理模型是独立于领域的。对于处理策略定义了 3 种操作: 标准化, 融合和 交集。
规范所用术语:断言,替代
断言:
断言是策略的基本单元。对于策略处理基础架构来说,可以将其看作一条指令。例如,断言可以声明消息是被加密的。这种断言的实际定义将包含在 WS-Security 策略域规范中。
因此,每个断言的意义是特定于各领域的,可以通过它们自己单独的规范来识别,各特定领域断言的详细信息都超出了 WS-Policy 框架的范围。但是,WS-Policy 框架将每个断言看作 opaque。
每个断言可以通过它们的 限定名 ( QName
) 来识别。断言可以是一个简单的字符串或带多个子元素和属性的复杂对象。但是,任何 WS-Policy 框架处理中只涉及到 XML 的根元素 QName
。
替代(就是能进行相互替换的多个断言的组合称为替代)
策略是由断言和操作符 <wsp:All>(能有0个或多个)
, <wsp:ExactlyOne>(只能有一个)
的嵌套组合以及 可选 属性构成的。对于给定的 Web 服务调用,利用该策略语法来描述可接受的断言组合,最终形成策略处理基础架构的完整指令集。每组断言集在术语上称为 替代。
注意,只有包含 可选属性或 <wsp:ExactlyOne>
操作符的策略才有多个替代。换句话说,只包含一个断言和 <wsp:All>
操作符的策略可以解析为一个替代。
标准化处理就是进行断言XML描述的过程
空策略:是目前没有合适替代但已经给出了位置,符合的替代可以随时插入
null策略:表示这里没有替代位置
标准化过程:对策略进行标准化处理,直到只剩一个外部 <wsp:ExatclyOne>
操作符。标准化的格式是:有一个包含 <wsp:All>
操作符的 <wsp:ExactlyOne>
操作符。
融合:对两个标准化的策略进行乘操作。
交集: 交集 是比较用于公用替代的 2 个 Web 服务策略的过程。只有双方至少对一个策略替代达成一致,才会产生交集。当请求方以策略的形式表述性能和需求时通常采用这种操作。请求方策略可能断言本地运行基础架构能够进行处理。两个策略的交集给出 0 或多个双方一致同意的替代。
请求方与提供方互相对策略采用一样的标准,当策略的标准化结束后就能知道互相的策略有几个替代,两个策略的所有替代求交集就能知道双方是否有一致的替代,也就是一致的性能和需求。
交集的难点就在于领域决定断言的性质。独立于领域之外的策略问题交互只能处理一部分问题。
策略旁边的那个红色块应该是MANAGEMENT,少个字母E,管理覆盖从描述层到协调层的三层,SOAP消息的传递不需要管理,属于没有什么管理策略的意思。(如果涉及到缓冲的话也有相应的成熟缓冲策略,属于完全对管理透明的一层)
关键的是WS-CDL,协调层只能又CDL完成编排任务,包括程序设计语言和BPEL在内都无法完成这个任务,CDL也渗透到了地址层和流程层,表示CDL有流程管理和location的功能。
最后,这张图片是CDL语言介绍PPT中的一张http://www.w3.org/2005/Talks/1114-hh-ecows/WS-CDL_ECOWS2005/img1.html