このページでは、 Google Cloud コンソールを使用して Binary Authorization ポリシーを構成する手順について説明します。これらのタスクは、Google Cloud CLI または REST API でも行うことができます。この手順は Binary Authorization の設定の一部です。
ポリシーとは、コンテナ イメージのデプロイを規定する一連のルールです。
始める前に
プラットフォームで Binary Authorization を有効にします。
Google Kubernetes Engine(GKE)ユーザー: Binary Authorization を有効にしたクラスタを作成します。
Cloud Run ユーザー: サービスで Binary Authorization を有効にします。
証明書を使用する場合は、ポリシーを構成する前に認証者を作成することをおすすめします。認証者を作成するには、Google Cloud コンソールまたはコマンドライン ツールを使用します。
Binary Authorization を有効にしたプロジェクトのプロジェクト ID を選択します。
デフォルト ルールを設定する
このセクションの内容は、GKE、GKE Multi-Cloud、Distributed Cloud、Cloud Run、Cloud Service Mesh を対象としています。
ルールは、イメージをデプロイする前に満たす必要がある制約を定義するポリシーの一部です。デフォルト ルールは、独自のクラスタ固有のルールがなく、すべての対象コンテナ イメージに適用される制約を定義します。すべてのポリシーにはデフォルト ルールがあります。
デフォルト ルールを設定するには、次のようにします。
Google Cloud コンソールで、[Binary Authorization] ページに移動します。
[ポリシー] タブをクリックします。
[ポリシーの編集] をクリックします。
デフォルト ルールの評価モードを選択します。
評価モードにより、デプロイ時に Binary Authorization が適用する制約のタイプが指定されます。評価モードを設定するには、次のいずれかのオプションを選択します。
- すべてのイメージを許可: すべてのイメージのデプロイを許可します。
- すべてのイメージを禁止: すべてのイメージのデプロイを禁止します。
- 次の認証者によって承認されたイメージのみを許可: このルールに追加したすべての認証者が検証できる証明書がイメージに含まれている場合に、イメージのデプロイを許可します。認証者の作成方法については、認証者の作成をご覧ください。
[Allow only images that have been approved by the following attestors] を選択した場合:
認証者の名前またはリソース ID を取得します。
Google Cloud コンソールの [認証者] ページでは、既存の認証者を確認するか、新しい認証者を作成できます。
[認証者の追加] をクリックします。
次のオプションのいずれかを選択します。
プロジェクトと認証者の名前により追加
プロジェクトは、認証者を保存するプロジェクトのプロジェクト ID を参照します。認証者の名前の例は
build-qaです。認証者リソース ID により追加
リソース ID の形式は次のとおりです。
projects/PROJECT_ID/attestors/ATTESTOR_NAME
[認証者] で、選択したオプションに適切な値を入力します。
さらに認証者を追加する場合は、[別の認証者を追加] をクリックします。
[認証者の追加] をクリックしてルールを保存します。
ドライラン モードを有効にする場合は、次の操作を行います。
[ドライラン モード] を選択します。
[ポリシーを保存] をクリックします。
クラスタ固有のルールを設定する(省略可)
このセクションの内容は、GKE、Distributed Cloud、Cloud Service Mesh を対象としています。
ポリシーには、1 つ以上のクラスタ固有のルールも設定できます。このタイプのルールは、特定の Google Kubernetes Engine(GKE)クラスタにのみデプロイされるコンテナ イメージに適用されます。クラスタ固有のルールはポリシーのオプション部分です。
クラスタ固有のルールを追加する(GKE)
このセクションの内容は、GKE と Distributed Cloud を対象としています。
GKE クラスタにクラスタ固有のルールを追加するには、次の手順を行います。
Google Cloud コンソールで、[Binary Authorization] ページに移動します。
[ポリシー] タブをクリックします。
[ポリシーの編集] をクリックします。
[GKE デプロイの追加設定] セクションを開きます。
特定のルールの種類が設定されていない場合は、[特定のルールを作成] をクリックします。
ルールの種類を選択するには、[固有のルールの種類] をクリックします。
ルールの種類を変更するには、[変更] をクリックします。
[固定のルールを追加] をクリックします。
[クラスタ リソース ID] に、クラスタのリソース ID を入力します。
クラスタのリソース ID の形式は、
LOCATION.NAMEです(例:us-central1-a.test-cluster)。デフォルト ルールの評価モードを選択します。
評価モードにより、デプロイ時に Binary Authorization が適用する制約のタイプが指定されます。評価モードを設定するには、次のいずれかのオプションを選択します。
- すべてのイメージを許可: すべてのイメージのデプロイを許可します。
- すべてのイメージを禁止: すべてのイメージのデプロイを禁止します。
- 次の認証者によって承認されたイメージのみを許可: このルールに追加したすべての認証者が検証できる証明書がイメージに含まれている場合に、イメージのデプロイを許可します。認証者の作成方法については、認証者の作成をご覧ください。
[Allow only images that have been approved by the following attestors] を選択した場合:
認証者の名前またはリソース ID を取得します。
Google Cloud コンソールの [認証者] ページでは、既存の認証者を確認するか、新しい認証者を作成できます。
[認証者の追加] をクリックします。