规则构建器设置
使用此页面为给定请求类型构建规则以及为应用程序构建工作类。对于给定的工作类,将规则条件映射至服务策略,以便按以下条件(也称为操作数:IP 地址、端口、协议以及客户机或服务器主机的名称)来将工作负载进一步分类。借助规则构建器,可以使用这些操作数以及预定义的可选择的一组运算符(例如,LIKE 或等号
=)来构造规则。例如,可以构建一个规则,以便按协议对 StockTradeWork
工作类的入局工作进行分类。要查看此页面,请单击应用程序 > 企业应用程序 > 应用程序 > 服务策略。展开请求类型,然后对现有工作类单击添加规则 > 规则构建器 > 添加。
根据所作的选择的不同,字段也有所变化:
操作数 |
- clienthost:客户机系统的名称。这是网际协议命令主机名的值。此操作数不支持数字运算符,例如大于号(>)。
- clientipv4:客户机的因特网协议 V4 地址,使用点分四段地址类型 n.n.n.n。
- clientipv6:客户机的因特网协议 V6 128 位地址,类型为 x:x:x:x:x:x:x:x。
- cookie$:Cookie 名。例如,表达式
cookie$MyCookieName='MyCookieValue'
将测试请求以确定其是否包含名为 MyCookieName
并且值为 MyCookieValue 的 cookie。要测试特定 cookie 是否存在,请使用下列其中一项:
- cookie$MyCookieName IS NOT NULL
- cookie$MyCookieName IS NULL
- gid:请求发送方的组标识。
- header$:头的名称或值。例如,表达式
header$Host='localhost'
将测试请求以确定其是否包含值为 localhost
的超文本传输协议(HTTP)主机头。要测试主机头是否存在,请使用下列其中一项:
- cookie$Host IS NOT NULL
- cookie$Host IS NULL
- HTTPMethod:请求的 HTTP 方法。可能的值是:POST、GET、PUT 和 DELETE
- MIMEtype:请求的多用途因特网邮件扩展类型。
- port:主机上提供了服务的侦听端口。
- protocol:请求的通信协议。支持的协议是 HTTP、HTTPS、SOAP 和 IIOP。
- queryparm$:头的名称或值。例如,表达式
queryparm$timezone='EST'
将测试请求以确定其是否包含名为 timezone
并且值为 EST 的
HTTP 查询参数。要测试某个查询参数是否存在,请使用下列其中一项:
- queryparm$timezone IS NOT NULL
- queryparm$timezone IS NULL
- serverhost:服务器系统的名称。这是网际协议命令主机名的值。此操作数不支持数字运算符,例如大于号(>)。
- serveripv4:服务器的因特网协议 V4 地址,使用点分四段地址类型 n.n.n.n。
- serveripv6:服务器的因特网协议 V6 128 位地址,类型为 x:x:x:x:x:x:x:x。
- uid:请求发送方的用户标识。service:Web Service 的名称。operation:Web Service 操作的名称。EJB:EJB 的名称。method:EJB 的方法名。
|
运算符 |
- = 等式运算符表示区分大小写的匹配。
- >“大于”运算符适用于数字。
- >= “大于或等于”运算符适用于数字。
- < “小于”运算符适用于数字。
- <=“小于或等于”运算符适用于数字。
- AND:对于 xx AND
yy,表达式
与既包含 xx 又包含
yy 的内容匹配。
- BETWEEN:将此运算符与 AND 运算符结合使用来选择值的范围,包括第一个值(较小值)和最后一个值(较大值)。而且,它们可以对数字和日期进行运算。
- EXISTS:此布尔运算符将检查复合子表达式的操作数或结果,例如,检查某些 HTTP 头元素属性。
- IN:此运算符将在单个表达式中表示具有多个值的操作数。例如,对于一个称为 port 的操作数,您想表达端口值可以是任何值或所有值,例如,9080、9090 和 9091,则表达式段为 port IN (9080,9090,9091)。如何表示方括号中的值取决于取决于端口的数据类型。如果端口是一个整数,则正确的语法是一些值,但是不带引号。如果端口是一个字符串,则正确的语法是 port IN ('9080', '9090', '9091')。
- IS NULL:此运算符表示验证查询的结果表明所请求的参数不存在。
- IS NOT NULL:此运算符表示验证查询的结果表明所请求的参数存在。
- LIKE:此运算符表示字符串操作数值的模式匹配。在模式匹配的开始位置,值必须包含通配符 - 百分号(%)。例如,表达式 host LIKE %blanca 将与单词 blanca 或者以
blanca 结尾的任何其他单词相匹配;而表达式 host LIKE blanca% 将与单词
blanca 或者以 blanca 开头的任何其他单词相匹配;而表达式 host LIKE %blanca% 将与单词 blanca 或者嵌入了 blanca 的任何单词相匹配。
- NOT:对于 NOT xx,此运算符表示不包含 xx 的匹配项。
- OR:对于 xx OR yy,此运算符表示包含 xx 或 yy 的匹配项。
|
值 |
此字段对适当的操作数显示。例如,对于用户标识操作数,在此字段中输入用户标识。 |