Class: Google::Apis::RunV1alpha1::SecurityContext

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/run_v1alpha1/classes.rb,
lib/google/apis/run_v1alpha1/representations.rb,
lib/google/apis/run_v1alpha1/representations.rb

Overview

SecurityContext holds security configuration that will be applied to a container. Some fields are present in both SecurityContext and PodSecurityContext. When both are set, the values in SecurityContext take precedence.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ SecurityContext

Returns a new instance of SecurityContext.



3430
3431
3432
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 3430

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#allow_privilege_escalationBoolean Also known as: allow_privilege_escalation?

AllowPrivilegeEscalation controls whether a process can gain more privileges than its parent process. This bool directly controls if the no_new_privs flag will be set on the container process. AllowPrivilegeEscalation is true always when the container is: 1) run as Privileged 2) has CAP_SYS_ADMIN +optional Corresponds to the JSON property allowPrivilegeEscalation

Returns:

  • (Boolean)


3376
3377
3378
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 3376

def allow_privilege_escalation
  @allow_privilege_escalation
end

#capabilitiesGoogle::Apis::RunV1alpha1::Capabilities

Adds and removes POSIX capabilities from running containers. Corresponds to the JSON property capabilities



3382
3383
3384
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 3382

def capabilities
  @capabilities
end

#privilegedBoolean Also known as: privileged?

Run container in privileged mode. Processes in privileged containers are essentially equivalent to root on the host. Defaults to false. +optional Corresponds to the JSON property privileged

Returns:

  • (Boolean)


3388
3389
3390
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 3388

def privileged
  @privileged
end

#read_only_root_filesystemBoolean Also known as: read_only_root_filesystem?

Whether this container has a read-only root filesystem. Default is false. + optional Corresponds to the JSON property readOnlyRootFilesystem

Returns:

  • (Boolean)


3395
3396
3397
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 3395

def read_only_root_filesystem
  @read_only_root_filesystem
end

#run_as_groupFixnum

The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. +optional Corresponds to the JSON property runAsGroup

Returns:

  • (Fixnum)


3404
3405
3406
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 3404

def run_as_group
  @run_as_group
end

#run_as_non_rootBoolean Also known as: run_as_non_root?

Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 ( root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. +optional Corresponds to the JSON property runAsNonRoot

Returns:

  • (Boolean)


3414
3415
3416
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 3414

def run_as_non_root
  @run_as_non_root
end

#run_as_userFixnum

The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. +optional Corresponds to the JSON property runAsUser

Returns:

  • (Fixnum)


3423
3424
3425
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 3423

def run_as_user
  @run_as_user
end

#se_linux_optionsGoogle::Apis::RunV1alpha1::SeLinuxOptions

SELinuxOptions are the labels to be applied to the container Corresponds to the JSON property seLinuxOptions



3428
3429
3430
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 3428

def se_linux_options
  @se_linux_options
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3435
3436
3437
3438
3439
3440
3441
3442
3443
3444
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 3435

def update!(**args)
  @allow_privilege_escalation = args[:allow_privilege_escalation] if args.key?(:allow_privilege_escalation)
  @capabilities = args[:capabilities] if args.key?(:capabilities)
  @privileged = args[:privileged] if args.key?(:privileged)
  @read_only_root_filesystem = args[:read_only_root_filesystem] if args.key?(:read_only_root_filesystem)
  @run_as_group = args[:run_as_group] if args.key?(:run_as_group)
  @run_as_non_root = args[:run_as_non_root] if args.key?(:run_as_non_root)
  @run_as_user = args[:run_as_user] if args.key?(:run_as_user)
  @se_linux_options = args[:se_linux_options] if args.key?(:se_linux_options)
end