VPC Service Controls を構成する

Managed Airflow(Gen 3) | Managed Airflow(Gen 2) | Managed Airflow(レガシー Gen 1)

VPC Service Controls を使用すると、組織で Google Cloud リソースの周囲に境界を定義して、データ漏洩のリスクを軽減できます。

Managed Airflow 環境はサービス境界内にデプロイできます。VPC Service Controls を使用して環境を構成することにより、センシティブ データを非公開にしたまま、Managed Airflow のフルマネージド ワークフロー オーケストレーション機能を活用できます。

VPC Service Controls による Managed Airflow のサポートは次のことを意味します。

  • Managed Airflow を VPC Service Controls の境界内の安全なサービスとして選択できるようになりました。
  • Managed Airflow で使用されるすべての基盤となるリソースは、VPC Service Controls アーキテクチャをサポートし、そのルールに従うように構成されます。

VPC Service Controls で Managed Airflow 環境をデプロイすると、次のメリットが得られます。

  • データ漏洩のリスクの低減。
  • アクセス制御の構成ミスによるデータ漏洩に対する保護。
  • 悪意のあるユーザーが未承認の Google Cloud リソースにデータをコピーしたり、外部の攻撃者がインターネットから Google Cloud リソースにアクセスしたりするリスクの軽減。

Managed Airflow の VPC Service Controls について

  • すべての VPC Service Controls ネットワークの制約がマネージド Airflow 環境にも適用されます。詳細については、VPC Service Controls のドキュメントをご覧ください。

共有 VPC と CMEK を使用する環境の境界

環境がサービス境界で保護され、 共有 VPCカスタマー マネージド暗号鍵(CMEK)、またはその両方を使用している場合は、 次のプロジェクトが同じサービス境界 に配置されていることを確認してください。

  • サービス プロジェクト: Managed Airflow 環境を含むプロジェクト。
  • ホスト プロジェクト: 共有 VPC ネットワークを含むプロジェクト。
  • Cloud Key Management Service 鍵をホストするプロジェクト。

境界内に環境を作成する

境界内に Managed Airflow をデプロイするには、次の手順が必要です。

  1. プロジェクトに対して Access Context Manager APICloud Composer API を有効にします。参考として、API の有効化をご覧ください。

  2. サービス境界に次の VPC のアクセス可能なサービスがあることを確認します。ない場合、環境の作成に失敗する可能性があります。

    • Cloud Composer API (composer.googleapis.com)
    • Compute Engine API(compute.googleapis.com)
    • Kubernetes Engine API (container.googleapis.com)
    • Container Registry API (containerregistry.googleapis.com)
    • Artifact Registry API (artifactregistry.googleapis.com)
    • Cloud Storage API(storage.googleapis.com)
    • Cloud SQL Admin API(sqladmin.googleapis.com)
    • Cloud Logging API (logging.googleapis.com)
    • Cloud Monitoring API (monitoring.googleapis.com)
    • Cloud Pub/Sub API (pubsub.googleapis.com)
    • Security Token Service API (sts.googleapis.com)
    • Cloud Resource Manager API (cloudresourcemanager.googleapis.com)
    • Service Directory API (servicedirectory.googleapis.com)
    • Cloud Key Management Service API (cloudkms.googleapis.com)、Cloud KMS または CMEK 鍵を使用する場合
    • Secret Manager API (secretmanager.googleapis.com)、Secret Manager をシークレットのバックエンドとして 使用している場合
  3. 新しいマネージド Airflow 環境を作成します。

  4. デフォルトでは、Airflow UI と API へのアクセスはセキュリティ境界内からのみ許可されます。セキュリティ境界外で使用できるようにするには、アクセスレベルまたは 上り(内向き)ルールと下り(外向き)ルールを構成します。

既存の環境を境界に追加する

次の場合は、環境を含むプロジェクトを境界に追加できます。

VPC Service Controls に PyPI パッケージをインストールする

デフォルトの VPC Service Controls 構成では、Managed Airflow は、VPC ネットワークの内部 IP アドレス空間から到達可能なプライベート リポジトリからの PyPI パッケージのインストールのみをサポートしています。

VPC Service Controls 境界内のすべての Managed Airflow 環境は、デフォルトで公開 PyPI リポジトリにアクセスできません。

プライベート リポジトリからインストールする

推奨される構成は、プライベート PyPI リポジトリを設定することです。

  1. 組織で使用する信頼できるパッケージを導入してから、プライベート リポジトリから Python 依存関係を インストールするように Managed Airflow を構成します

  2. アクセス制御で説明されているように、非公開 リポジトリから環境のサービス アカウントにパッケージをインストールするための追加の権限を付与します。

パブリック リポジトリからインストールする