階層型サービス有効化の概要

階層型サービス有効化は、組織のリソース階層全体で、パブリック サービスやプライベート サービスなどのサービスの有効化と無効化をより詳細に制御できる Service Usage の機能です。階層型サービス有効化は、サービス依存関係と多くのサービスを効率的に管理できる宣言型ポリシー モデルをサポートしています。

このドキュメントでは、階層型サービス有効化の概要について説明します。この機能の使用方法については、 サービスの有効化を管理するをご覧ください。

サービス有効化ポリシーの継承

階層型サービス有効化を使用すると、リソース階層のさまざまなレベル で Google Cloud サービス有効化ポリシーを設定できます。上位レベルで設定されたポリシーは、すべての子リソースに継承されます。サービスを有効にする必要があるのは、最も高い共通レベルのみです。

これにより、多数のプロジェクトにわたるサービスの管理が簡素化され、一貫したポリシーの適用がサポートされます。たとえば、フォルダまたは組織内のすべてのプロジェクトが有効なサービスのベースライン セットに準拠するようにし、プロジェクト レベルの構成の必要性を減らすことができます。

サービス有効化ポリシーは、次のレベルで設定できます。

  • 組織 レベルで設定されたポリシーは、組織内のすべてのフォルダとプロジェクトに適用されます。
  • フォルダ レベルで設定されたポリシーは、フォルダ内のすべてのサブフォルダとプロジェクトに適用されます。
  • プロジェクト レベルで設定されたポリシーは、親フォルダと組織から継承されます。


上位レベルで設定されたポリシーは、すべての子リソースに継承されます。

組織のポリシー

階層型サービス有効化を使用すると、サービスを有効または無効にできますが、 組織のポリシー サービス は、サービスの使用方法を一元的に制御することで、これを補完します。 サービスが有効になると、組織のポリシーを使用して、新しく作成されたリソースの物理的な場所を制限したり、使用できるサービス アカウントを制限するなど、構成に制約を適用できます。これにより、コンプライアンス ガードレールを確立し、サービスが有効になった後も、その使用が組織のガバナンス要件に準拠するようにします。

主なコンセプト

サービス有効化を管理するには、階層型サービス有効化の宣言型ポリシー モデルの次の主なコンセプトを理解する必要があります。

コンシューマー ポリシー

ConsumerPolicy は、 Google Cloud リソース階層の各レベルにある Service Usage API リソースです。このリソースの名前は常に default で、有効になっているサービスを定義する enableRules が含まれています。特定のサービスを有効または無効にするのではなく、ConsumerPolicy リソースを変更できます。サービス名がリストに含まれている場合、その階層レベルでサービスが有効になります。この宣言型アプローチにより、サービス状態の管理が簡素化されます。

有効なポリシー

EffectivePolicy は、リソース階層の各レベルにある Service Usage API リソースです。 Google Cloud 有効なポリシーは、リソースに対して有効になっているサービスを示します。リソースの ConsumerPolicy と、そのすべての祖先のポリシーを組み合わせます。これにより、有効になっているすべてのサービスと、その有効化の発生元を完全に把握できます。

有効なポリシーを使用すると、有効になっているすべてのサービスと、その有効化の発生元を完全に把握できます。

サービスの依存関係

多くの Google Cloud サービスは、機能するために他のサービスを必要とします。階層型サービス有効化を使用してサービスを有効にすると、必要な依存関係が自動的に ConsumerPolicy に追加されます。サービス依存関係グループには、これらの依存サービスが含まれています。これらを検査して、理解と管理を深めることができます。

以前のバージョンの Service Usage からの移行

階層型サービス有効化は、以前のバージョンの Service Usage と連携します。既存のプロジェクトレベルの設定を変更せずに、フォルダまたは組織レベルでサービスを有効にするなど、階層型サービス有効化機能を使用できます。プロジェクト レベルで有効になっているサービスは引き続き機能します。階層モデルでは、これらの設定が追加されます。プロジェクトの有効なポリシーは、プロジェクト レベルで設定されたポリシーと、フォルダと組織から継承されたポリシーを組み合わせた結果になります。

たとえば、以前のバージョンの Service Usage を使用してプロジェクト レベルで compute.googleapis.com が有効になっている場合、サービスは有効なままになります。階層型サービス有効化を使用してフォルダまたは組織レベルで行われた後続の有効化の影響を受けません。逆に、フォルダレベルで compute.googleapis.com を有効にすると、そのフォルダ内のすべてのプロジェクトでサービスが有効になります。

次のステップ