Cloud Key Management Service は、次の list オペレーションで得た結果のフィルタリングと並べ替えをサポートしています。
list リクエストの本文に filter と orderBy の文字列フィールドがある場合は、list オペレーションで並べ替えとフィルタリングがサポートされています。どちらのフィールドでも、並べ替えやフィルタリングの対象となるオブジェクト内のフィールドを参照するのに、簡単な言語が使用されます。
フィルタの構文
フィルタの構文は、フィルタ対象となるオブジェクトの 1 つ以上のフィールドに対する式で構成されます。
式には次の演算子を使用できます。
| 演算子 | 説明 |
|---|---|
= |
等しい。 |
> |
より大きい。 |
< |
未満。 |
=> |
以上。 |
<= |
以下。 |
!=-NOT |
等しくない。 次の式はすべて同じ結果になります。 name != "quickstart"-name="quickstart"NOT name = "quickstart" |
: |
包含。これは、大文字と小文字が区別されない部分文字列一致です。 たとえば、 name: "cloud" は、リソース名に cloud(大文字と小文字は区別されません)を含むリソースをフィルタします。 |
AND |
論理 AND。スペースは AND と同等であるため、次の式はすべて同じ結果になります。name: "cloud" AND name: "kms"name: "cloud" name: "kms" |
OR |
論理 OR。 |
AND 演算子と OR 演算子は、同じグループレベルで使用できます。OR は AND より優先されます。括弧を使用して、デフォルトの優先順位をオーバーライドできます。
time 値でフィルタする場合は、2019-06-20T01:30:15Z のように、時刻を RFC 3399 形式の文字列にエンコードします。
サブフィールドにアクセスする場合は、ドット構文を使用します。たとえば、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 フィールド |
並べ替えの構文
オブジェクトでリソースの name フィールドを使用して結果を並べ替えることができます。orderBy フィールドでサポートされる並べ替え値は次のとおりです。
| 値 | 説明 |
|---|---|
''(空の文字列) |
結果はデフォルトの順序で並べ替えられます。 |
'name' |
結果は、リソースの name フィールドの昇順で並べ替えられます。 |
'name desc' |
結果はリソースの name フィールドの降順で並べ替えられます。 |