class Google::Apis::CloudassetV1p7beta1::GoogleIdentityAccesscontextmanagerV1DevicePolicy
`DevicePolicy` specifies device specific restrictions necessary to acquire a given access level. A `DevicePolicy` specifies requirements for requests from devices to be granted access levels, it does not do any enforcement on the device. `DevicePolicy` acts as an AND over all specified fields, and each repeated field is an OR over its elements. Any unset fields are ignored. For example, if the proto is ` os_type : DESKTOP_WINDOWS, os_type : DESKTOP_LINUX, encryption_status: ENCRYPTED`, then the DevicePolicy will be true for requests originating from encrypted Linux desktops and encrypted Windows desktops.
Attributes
Allowed device management levels, an empty list allows all management levels. Corresponds to the JSON property `allowedDeviceManagementLevels` @return [Array<String>]
Allowed encryptions statuses, an empty list allows all statuses. Corresponds to the JSON property `allowedEncryptionStatuses` @return [Array<String>]
Allowed OS versions, an empty list allows all types and all versions. Corresponds to the JSON property `osConstraints` @return [Array<Google::Apis::CloudassetV1p7beta1::GoogleIdentityAccesscontextmanagerV1OsConstraint>]
Whether the device needs to be approved by the customer admin. Corresponds to the JSON property `requireAdminApproval` @return [Boolean]
Whether the device needs to be approved by the customer admin. Corresponds to the JSON property `requireAdminApproval` @return [Boolean]
Whether the device needs to be corp owned. Corresponds to the JSON property `requireCorpOwned` @return [Boolean]
Whether the device needs to be corp owned. Corresponds to the JSON property `requireCorpOwned` @return [Boolean]
Whether or not screenlock is required for the DevicePolicy to be true. Defaults to `false`. Corresponds to the JSON property `requireScreenlock` @return [Boolean]
Whether or not screenlock is required for the DevicePolicy to be true. Defaults to `false`. Corresponds to the JSON property `requireScreenlock` @return [Boolean]
Public Class Methods
# File lib/google/apis/cloudasset_v1p7beta1/classes.rb, line 1378 def initialize(**args) update!(**args) end
Public Instance Methods
Update properties of this object
# File lib/google/apis/cloudasset_v1p7beta1/classes.rb, line 1383 def update!(**args) @allowed_device_management_levels = args[:allowed_device_management_levels] if args.key?(:allowed_device_management_levels) @allowed_encryption_statuses = args[:allowed_encryption_statuses] if args.key?(:allowed_encryption_statuses) @os_constraints = args[:os_constraints] if args.key?(:os_constraints) @require_admin_approval = args[:require_admin_approval] if args.key?(:require_admin_approval) @require_corp_owned = args[:require_corp_owned] if args.key?(:require_corp_owned) @require_screenlock = args[:require_screenlock] if args.key?(:require_screenlock) end