Class: Google::Apis::ComputeV1::SslPolicy

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
generated/google/apis/compute_v1/classes.rb,
generated/google/apis/compute_v1/representations.rb,
generated/google/apis/compute_v1/representations.rb

Overview

Represents a Cloud Armor Security Policy resource. Only external backend services used by HTTP or HTTPS load balancers can reference a Security Policy. For more information, read read Cloud Armor Security Policy Concepts. (== resource_for $api_version.sslPolicies ==)

Defined Under Namespace

Classes: Warning

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Google::Apis::Core::JsonObjectSupport

#to_json

Methods included from Google::Apis::Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ SslPolicy

Returns a new instance of SslPolicy.



26410
26411
26412
# File 'generated/google/apis/compute_v1/classes.rb', line 26410

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

Instance Attribute Details

#creation_timestampString

[Output Only] Creation timestamp in RFC3339 text format. Corresponds to the JSON property creationTimestamp

Returns:

  • (String)


26332
26333
26334
# File 'generated/google/apis/compute_v1/classes.rb', line 26332

def creation_timestamp
  @creation_timestamp
end

#custom_featuresArray<String>

A list of features enabled when the selected profile is CUSTOM. The

  • method returns the set of features that can be specified in this list. This field must be empty if the profile is not CUSTOM. Corresponds to the JSON property customFeatures

Returns:

  • (Array<String>)


26339
26340
26341
# File 'generated/google/apis/compute_v1/classes.rb', line 26339

def custom_features
  @custom_features
end

#descriptionString

An optional description of this resource. Provide this property when you create the resource. Corresponds to the JSON property description

Returns:

  • (String)


26345
26346
26347
# File 'generated/google/apis/compute_v1/classes.rb', line 26345

def description
  @description
end

#enabled_featuresArray<String>

[Output Only] The list of features enabled in the SSL policy. Corresponds to the JSON property enabledFeatures

Returns:

  • (Array<String>)


26350
26351
26352
# File 'generated/google/apis/compute_v1/classes.rb', line 26350

def enabled_features
  @enabled_features
end

#fingerprintString

Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a SslPolicy. An up-to-date fingerprint must be provided in order to update the SslPolicy, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve an SslPolicy. Corresponds to the JSON property fingerprint NOTE: Values are automatically base64 encoded/decoded in the client library.

Returns:

  • (String)


26361
26362
26363
# File 'generated/google/apis/compute_v1/classes.rb', line 26361

def fingerprint
  @fingerprint
end

#idFixnum

[Output Only] The unique identifier for the resource. This identifier is defined by the server. Corresponds to the JSON property id

Returns:

  • (Fixnum)


26367
26368
26369
# File 'generated/google/apis/compute_v1/classes.rb', line 26367

def id
  @id
end

#kindString

[Output only] Type of the resource. Always compute#sslPolicyfor SSL policies. Corresponds to the JSON property kind

Returns:

  • (String)


26372
26373
26374
# File 'generated/google/apis/compute_v1/classes.rb', line 26372

def kind
  @kind
end

#min_tls_versionString

The minimum version of SSL protocol that can be used by the clients to establish a connection with the load balancer. This can be one of TLS_1_0, TLS_1_1, TLS_1_2. Corresponds to the JSON property minTlsVersion

Returns:

  • (String)


26379
26380
26381
# File 'generated/google/apis/compute_v1/classes.rb', line 26379

def min_tls_version
  @min_tls_version
end

#nameString

Name of the resource. 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

Returns:

  • (String)


26389
26390
26391
# File 'generated/google/apis/compute_v1/classes.rb', line 26389

def name
  @name
end

#profileString

Profile specifies the set of SSL features that can be used by the load balancer when negotiating SSL with clients. This can be one of COMPATIBLE, MODERN, RESTRICTED, or CUSTOM. If using CUSTOM, the set of SSL features to enable must be specified in the customFeatures field. Corresponds to the JSON property profile

Returns:

  • (String)


26397
26398
26399
# File 'generated/google/apis/compute_v1/classes.rb', line 26397

def profile
  @profile
end

[Output Only] Server-defined URL for the resource. Corresponds to the JSON property selfLink

Returns:

  • (String)


26402
26403
26404
# File 'generated/google/apis/compute_v1/classes.rb', line 26402

def self_link
  @self_link
end

#warningsArray<Google::Apis::ComputeV1::SslPolicy::Warning>

[Output Only] If potential misconfigurations are detected for this SSL policy, this field will be populated with warning messages. Corresponds to the JSON property warnings



26408
26409
26410
# File 'generated/google/apis/compute_v1/classes.rb', line 26408

def warnings
  @warnings
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



26415
26416
26417
26418
26419
26420
26421
26422
26423
26424
26425
26426
26427
26428
# File 'generated/google/apis/compute_v1/classes.rb', line 26415

def update!(**args)
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
  @custom_features = args[:custom_features] if args.key?(:custom_features)
  @description = args[:description] if args.key?(:description)
  @enabled_features = args[:enabled_features] if args.key?(:enabled_features)
  @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
  @id = args[:id] if args.key?(:id)
  @kind = args[:kind] if args.key?(:kind)
  @min_tls_version = args[:min_tls_version] if args.key?(:min_tls_version)
  @name = args[:name] if args.key?(:name)
  @profile = args[:profile] if args.key?(:profile)
  @self_link = args[:self_link] if args.key?(:self_link)
  @warnings = args[:warnings] if args.key?(:warnings)
end