- リソース: EndpointPolicy
- EndpointPolicyType
- EndpointMatcher
- MetadataLabelMatcher
- MetadataLabelMatchCriteria
- MetadataLabels
- TrafficPortSelector
- メソッド
リソース: EndpointPolicy
EndpointPolicy は、特定の条件に一致するエンドポイントに必要な構成を適用するために使用できるリソースです。たとえば、このリソースを使用して、ポート 8080 で動作するすべてのエンドポイントに「認証構成」を適用できます。
| JSON 表現 | 
|---|
| { "name": string, "createTime": string, "updateTime": string, "labels": { string: string, ... }, "type": enum ( | 
| フィールド | |
|---|---|
| name | 
 ID。EndpointPolicy リソースの名前。パターン  | 
| createTime | 
 出力専用。リソース作成時のタイムスタンプ。 RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例:  | 
| updateTime | 
 出力専用。リソース更新時のタイムスタンプ。 RFC 3339 を使用します。生成された出力は常に Z 正規化され、小数点以下は 0、3、6、または 9 桁になります。「Z」以外のオフセットも使用できます。例:  | 
| labels | 
 省略可。EndpointPolicy リソースに関連付けられた一連のラベルタグ。 
 | 
| type | 
 必須。エンドポイント ポリシーのタイプ。主に構成の検証に使用されます。 | 
| authorizationPolicy | 
 省略可。このフィールドでは、一致したエンドポイントで受信トラフィックに認可ポリシーを適用する AuthorizationPolicy リソースの URL を指定します。「認可」を参照してください。このフィールドが指定されていない場合、このエンドポイントの認可が無効(認可チェックなし)になります。 | 
| endpointMatcher | 
 必須。ポリシーを適用する必要があるエンドポイントを選択するマッチャー。 | 
| trafficPortSelector | 
 省略可。(一致した)エンドポイントのポートセレクタ。ポートセレクタが指定されていない場合、一致した構成がすべてのポートに適用されます。 | 
| description | 
 省略可。フリーテキストでのリソースの説明。最大長は 1,024 文字です。 | 
| serverTlsPolicy | 
 省略可。ServerTlsPolicy リソースを参照する URL。ServerTlsPolicy は、特定されたバックエンドでの受信トラフィックを終了するために適用される認証ポリシーの決定に使用されます。このフィールドが設定されていない場合、このエンドポイントの認証は無効(オープン)になります。 | 
| clientTlsPolicy | 
 省略可。ClientTlsPolicy リソースを参照する URL。ClientTlsPolicy を設定すると、プロキシから実際のエンドポイントへのトラフィックの認証を指定できます。具体的には、プロキシからエンドポイントへの送信トラフィックに適用されます。これは通常、プロキシがコントロール プレーンへのエンドポイントとして自身を識別し、サイドカーとエンドポイントの間の接続で認証が必要なサイドカー モデルに使用されます。このフィールドが設定されていない場合、認証は無効(オープン)になります。EndpointPolicyType が SIDECAR_PROXY の場合にのみ適用されます。 | 
EndpointPolicyType
エンドポイント ポリシーのタイプ。
| 列挙型 | |
|---|---|
| ENDPOINT_POLICY_TYPE_UNSPECIFIED | デフォルト値。使用しないでください。 | 
| SIDECAR_PROXY | サイドカーとしてデプロイされたプロキシを示します。 | 
| GRPC_SERVER | プロキシレス gRPC バックエンドを示します。 | 
EndpointMatcher
ポリシーを適用する必要があるエンドポイントを選択するマッチャーの定義。
| JSON 表現 | 
|---|
| { // Union field | 
| Fields | |
|---|---|
| 共用体フィールド matcher_type。このエンドポイント マッチャーに使用するマッチャーのタイプを指定します。matcher_typeは次のいずれかになります。 | |
| metadataLabelMatcher | 
 マッチャーは、xDS クライアントによって提示されたノード メタデータに基づいています。 | 
MetadataLabelMatcher
xDS クライアントから提示されたノード メタデータに基づくマッチャー。
| JSON 表現 | 
|---|
| { "metadataLabelMatchCriteria": enum ( | 
| フィールド | |
|---|---|
| metadataLabelMatchCriteria | 
 マッチング方法を指定します。 サポートされている値は、MATCH_ANY です。マッチャーで指定されたラベルの少なくとも 1 つが、XDS クライアントによって提示されたメタデータと一致している必要があります。MATCH_ALL: xDS クライアントによって提示されたメタデータには、ここで指定されたすべてのラベルが含まれている必要があります。 選択は、最も一致するものに基づいて行われます。たとえば、3 つの EndpointPolicy リソース P1、P2、P3 があり、P1 に MATCH_ANY <A:1, B:1> というマッチャーがあり、P2 に MATCH_ALL <A:1,B:1> というマッチャーがあり、P3 に MATCH_ALL <A:1,B:1,C:1> というマッチャーがあるとします。 ラベルが <A:1> のクライアントが接続すると、P1 の構成が選択されます。 ラベルが <A:1,B:1> のクライアントが接続すると、P2 の構成が選択されます。 ラベルが <A:1,B:1,C:1> のクライアントが接続すると、P3 の構成が選択されます。 最も一致するものが複数ある場合(たとえば、セレクタ <A:1,D:1> がある構成 P4 が存在し、ラベルが <A:1,B:1,D:1> のクライアントが接続する場合など)、作成時間が古いほうが選択されます。 | 
| metadataLabels[] | 
 filterMatchCriteria に基づいて指定されたメタデータのラベルと一致する必要があるラベル値ペアのリスト。このリストには最大 64 個のエントリを含めることができます。一致条件が MATCH_ANY の場合は、このリストを空にしてワイルドカード一致を指定できます(つまり、任意のクライアントに一致します)。 | 
MetadataLabelMatchCriteria
マッチング方法のロジックを定義する条件値。
| 列挙型 | |
|---|---|
| METADATA_LABEL_MATCH_CRITERIA_UNSPECIFIED | デフォルト値。これは使用しないでください。 | 
| MATCH_ANY | マッチャーで指定されたラベルの少なくとも 1 つが、xDS クライアントによって提示されたメタデータと一致している必要があります。 | 
| MATCH_ALL | xDS クライアントによって提示されたメタデータには、ここで指定されたすべてのラベルが含まれている必要があります。 | 
MetadataLabels
単一ラベルの名前ペアの値を定義します。
| JSON 表現 | 
|---|
| { "labelName": string, "labelValue": string } | 
| フィールド | |
|---|---|
| labelName | 
 必須。xDS ノード メタデータでキーとして提示されるラベル名。 | 
| labelValue | 
 必須。xDS ノード メタデータで、上記のキーに対応する値として提示されるラベル値。 | 
TrafficPortSelector
ポートベースのセレクタの仕様。
| JSON 表現 | 
|---|
| { "ports": [ string ] } | 
| フィールド | |
|---|---|
| ports[] | 
 省略可。ポートのリスト。ポート番号またはポート範囲(例: [80-90] は 80~90 のすべてのポート(80 と 90 を含む)を指定します)、名前付きポート、またはすべてのポートを指定する *。リストが空の場合は、すべてのポートが選択されます。 | 
| メソッド | |
|---|---|
| 
 | 指定されたプロジェクトとロケーションで新しい EndpointPolicy を作成します。 | 
| 
 | 単一の EndpointPolicy を削除します。 | 
| 
 | 単一の EndpointPolicy の詳細を取得します。 | 
| 
 | 指定されたプロジェクトとロケーションでの EndpointPolicy を一覧で表示します。 | 
| 
 | 単一の EndpointPolicy のパラメータを更新します。 | 
| 
 | 指定したリソースにアクセス制御ポリシーを設定します。 | 
| 
 | 指定したリソースに対して呼び出し元が持っている権限を返します。 |