OS ポリシーを使用して、Linux および Windows 仮想マシン(VM)インスタンス全体で一貫したソフトウェア構成を維持します。
始める前に
- OS ポリシーとその割り当てを確認します。
- OS Config の割り当てを確認します。
- VM Manager イベントの監査ログを生成するには、データアクセス監査ログを有効にします。
-
まだ設定していない場合は、認証を設定します。認証とは、 Trusted Cloud by S3NS サービスと API にアクセスするために ID を確認するプロセスです。ローカル開発環境からコードまたはサンプルを実行するには、次のいずれかのオプションを選択して Compute Engine で認証を行います。
Select the tab for how you plan to use the samples on this page:
Console
When you use the Trusted Cloud console to access Trusted Cloud by S3NS services and APIs, you don't need to set up authentication.
gcloud
-
After installing the Google Cloud CLI, sign in to the gcloud CLI with your federated identity and then initialize it by running the following command:
gcloud init
- Set a default region and zone.
-
Install the Google Cloud CLI.
-
Configure the gcloud CLI to use your federated identity.
For more information, see Sign in to the gcloud CLI with your federated identity.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Create local authentication credentials for your user account:
gcloud auth application-default login
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
- OSPolicyAssignment 管理者(
roles/osconfig.osPolicyAssignmentAdmin
)。OS ポリシーの割り当てを作成、削除、更新、取得、一覧取得する権限が含まれます。 - OSPolicyAssignment 編集者(
roles/osconfig.osPolicyAssignmentEditor
)。OS ポリシーの割り当てを更新、取得、一覧表示する権限が含まれます。 - OSPolicyAssignment 閲覧者(
roles/osconfig.osPolicyAssignmentViewer
)。OS ポリシーの割り当てを取得して一覧表示するための読み取り専用アクセス権が含まれます。 PROJECT_ID
: プロジェクト IDUSER_ID
: ユーザーの Google Workspace のユーザー名。- VM Manager を設定します。
- ユーザーに必要な権限を割り当てます。
- OS ポリシーとその割り当てを確認します。
- OS ポリシー リソースを作成します。
OS ポリシーの割り当てを作成してロールアウトするには、次のいずれかの方法を使用します。
コンソール
OS ポリシーの割り当てを作成してロールアウトするには、次の手順を行います。
- ローカル クライアントで OS ポリシーを作成またはダウンロードします。これは JSON または YAML ファイルです。OS ポリシーの作成または OS のサンプル ポリシーの表示については、OS ポリシーをご覧ください
Trusted Cloud コンソールで、[OS ポリシー] ページに移動します。
[OS ポリシーの割り当ての作成] をクリックします。
[割り当て ID] セクションで、OS ポリシーの割り当ての名前を入力します。リソースの命名規則をご覧ください。
[OS ポリシー] セクションで、OS ポリシー ファイルをアップロードします。
[ターゲット VM インスタンス] セクションで、ターゲット VM を指定します。
- ポリシーを適用する VM を含むゾーンを選択します。
- OS ファミリーを選択します。
- (省略可)対象ラベルまたは除外ラベルを指定して、VM をさらにフィルタリングできます。
たとえば、テスト環境のすべての Ubuntu VM を選択して、Google Kubernetes Engine を実行している VM を除外できます。
- OS ファミリー:
ubuntu
- 対象:
env:test
、env:staging
- 除外:
goog-gke-node
ロールアウト プランを指定します。
- ウェーブサイズ(停止予算)を指定します。例: 10%。
- 待ち時間を指定します。例: 15 分。
[ロールアウトを開始] をクリックします。
gcloud
ゾーンに OS ポリシーの割り当てを作成してロールアウトするには、次の手順を行います。
JSON または YAML 形式で OS ポリシー割り当てリソースを作成します。このファイルは、VM に適用する OS ポリシー、ポリシーを適用するターゲット VM、OS ポリシーを適用するロールアウト スピードを定義します。このファイルとサンプル割り当ての詳細については、OS ポリシーの割り当てをご覧ください。
os-config os-policy-assignments create
コマンドを使用して、指定したロケーションに OS ポリシーの割り当てを作成してロールアウトします。gcloud compute os-config os-policy-assignments create OS_POLICY_ASSIGNMENT_ID \ --location=ZONE \ --file=OS_POLICY_ASSIGNMENT_FILE \ --async
次のように置き換えます。
OS_POLICY_ASSIGNMENT_ID
: OS ポリシー割り当ての名前。リソースの命名規則をご覧ください。ZONE
: OS ポリシーの割り当てを作成するゾーン。OS_POLICY_ASSIGNMENT_FILE
: 前の手順で作成した OS ポリシー割り当てファイルの絶対パス。
例
gcloud compute os-config os-policy-assignments create my-os-policy-assignment \ --location=asia-south1-a \ --file=/downloads/assignment-config.yaml \ --async
出力は次のようになります。
Create request issued for: [my-os-policy-assignment] Check operation [projects/384123488288/locations/asia-south1-a/osPolicyAssignments/my-os-policy-assignment/operations/fb2011d6-61de-46f1-afdb-bc96bdb3fbaa] for status.
オペレーションの完全修飾リソース名をメモします。上述の例では、完全修飾リソース名は次のようになります。
projects/384123488288/locations/asia-south1-a/osPolicyAssignments/my-os-policy-assignment/operations/fb2011d6-61de-46f1-afdb-bc96bdb3fbaa
この完全修飾リソース名は、ロールアウトの詳細取得やキャンセルに使用できます。ロールアウトをご覧ください。
Terraform
OS ポリシーの割り当てを作成するには、
google_os_config_os_policy_assignment
リソースを使用します。次の例では、CentOS VM で Apache ウェブサーバーが実行されているかどうかを確認します。
Terraform 構成を適用または削除する方法については、基本的な Terraform コマンドをご覧ください。
REST
ローカル クライアントで OS ポリシーの割り当てを作成するには、次の操作を行います。
OS ポリシーの割り当てを作成します。これは JSON ファイルである必要があります。OS ポリシーの割り当ての作成、サンプルの OS ポリシー割り当ての表示については、OS ポリシーの割り当てをご覧ください。
サンプル YAML OS ポリシーの割り当てを使用する場合は、JSON に変換する必要があります。
API で、
projects.locations.osPolicyAssignments.create
メソッドに対するPOST
リクエストを作成します。リクエスト本文に、前の手順でコピーした OS ポリシーの割り当てを貼り付けます。
POST https://osconfig.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/osPolicyAssignments?osPolicyAssignmentId=OS_POLICY_ASSIGNMENT_ID { JSON_OS_POLICY }
次のように置き換えます。
PROJECT_ID
: プロジェクト IDOS_POLICY_ASSIGNMENT_ID
: OS ポリシー割り当ての名前JSON_OS_POLICY
: 前の手順で作成した OS ポリシーの割り当ての仕様。JSON 形式にする必要があります。パラメータと形式の詳細については、Resource: OSPolicyAssignment
をご覧ください。ZONE
: OS ポリシーの割り当てを作成するゾーン
例
たとえば、サンプル OS ポリシーの割り当てを使用して、特定の VM に Monitoring エージェントと Logging エージェントをインストールする Google Cloud Observability の OS ポリシーの割り当てを作成するには、次の操作を行います。
- サンプルを JSON に変換します。
- 次のリクエストを行います。
POST https://osconfig.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/osPolicyAssignments?osPolicyAssignmentId=OS_POLICY_ASSIGNMENT_ID { "osPolicies": [ { "id": "setup-repo-and-install-package-policy", "mode": "ENFORCEMENT", "resourceGroups": [ { "resources": [ { "id": "setup-repo", "repository": { "yum": { "id": "google-cloud-monitoring", "displayName": "Google Cloud Monitoring Agent Repository", "baseUrl": "https://packages.cloud.google.com/yum/repos/google-cloud-monitoring-el8-x86_64-all", "gpgKeys": [ "https://packages.cloud.google.com/yum/doc/yum-key.gpg", "https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg" ] } } }, { "id": "install-pkg", "pkg": { "desiredState": "INSTALLED", "yum": { "name": "stackdriver-agent" } } } ] } ] } ], "instanceFilter": { "inclusionLabels": [ { "labels": { "used_for": "testing" } } ] }, "rollout": { "disruptionBudget": { "fixed": 10 }, "minWaitDuration": { "seconds": 300 } } }
Trusted Cloud コンソールで、[OS ポリシー] ページに移動します。
[OS ポリシーの割り当て] タブをクリックします。
ロールアウトをキャンセルする OS ポリシーの割り当てで、[アクション( > [ロールアウトをキャンセル] をクリックします。
)][ロールアウトをキャンセル] をクリックします。
- OS ポリシーの詳細を確認する。
- OS ポリシーの割り当てを管理する。
Terraform
ローカル開発環境でこのページの Terraform サンプルを使用するには、gcloud CLI をインストールして初期化し、ユーザー認証情報を使用してアプリケーションのデフォルト認証情報を設定します。
詳細については Set up authentication for a local development environment をご覧ください。
REST
このページの REST API サンプルをローカル開発環境で使用するには、gcloud CLI に指定した認証情報を使用します。
After installing the Google Cloud CLI, sign in to the gcloud CLI with your federated identity and then initialize it by running the following command:
gcloud init
詳細については、 Trusted Cloud 認証ドキュメントの REST を使用して認証するをご覧ください。
サポートされているオペレーティング システム
OS ポリシーをサポートするオペレーティング システムとバージョンの完全なリストについては、オペレーティング システムの詳細をご覧ください。
権限
OS ポリシーを使用して VM にソフトウェア パッケージをインストールして管理できるため、OS ポリシーを作成して管理することは VM でリモートコード実行アクセス権を付与することと同等です。OS ポリシーを設定すると、IAM 権限を使用してポリシー リソースとアクセスが制御され、アクティビティが監査ログに記録されます。
プロジェクトのオーナーは、OS ポリシーの割り当てを作成、管理するための完全アクセス権を持ちます。他のすべてのユーザーには、権限を付与する必要があります。次のいずれかの詳細なロールを付与できます。
権限を設定するコマンドの例
OS ポリシーを割り当てるための管理者権限をユーザーに付与するには、次のコマンドを実行します。
gcloud projects add-iam-policy-binding PROJECT_ID \ --member user:USER_ID@gmail.com \ --role roles/osconfig.osPolicyAssignmentAdmin
次のように置き換えます。
OS ポリシーの割り当てを作成する
OS ポリシーの割り当てを作成してロールアウトするには、次の手順を行います。
ロールアウト
OS ポリシーの割り当ては、ロールアウト率に従ってデプロイされます。つまり、一連の VM をターゲットとする割り当ては段階的にデプロイでき、すべての VM にすぐに適用されるわけではありません。変更は段階的にロールアウトされます。新しい変更で問題が発生した場合は、ロールアウトをキャンセルして元に戻すことができます。
API がメソッド呼び出しの完了に時間がかかる場合、API は長時間実行オペレーション(LRO)を返します。LRO の詳細については、長時間実行オペレーションをご覧ください。
OS ポリシーの割り当てを作成、更新、削除するたびに、OS Config Service API が LRO を作成します。各 LRO はオペレーション リソースを返します。このオペレーション リソースは次のようになります。
Create request issued for: [my-os-policy-assignment] Check operation [projects/384123488288/locations/asia-south1-a/osPolicyAssignments/my-os-policy-assignment/operations/fb2011d6-61de-46f1-afdb-bc96bdb3fbaa] for status.
作成、更新、削除の各オペレーションでも、OS ポリシー割り当ての新しいバージョンが生成されます。OS ポリシーの割り当てのリビジョンを表示するには、OS ポリシー割り当てのリビジョンの一覧表示をご覧ください。
Google Cloud CLI を使用して、ロールアウトの詳細を取得することや、ロールアウトをキャンセルできます。
ロールアウトの詳細を取得する
ロールアウトの詳細を取得するには、
os-config os-policy-assignments operations describe
コマンドを使用します。gcloud compute os-config os-policy-assignments operations describe FULLY_QUALIFIED_OPERATION_NAME
FULLY_QUALIFIED_OPERATION_NAME
は、作成、更新、削除の各オペレーションで返される完全修飾リソース名に置き換えます。例
gcloud compute os-config os-policy-assignments operations describe \ projects/384123488288/locations/asia-south1-a/osPolicyAssignments/my-os-policy-assignment/operations/fb2011d6-61de-46f1-afdb-bc96bdb3fbaa
出力例
done: true metadata: '@type': type.googleapis.com/google.cloud.osconfig.$$api-version$$.OSPolicyAssignmentOperationMetadata apiMethod: CREATE osPolicyAssignment: projects/3841234882888/locations/asia-south1-a/osPolicyAssignments/my-os-policy-assignment@cfb78790-41d8-40d1-b8a1-1eaf6011b909 rolloutStartTime: '2021-04-15T00:53:52.963569Z' rolloutState: SUCCEEDED rolloutUpdateTime: '2021-04-15T00:53:53.094041Z' name: projects/3841234882888/locations/asia-south1-a/osPolicyAssignments/my-os-policy-assignment/operations/cfb78790-41d8-40d1-b8a1-1eaf6011b909 response: '@type': type.googleapis.com/google.cloud.osconfig.$$api-version$$.OSPolicyAssignment baseline: true description: My test policy instanceFilter: inclusionLabels: - labels: label-key-not-targeting-instances: label-value-not-targeting-instances name: projects/3841234882888/locations/asia-south1-a/osPolicyAssignments/my-os-policy-assignment osPolicies: - id: q-test-policy mode: ENFORCEMENT resourceGroups: - osFilter: osShortName: centos osVersion: '7' resources: - id: add-repo repository: yum: baseUrl: https://packages.cloud.google.com/yum/repos/google-cloud-ops-agent-el7-x86_64-all
ロールアウトのキャンセル
コンソール
gcloud
ロールアウトをキャンセルするには、
gcloud compute os-config os-policy-assignments operations cancel
コマンドを使用します。gcloud compute os-config os-policy-assignments operations cancel FULLY_QUALIFIED_OPERATION_NAME
FULLY_QUALIFIED_OPERATION_NAME
は、作成、更新、削除の各オペレーションで返される完全修飾リソース名に置き換えます。例
gcloud compute os-config os-policy-assignments operations cancel \ projects/384123488288/locations/asia-south1-a/osPolicyAssignments/my-os-policy-assignment/operations/fb2011d6-61de-46f1-afdb-bc96bdb3fbaa
コマンドが成功した場合、出力は返されません。
次のステップ
特に記載のない限り、このページのコンテンツはクリエイティブ・コモンズの表示 4.0 ライセンスにより使用許諾されます。コードサンプルは Apache 2.0 ライセンスにより使用許諾されます。詳しくは、Google Developers サイトのポリシーをご覧ください。Java は Oracle および関連会社の登録商標です。
最終更新日 2025-07-26 UTC。
[[["わかりやすい","easyToUnderstand","thumb-up"],["問題の解決に役立った","solvedMyProblem","thumb-up"],["その他","otherUp","thumb-up"]],[["必要な情報がない","missingTheInformationINeed","thumb-down"],["複雑すぎる / 手順が多すぎる","tooComplicatedTooManySteps","thumb-down"],["最新ではない","outOfDate","thumb-down"],["翻訳に関する問題","translationIssue","thumb-down"],["サンプル / コードに問題がある","samplesCodeIssue","thumb-down"],["その他","otherDown","thumb-down"]],["最終更新日 2025-07-26 UTC。"],[[["OS policies are used to maintain consistent software configurations across both Linux and Windows virtual machine instances."],["Managing OS policies requires specific IAM permissions, with roles such as OSPolicyAssignment Admin, Editor, and Viewer to control access and prevent unintended code execution on VMs."],["Creating an OS policy assignment involves setting up VM Manager, defining OS policy resources, specifying target VMs, and configuring a rollout plan using the console, gcloud CLI, Terraform, or REST API methods."],["OS policy assignments are deployed gradually via a rollout rate, allowing for intervention and cancellation if regressions are detected, and each assignment results in a long-running operation that can be monitored or canceled."],["Setting up the gcloud CLI with the proper authorization and default regions is required for gcloud and REST implementation of OS policy assignments."]]],[]] -