Class: Google::Apis::ComputeV1::SecurityPolicy
- Inherits:
-
Object
- Object
- Google::Apis::ComputeV1::SecurityPolicy
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/compute_v1/classes.rb,
lib/google/apis/compute_v1/representations.rb,
lib/google/apis/compute_v1/representations.rb
Overview
Represents a Google Cloud Armor security policy resource. Only external backend services that use load balancers can reference a security policy. For more information, see Google Cloud Armor security policy overview.
Instance Attribute Summary collapse
-
#adaptive_protection_config ⇒ Google::Apis::ComputeV1::SecurityPolicyAdaptiveProtectionConfig
Configuration options for Cloud Armor Adaptive Protection (CAAP).
-
#advanced_options_config ⇒ Google::Apis::ComputeV1::SecurityPolicyAdvancedOptionsConfig
Corresponds to the JSON property
advancedOptionsConfig. -
#creation_timestamp ⇒ String
[Output Only] Creation timestamp in RFC3339 text format.
-
#description ⇒ String
An optional description of this resource.
-
#fingerprint ⇒ String
Specifies a fingerprint for this resource, which is essentially a hash of the metadata's contents and used for optimistic locking.
-
#id ⇒ Fixnum
[Output Only] The unique identifier for the resource.
-
#kind ⇒ String
[Output only] Type of the resource.
-
#name ⇒ String
Name of the resource.
-
#recaptcha_options_config ⇒ Google::Apis::ComputeV1::SecurityPolicyRecaptchaOptionsConfig
Corresponds to the JSON property
recaptchaOptionsConfig. -
#rules ⇒ Array<Google::Apis::ComputeV1::SecurityPolicyRule>
A list of rules that belong to this policy.
-
#self_link ⇒ String
[Output Only] Server-defined URL for the resource.
-
#type ⇒ String
The type indicates the intended use of the security policy.
Instance Method Summary collapse
-
#initialize(**args) ⇒ SecurityPolicy
constructor
A new instance of SecurityPolicy.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ SecurityPolicy
Returns a new instance of SecurityPolicy.
30761 30762 30763 |
# File 'lib/google/apis/compute_v1/classes.rb', line 30761 def initialize(**args) update!(**args) end |
Instance Attribute Details
#adaptive_protection_config ⇒ Google::Apis::ComputeV1::SecurityPolicyAdaptiveProtectionConfig
Configuration options for Cloud Armor Adaptive Protection (CAAP).
Corresponds to the JSON property adaptiveProtectionConfig
30676 30677 30678 |
# File 'lib/google/apis/compute_v1/classes.rb', line 30676 def adaptive_protection_config @adaptive_protection_config end |
#advanced_options_config ⇒ Google::Apis::ComputeV1::SecurityPolicyAdvancedOptionsConfig
Corresponds to the JSON property advancedOptionsConfig
30681 30682 30683 |
# File 'lib/google/apis/compute_v1/classes.rb', line 30681 def @advanced_options_config end |
#creation_timestamp ⇒ String
[Output Only] Creation timestamp in RFC3339 text format.
Corresponds to the JSON property creationTimestamp
30686 30687 30688 |
# File 'lib/google/apis/compute_v1/classes.rb', line 30686 def @creation_timestamp end |
#description ⇒ String
An optional description of this resource. Provide this property when you
create the resource.
Corresponds to the JSON property description
30692 30693 30694 |
# File 'lib/google/apis/compute_v1/classes.rb', line 30692 def description @description end |
#fingerprint ⇒ String
Specifies a fingerprint for this resource, which is essentially a hash of the
metadata's contents and used for optimistic locking. The fingerprint is
initially generated by Compute Engine and changes after every request to
modify or update metadata. You must always provide an up-to-date fingerprint
hash in order to update or change metadata, otherwise the request will fail
with error 412 conditionNotMet. To see the latest fingerprint, make get()
request to the security policy.
Corresponds to the JSON property fingerprint
NOTE: Values are automatically base64 encoded/decoded in the client library.
30704 30705 30706 |
# File 'lib/google/apis/compute_v1/classes.rb', line 30704 def fingerprint @fingerprint end |
#id ⇒ Fixnum
[Output Only] The unique identifier for the resource. This identifier is
defined by the server.
Corresponds to the JSON property id
30710 30711 30712 |
# File 'lib/google/apis/compute_v1/classes.rb', line 30710 def id @id end |
#kind ⇒ String
[Output only] Type of the resource. Always compute#securityPolicyfor security
policies
Corresponds to the JSON property kind
30716 30717 30718 |
# File 'lib/google/apis/compute_v1/classes.rb', line 30716 def kind @kind end |
#name ⇒ String
Name of the resource. Provided by the client when the resource is created. The
name must be 1-63 characters long, and comply with RFC1035. Specifically, the
name must be 1-63 characters long and match the regular expression [a-z]([-a-
z0-9]*[a-z0-9])? which means the first character must be a lowercase letter,
and all following characters must be a dash, lowercase letter, or digit,
except the last character, which cannot be a dash.
Corresponds to the JSON property name
30726 30727 30728 |
# File 'lib/google/apis/compute_v1/classes.rb', line 30726 def name @name end |
#recaptcha_options_config ⇒ Google::Apis::ComputeV1::SecurityPolicyRecaptchaOptionsConfig
Corresponds to the JSON property recaptchaOptionsConfig
30731 30732 30733 |
# File 'lib/google/apis/compute_v1/classes.rb', line 30731 def @recaptcha_options_config end |
#rules ⇒ Array<Google::Apis::ComputeV1::SecurityPolicyRule>
A list of rules that belong to this policy. There must always be a default
rule (rule with priority 2147483647 and match "*"). If no rules are provided
when creating a security policy, a default rule with action "allow" will be
added.
Corresponds to the JSON property rules
30739 30740 30741 |
# File 'lib/google/apis/compute_v1/classes.rb', line 30739 def rules @rules end |
#self_link ⇒ String
[Output Only] Server-defined URL for the resource.
Corresponds to the JSON property selfLink
30744 30745 30746 |
# File 'lib/google/apis/compute_v1/classes.rb', line 30744 def self_link @self_link end |
#type ⇒ String
The type indicates the intended use of the security policy. - CLOUD_ARMOR:
Cloud Armor backend security policies can be configured to filter incoming
HTTP requests targeting backend services. They filter requests before they hit
the origin servers. - CLOUD_ARMOR_EDGE: Cloud Armor edge security policies can
be configured to filter incoming HTTP requests targeting backend services (
including Cloud CDN-enabled) as well as backend buckets (Cloud Storage). They
filter requests before the request is served from Google's cache. -
CLOUD_ARMOR_INTERNAL_SERVICE: Cloud Armor internal service policies can be
configured to filter HTTP requests targeting services managed by Traffic
Director in a service mesh. They filter requests before the request is served
from the application. This field can be set only at resource creation time.
Corresponds to the JSON property type
30759 30760 30761 |
# File 'lib/google/apis/compute_v1/classes.rb', line 30759 def type @type end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
30766 30767 30768 30769 30770 30771 30772 30773 30774 30775 30776 30777 30778 30779 |
# File 'lib/google/apis/compute_v1/classes.rb', line 30766 def update!(**args) @adaptive_protection_config = args[:adaptive_protection_config] if args.key?(:adaptive_protection_config) @advanced_options_config = args[:advanced_options_config] if args.key?(:advanced_options_config) @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) @description = args[:description] if args.key?(:description) @fingerprint = args[:fingerprint] if args.key?(:fingerprint) @id = args[:id] if args.key?(:id) @kind = args[:kind] if args.key?(:kind) @name = args[:name] if args.key?(:name) @recaptcha_options_config = args[:recaptcha_options_config] if args.key?(:recaptcha_options_config) @rules = args[:rules] if args.key?(:rules) @self_link = args[:self_link] if args.key?(:self_link) @type = args[:type] if args.key?(:type) end |