对列表结果进行排序和过滤

Cloud Key Management Service 支持对来自以下 list 操作的结果进行过滤和排序。

如果列表请求正文中存在 filterorderBy 字符串字段,则表示支持 list 操作中的排序和过滤。这两个字段都使用简单的语言引用要排序和/或过滤的对象中的字段。

过滤器语法

过滤器语法由要过滤的对象的一个或多个字段上的表达式组成。

您可以使用以下表达式运算符。

运算符 说明
= 相等。
> 大于。
< 小于。
=> 大于或等于。
<= 小于或等于。
!=
-
NOT
不相等。
以下表达式是等效的:
name != "quickstart"
-name="quickstart"
NOT name = "quickstart"
: 包含关系。这是一个不区分大小写的子字符串匹配。
例如,name: "cloud" 用于过滤资源名称中包含 cloud(不区分大小写)的资源。
AND 逻辑与。空格相当于 AND,因此以下表达式是等效的:
name: "cloud" AND name: "kms"
name: "cloud" name: "kms"
OR 逻辑或。

ANDOR 运算符具有相同的分组级别。OR 优先于 AND。您可以使用括号替换默认的优先级。

过滤 time 值时,请将时间编码为 RFC 3399 格式的字符串,例如 2019-06-20T01:30:15Z

访问子字段时,请使用点式语法。例如,CryptoKey 资源包含 primary 字段。您可以针对特定算法对 CryptoKey 结果过滤子字段 primary.algorithm

primary.algorithm=RSA_SIGN_PSS_2048_SHA256

您可以对标签和任何其他 map 类型使用点式语法:

labels.team=alpha

用英文引号引起来的一个字符串会被解释为单个值,而不是一系列值。

可过滤的字段

您可以过滤要返回的对象中的任何字段。

list 方法 可过滤字段的链接
keyRings.list KeyRing 字段
cryptoKeys.list CryptoKey 字段
cryptoKeyVersions.list CryptoKeyVersion 字段
importJobs.list ImportJob 字段

排序顺序语法

您可以按对象的资源名称对结果进行排序。下面显示了 orderBy 字段支持的排序顺序值。

说明
''(空字符串) 结果按默认顺序排序。
'name' 结果按资源名称升序排序。
'name desc' 结果按资源名称降序排序。