Classes
CreateOSPolicyAssignmentRequest
A request message to create an OS policy assignment
CVSSv3
Common Vulnerability Scoring System version 3. For details, see https://www.first.org/cvss/specification-document
CVSSv3.Types
Container for nested types declared in the CVSSv3 message type.
DeleteOSPolicyAssignmentRequest
A request message for deleting a OS policy assignment.
FixedOrPercent
Message encapsulating a value that can be either absolute ("fixed") or relative ("percent") to a value.
GetInstanceOSPoliciesComplianceRequest
A request message for getting OS policies compliance data for the given Compute Engine VM instance.
GetInventoryRequest
A request message for getting inventory data for the specified VM.
GetOSPolicyAssignmentReportRequest
Get a report of the OS policy assignment for a VM instance.
GetOSPolicyAssignmentRequest
A request message to get an OS policy assignment
GetVulnerabilityReportRequest
A request message for getting the vulnerability report for the specified VM.
InstanceName
Resource name for the Instance
resource.
InstanceOSPoliciesCompliance
This API resource represents the OS policies compliance data for a Compute Engine virtual machine (VM) instance at a given point in time.
A Compute Engine VM can have multiple OS policy assignments, and each assignment can have multiple OS policies. As a result, multiple OS policies could be applied to a single VM.
You can use this API resource to determine both the compliance state of your VM as well as the compliance state of an individual OS policy.
For more information, see View compliance.
InstanceOSPoliciesCompliance.Types
Container for nested types declared in the InstanceOSPoliciesCompliance message type.
InstanceOSPoliciesCompliance.Types.OSPolicyCompliance
Compliance data for an OS policy
InstanceOSPoliciesComplianceName
Resource name for the InstanceOSPoliciesCompliance
resource.
InstanceOSPolicyAssignmentName
Resource name for the InstanceOSPolicyAssignment
resource.
Inventory
This API resource represents the available inventory data for a Compute Engine virtual machine (VM) instance at a given point in time.
You can use this API resource to determine the inventory data of your VM.
For more information, see Information provided by OS inventory management.
Inventory.Types
Container for nested types declared in the Inventory message type.
Inventory.Types.Item
A single piece of inventory on a VM.
Inventory.Types.Item.Types
Container for nested types declared in the Item message type.
Inventory.Types.OsInfo
Operating system information for the VM.
Inventory.Types.SoftwarePackage
Software package information of the operating system.
Inventory.Types.VersionedPackage
Information related to the a standard versioned package. This includes package info for APT, Yum, Zypper, and Googet package managers.
Inventory.Types.WindowsApplication
Contains information about a Windows application that is retrieved from the Windows Registry. For more information about these fields, see: https://docs.microsoft.com/en-us/windows/win32/msi/uninstall-registry-key
Inventory.Types.WindowsQuickFixEngineeringPackage
Information related to a Quick Fix Engineering package. Fields are taken from Windows QuickFixEngineering Interface and match the source names: https://docs.microsoft.com/en-us/windows/win32/cimwin32prov/win32-quickfixengineering
Inventory.Types.WindowsUpdatePackage
Details related to a Windows Update package. Field data and names are taken from Windows Update API IUpdate Interface: https://docs.microsoft.com/en-us/windows/win32/api/_wua/ Descriptive fields like title, and description are localized based on the locale of the VM being updated.
Inventory.Types.WindowsUpdatePackage.Types
Container for nested types declared in the WindowsUpdatePackage message type.
Inventory.Types.WindowsUpdatePackage.Types.WindowsUpdateCategory
Categories specified by the Windows Update.
Inventory.Types.ZypperPatch
Details related to a Zypper Patch.
InventoryName
Resource name for the Inventory
resource.
ListInstanceOSPoliciesCompliancesRequest
A request message for listing OS policies compliance data for all Compute Engine VMs in the given location.
ListInstanceOSPoliciesCompliancesResponse
A response message for listing OS policies compliance data for all Compute Engine VMs in the given location.
ListInventoriesRequest
A request message for listing inventory data for all VMs in the specified location.
ListInventoriesResponse
A response message for listing inventory data for all VMs in a specified location.
ListOSPolicyAssignmentReportsRequest
List the OS policy assignment reports for VM instances.
ListOSPolicyAssignmentReportsResponse
A response message for listing OS Policy assignment reports including the page of results and page token.
ListOSPolicyAssignmentRevisionsRequest
A request message to list revisions for a OS policy assignment
ListOSPolicyAssignmentRevisionsResponse
A response message for listing all revisions for a OS policy assignment.
ListOSPolicyAssignmentsRequest
A request message to list OS policy assignments for a parent resource
ListOSPolicyAssignmentsResponse
A response message for listing all assignments under given parent.
ListVulnerabilityReportsRequest
A request message for listing vulnerability reports for all VM instances in the specified location.
ListVulnerabilityReportsResponse
A response message for listing vulnerability reports for all VM instances in the specified location.
OsConfigZonalService
Zonal OS Config API
The OS Config service is the server-side component that allows users to manage package installations and patch jobs for Compute Engine VM instances.
OsConfigZonalService.OsConfigZonalServiceBase
Base class for server-side implementations of OsConfigZonalService
OsConfigZonalService.OsConfigZonalServiceClient
Client for OsConfigZonalService
OsConfigZonalServiceClient
OsConfigZonalService client wrapper, for convenient use.
OsConfigZonalServiceClientBuilder
Builder class for OsConfigZonalServiceClient to provide simple configuration of credentials, endpoint etc.
OsConfigZonalServiceClientImpl
OsConfigZonalService client wrapper implementation, for convenient use.
OsConfigZonalServiceSettings
Settings for OsConfigZonalServiceClient instances.
OSPolicy
An OS policy defines the desired state configuration for a VM.
OSPolicy.Types
Container for nested types declared in the OSPolicy message type.
OSPolicy.Types.InventoryFilter
Filtering criteria to select VMs based on inventory details.
OSPolicy.Types.OSFilter
Filtering criteria to select VMs based on OS details.
OSPolicy.Types.Resource
An OS policy resource is used to define the desired state configuration and provides a specific functionality like installing/removing packages, executing a script etc.
The system ensures that resources are always in their desired state by taking necessary actions if they have drifted from their desired state.
OSPolicy.Types.Resource.Types
Container for nested types declared in the Resource message type.
OSPolicy.Types.Resource.Types.ExecResource
A resource that allows executing scripts on the VM.
The ExecResource
has 2 stages: validate
and enforce
and both stages
accept a script as an argument to execute.
When the ExecResource
is applied by the agent, it first executes the
script in the validate
stage. The validate
stage can signal that the
ExecResource
is already in the desired state by returning an exit code
of 100
. If the ExecResource
is not in the desired state, it should
return an exit code of 101
. Any other exit code returned by this stage
is considered an error.
If the ExecResource
is not in the desired state based on the exit code
from the validate
stage, the agent proceeds to execute the script from
the enforce
stage. If the ExecResource
is already in the desired
state, the enforce
stage will not be run.
Similar to validate
stage, the enforce
stage should return an exit
code of 100
to indicate that the resource in now in its desired state.
Any other exit code is considered an error.
NOTE: An exit code of 100
was chosen over 0
(and 101
vs 1
) to
have an explicit indicator of in desired state
, not in desired state
and errors. Because, for example, Powershell will always return an exit
code of 0
unless an exit
statement is provided in the script. So, for
reasons of consistency and being explicit, exit codes 100
and 101
were chosen.
OSPolicy.Types.Resource.Types.ExecResource.Types
Container for nested types declared in the ExecResource message type.
OSPolicy.Types.Resource.Types.ExecResource.Types.Exec
A file or script to execute.
OSPolicy.Types.Resource.Types.ExecResource.Types.Exec.Types
Container for nested types declared in the Exec message type.
OSPolicy.Types.Resource.Types.File
A remote or local file.
OSPolicy.Types.Resource.Types.File.Types
Container for nested types declared in the File message type.
OSPolicy.Types.Resource.Types.File.Types.Gcs
Specifies a file available as a Cloud Storage Object.
OSPolicy.Types.Resource.Types.File.Types.Remote
Specifies a file available via some URI.
OSPolicy.Types.Resource.Types.FileResource
A resource that manages the state of a file.
OSPolicy.Types.Resource.Types.FileResource.Types
Container for nested types declared in the FileResource message type.
OSPolicy.Types.Resource.Types.PackageResource
A resource that manages a system package.
OSPolicy.Types.Resource.Types.PackageResource.Types
Container for nested types declared in the PackageResource message type.
OSPolicy.Types.Resource.Types.PackageResource.Types.APT
A package managed by APT.
- install:
apt-get update && apt-get -y install [name]
- remove:
apt-get -y remove [name]
OSPolicy.Types.Resource.Types.PackageResource.Types.Deb
A deb package file. dpkg packages only support INSTALLED state.
OSPolicy.Types.Resource.Types.PackageResource.Types.GooGet
A package managed by GooGet.
- install:
googet -noconfirm install package
- remove:
googet -noconfirm remove package
OSPolicy.Types.Resource.Types.PackageResource.Types.MSI
An MSI package. MSI packages only support INSTALLED state.
OSPolicy.Types.Resource.Types.PackageResource.Types.RPM
An RPM package file. RPM packages only support INSTALLED state.
OSPolicy.Types.Resource.Types.PackageResource.Types.YUM
A package managed by YUM.
- install:
yum -y install package
- remove:
yum -y remove package
OSPolicy.Types.Resource.Types.PackageResource.Types.Zypper
A package managed by Zypper.
- install:
zypper -y install package
- remove:
zypper -y rm package
OSPolicy.Types.Resource.Types.RepositoryResource
A resource that manages a package repository.
OSPolicy.Types.Resource.Types.RepositoryResource.Types
Container for nested types declared in the RepositoryResource message type.
OSPolicy.Types.Resource.Types.RepositoryResource.Types.AptRepository
Represents a single apt package repository. These will be added to
a repo file that will be managed at
/etc/apt/sources.list.d/google_osconfig.list
.
OSPolicy.Types.Resource.Types.RepositoryResource.Types.AptRepository.Types
Container for nested types declared in the AptRepository message type.
OSPolicy.Types.Resource.Types.RepositoryResource.Types.GooRepository
Represents a Goo package repository. These are added to a repo file
that is managed at
C:/ProgramData/GooGet/repos/google_osconfig.repo
.
OSPolicy.Types.Resource.Types.RepositoryResource.Types.YumRepository
Represents a single yum package repository. These are added to a
repo file that is managed at
/etc/yum.repos.d/google_osconfig.repo
.
OSPolicy.Types.Resource.Types.RepositoryResource.Types.ZypperRepository
Represents a single zypper package repository. These are added to a
repo file that is managed at
/etc/zypp/repos.d/google_osconfig.repo
.
OSPolicy.Types.ResourceGroup
Resource groups provide a mechanism to group OS policy resources.
Resource groups enable OS policy authors to create a single OS policy to be applied to VMs running different operating Systems.
When the OS policy is applied to a target VM, the appropriate resource
group within the OS policy is selected based on the OSFilter
specified
within the resource group.
OSPolicyAssignment
OS policy assignment is an API resource that is used to apply a set of OS policies to a dynamically targeted group of Compute Engine VM instances.
An OS policy is used to define the desired state configuration for a Compute Engine VM instance through a set of configuration resources that provide capabilities such as installing or removing software packages, or executing a script.
For more information, see OS policy and OS policy assignment.
OSPolicyAssignment.Types
Container for nested types declared in the OSPolicyAssignment message type.
OSPolicyAssignment.Types.InstanceFilter
Filters to select target VMs for an assignment.
If more than one filter criteria is specified below, a VM will be selected if and only if it satisfies all of them.
OSPolicyAssignment.Types.InstanceFilter.Types
Container for nested types declared in the InstanceFilter message type.
OSPolicyAssignment.Types.InstanceFilter.Types.Inventory
VM inventory details.
OSPolicyAssignment.Types.LabelSet
Message representing label set.
- A label is a key value pair set for a VM.
- A LabelSet is a set of labels.
- Labels within a LabelSet are ANDed. In other words, a LabelSet is applicable for a VM only if it matches all the labels in the LabelSet.
- Example: A LabelSet with 2 labels:
env=prod
andtype=webserver
will only be applicable for those VMs with both labels present.
OSPolicyAssignment.Types.Rollout
Message to configure the rollout at the zonal level for the OS policy assignment.
OSPolicyAssignmentName
Resource name for the OSPolicyAssignment
resource.
OSPolicyAssignmentOperationMetadata
OS policy assignment operation metadata provided by OS policy assignment API methods that return long running operations.
OSPolicyAssignmentOperationMetadata.Types
Container for nested types declared in the OSPolicyAssignmentOperationMetadata message type.
OSPolicyAssignmentReport
A report of the OS policy assignment status for a given instance.
OSPolicyAssignmentReport.Types
Container for nested types declared in the OSPolicyAssignmentReport message type.
OSPolicyAssignmentReport.Types.OSPolicyCompliance
Compliance data for an OS policy
OSPolicyAssignmentReport.Types.OSPolicyCompliance.Types
Container for nested types declared in the OSPolicyCompliance message type.
OSPolicyAssignmentReport.Types.OSPolicyCompliance.Types.OSPolicyResourceCompliance
Compliance data for an OS policy resource.
OSPolicyAssignmentReport.Types.OSPolicyCompliance.Types.OSPolicyResourceCompliance.Types
Container for nested types declared in the OSPolicyResourceCompliance message type.
OSPolicyAssignmentReport.Types.OSPolicyCompliance.Types.OSPolicyResourceCompliance.Types.ExecResourceOutput
ExecResource specific output.
OSPolicyAssignmentReport.Types.OSPolicyCompliance.Types.OSPolicyResourceCompliance.Types.OSPolicyResourceConfigStep
Step performed by the OS Config agent for configuring an
OSPolicy
resource to its desired state.
OSPolicyAssignmentReport.Types.OSPolicyCompliance.Types.OSPolicyResourceCompliance.Types.OSPolicyResourceConfigStep.Types
Container for nested types declared in the OSPolicyResourceConfigStep message type.
OSPolicyAssignmentReportName
Resource name for the OSPolicyAssignmentReport
resource.
OSPolicyResourceCompliance
Compliance data for an OS policy resource.
OSPolicyResourceCompliance.Types
Container for nested types declared in the OSPolicyResourceCompliance message type.
OSPolicyResourceCompliance.Types.ExecResourceOutput
ExecResource specific output.
OSPolicyResourceConfigStep
Step performed by the OS Config agent for configuring an OSPolicyResource
to its desired state.
OSPolicyResourceConfigStep.Types
Container for nested types declared in the OSPolicyResourceConfigStep message type.
UpdateOSPolicyAssignmentRequest
A request message to update an OS policy assignment
VulnerabilityReport
This API resource represents the vulnerability report for a specified Compute Engine virtual machine (VM) instance at a given point in time.
For more information, see Vulnerability reports.
VulnerabilityReport.Types
Container for nested types declared in the VulnerabilityReport message type.
VulnerabilityReport.Types.Vulnerability
A vulnerability affecting the VM instance.
VulnerabilityReport.Types.Vulnerability.Types
Container for nested types declared in the Vulnerability message type.
VulnerabilityReport.Types.Vulnerability.Types.Details
Contains metadata information for the vulnerability. This information is collected from the upstream feed of the operating system.
VulnerabilityReport.Types.Vulnerability.Types.Details.Types
Container for nested types declared in the Details message type.
VulnerabilityReport.Types.Vulnerability.Types.Details.Types.Reference
A reference for this vulnerability.
VulnerabilityReport.Types.Vulnerability.Types.Item
OS inventory item that is affected by a vulnerability or fixed as a result of a vulnerability.
VulnerabilityReportName
Resource name for the VulnerabilityReport
resource.
Enums
CVSSv3.Types.AttackComplexity
This metric describes the conditions beyond the attacker's control that must exist in order to exploit the vulnerability.
CVSSv3.Types.AttackVector
This metric reflects the context by which vulnerability exploitation is possible.
CVSSv3.Types.Impact
The Impact metrics capture the effects of a successfully exploited vulnerability on the component that suffers the worst outcome that is most directly and predictably associated with the attack.
CVSSv3.Types.PrivilegesRequired
This metric describes the level of privileges an attacker must possess before successfully exploiting the vulnerability.
CVSSv3.Types.Scope
The Scope metric captures whether a vulnerability in one vulnerable component impacts resources in components beyond its security scope.
CVSSv3.Types.UserInteraction
This metric captures the requirement for a human user, other than the attacker, to participate in the successful compromise of the vulnerable component.
FixedOrPercent.ModeOneofCase
Enum of possible cases for the "mode" oneof.
InstanceName.ResourceNameType
The possible contents of InstanceName.
InstanceOSPoliciesComplianceName.ResourceNameType
The possible contents of InstanceOSPoliciesComplianceName.
InstanceOSPolicyAssignmentName.ResourceNameType
The possible contents of InstanceOSPolicyAssignmentName.
Inventory.Types.Item.DetailsOneofCase
Enum of possible cases for the "details" oneof.
Inventory.Types.Item.Types.OriginType
The origin of a specific inventory item.
Inventory.Types.Item.Types.Type
The different types of inventory that are tracked on a VM.
Inventory.Types.SoftwarePackage.DetailsOneofCase
Enum of possible cases for the "details" oneof.
InventoryName.ResourceNameType
The possible contents of InventoryName.
InventoryView
The view for inventory objects.
OSPolicy.Types.Mode
Policy mode
OSPolicy.Types.Resource.ResourceTypeOneofCase
Enum of possible cases for the "resource_type" oneof.
OSPolicy.Types.Resource.Types.ExecResource.Types.Exec.SourceOneofCase
Enum of possible cases for the "source" oneof.
OSPolicy.Types.Resource.Types.ExecResource.Types.Exec.Types.Interpreter
The interpreter to use.
OSPolicy.Types.Resource.Types.File.TypeOneofCase
Enum of possible cases for the "type" oneof.
OSPolicy.Types.Resource.Types.FileResource.SourceOneofCase
Enum of possible cases for the "source" oneof.
OSPolicy.Types.Resource.Types.FileResource.Types.DesiredState
Desired state of the file.
OSPolicy.Types.Resource.Types.PackageResource.SystemPackageOneofCase
Enum of possible cases for the "system_package" oneof.
OSPolicy.Types.Resource.Types.PackageResource.Types.DesiredState
The desired state that the OS Config agent maintains on the VM.
OSPolicy.Types.Resource.Types.RepositoryResource.RepositoryOneofCase
Enum of possible cases for the "repository" oneof.
OSPolicy.Types.Resource.Types.RepositoryResource.Types.AptRepository.Types.ArchiveType
Type of archive.
OSPolicyAssignment.Types.RolloutState
OS policy assignment rollout state
OSPolicyAssignmentName.ResourceNameType
The possible contents of OSPolicyAssignmentName.
OSPolicyAssignmentOperationMetadata.Types.APIMethod
The OS policy assignment API method.
OSPolicyAssignmentOperationMetadata.Types.RolloutState
State of the rollout
OSPolicyAssignmentReport.Types.OSPolicyCompliance.Types.ComplianceState
Possible compliance states for an os policy.
OSPolicyAssignmentReport.Types.OSPolicyCompliance.Types.OSPolicyResourceCompliance.OutputOneofCase
Enum of possible cases for the "output" oneof.
OSPolicyAssignmentReport.Types.OSPolicyCompliance.Types.OSPolicyResourceCompliance.Types.ComplianceState
Possible compliance states for a resource.
OSPolicyAssignmentReport.Types.OSPolicyCompliance.Types.OSPolicyResourceCompliance.Types.OSPolicyResourceConfigStep.Types.Type
Supported configuration step types
OSPolicyAssignmentReportName.ResourceNameType
The possible contents of OSPolicyAssignmentReportName.
OSPolicyComplianceState
Supported OSPolicy compliance states.
OSPolicyResourceCompliance.OutputOneofCase
Enum of possible cases for the "output" oneof.
OSPolicyResourceConfigStep.Types.Outcome
Supported outcomes for a configuration step.
OSPolicyResourceConfigStep.Types.Type
Supported configuration step types
VulnerabilityReportName.ResourceNameType
The possible contents of VulnerabilityReportName.