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.



1916
1917
1918
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 1916

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)


1862
1863
1864
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 1862

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



1868
1869
1870
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 1868

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)


1874
1875
1876
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 1874

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)


1881
1882
1883
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 1881

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)


1890
1891
1892
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 1890

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)


1900
1901
1902
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 1900

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)


1909
1910
1911
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 1909

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



1914
1915
1916
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 1914

def se_linux_options
  @se_linux_options
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
# File 'lib/google/apis/run_v1alpha1/classes.rb', line 1921

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