class Google::Apis::CloudassetV1p5beta1::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[RW]

Allowed device management levels, an empty list allows all management levels. Corresponds to the JSON property `allowedDeviceManagementLevels` @return [Array<String>]

allowed_encryption_statuses[RW]

Allowed encryptions statuses, an empty list allows all statuses. Corresponds to the JSON property `allowedEncryptionStatuses` @return [Array<String>]

os_constraints[RW]

Allowed OS versions, an empty list allows all types and all versions. Corresponds to the JSON property `osConstraints` @return [Array<Google::Apis::CloudassetV1p5beta1::GoogleIdentityAccesscontextmanagerV1OsConstraint>]

require_admin_approval[RW]

Whether the device needs to be approved by the customer admin. Corresponds to the JSON property `requireAdminApproval` @return [Boolean]

require_admin_approval?[RW]

Whether the device needs to be approved by the customer admin. Corresponds to the JSON property `requireAdminApproval` @return [Boolean]

require_corp_owned[RW]

Whether the device needs to be corp owned. Corresponds to the JSON property `requireCorpOwned` @return [Boolean]

require_corp_owned?[RW]

Whether the device needs to be corp owned. Corresponds to the JSON property `requireCorpOwned` @return [Boolean]

require_screenlock[RW]

Whether or not screenlock is required for the DevicePolicy to be true. Defaults to `false`. Corresponds to the JSON property `requireScreenlock` @return [Boolean]

require_screenlock?[RW]

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

new(**args) click to toggle source
# File lib/google/apis/cloudasset_v1p5beta1/classes.rb, line 1287
def initialize(**args)
   update!(**args)
end

Public Instance Methods

update!(**args) click to toggle source

Update properties of this object

# File lib/google/apis/cloudasset_v1p5beta1/classes.rb, line 1292
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