Class: Google::Apis::SqladminV1beta4::IpConfiguration

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

Overview

IP Management configuration.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ IpConfiguration

Returns a new instance of IpConfiguration.



3634
3635
3636
# File 'lib/google/apis/sqladmin_v1beta4/classes.rb', line 3634

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

Instance Attribute Details

#allocated_ip_rangeString

The name of the allocated ip range for the private ip Cloud SQL instance. For example: "google-managed-services-default". If set, the instance ip will be created in the allocated range. The range name must comply with RFC 1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])?. Corresponds to the JSON property allocatedIpRange

Returns:

  • (String)


3543
3544
3545
# File 'lib/google/apis/sqladmin_v1beta4/classes.rb', line 3543

def allocated_ip_range
  @allocated_ip_range
end

#authorized_networksArray<Google::Apis::SqladminV1beta4::AclEntry>

The list of external networks that are allowed to connect to the instance using the IP. In 'CIDR' notation, also known as 'slash' notation (for example: 157.197.200.0/24). Corresponds to the JSON property authorizedNetworks



3550
3551
3552
# File 'lib/google/apis/sqladmin_v1beta4/classes.rb', line 3550

def authorized_networks
  @authorized_networks
end

#custom_subject_alternative_namesArray<String>

Optional. Custom Subject Alternative Name(SAN)s for a Cloud SQL instance. Corresponds to the JSON property customSubjectAlternativeNames

Returns:

  • (Array<String>)


3555
3556
3557
# File 'lib/google/apis/sqladmin_v1beta4/classes.rb', line 3555

def custom_subject_alternative_names
  @custom_subject_alternative_names
end

#enable_private_path_for_google_cloud_servicesBoolean Also known as: enable_private_path_for_google_cloud_services?

Controls connectivity to private IP instances from Google services, such as BigQuery. Corresponds to the JSON property enablePrivatePathForGoogleCloudServices

Returns:

  • (Boolean)


3561
3562
3563
# File 'lib/google/apis/sqladmin_v1beta4/classes.rb', line 3561

def enable_private_path_for_google_cloud_services
  @enable_private_path_for_google_cloud_services
end

#ipv4_enabledBoolean Also known as: ipv4_enabled?

Whether the instance is assigned a public IP address or not. Corresponds to the JSON property ipv4Enabled

Returns:

  • (Boolean)


3567
3568
3569
# File 'lib/google/apis/sqladmin_v1beta4/classes.rb', line 3567

def ipv4_enabled
  @ipv4_enabled
end

#private_networkString

The resource link for the VPC network from which the Cloud SQL instance is accessible for private IP. For example, /projects/myProject/global/networks/ default. This setting can be updated, but it cannot be removed after it is set. Corresponds to the JSON property privateNetwork

Returns:

  • (String)


3576
3577
3578
# File 'lib/google/apis/sqladmin_v1beta4/classes.rb', line 3576

def private_network
  @private_network
end

#psc_configGoogle::Apis::SqladminV1beta4::PscConfig

PSC settings for a Cloud SQL instance. Corresponds to the JSON property pscConfig



3581
3582
3583
# File 'lib/google/apis/sqladmin_v1beta4/classes.rb', line 3581

def psc_config
  @psc_config
end

#require_sslBoolean Also known as: require_ssl?

Use ssl_mode instead. Whether SSL/TLS connections over IP are enforced. If set to false, then allow both non-SSL/non-TLS and SSL/TLS connections. For SSL/ TLS connections, the client certificate won't be verified. If set to true, then only allow connections encrypted with SSL/TLS and with valid client certificates. If you want to enforce SSL/TLS without enforcing the requirement for valid client certificates, then use the ssl_mode flag instead of the legacy require_ssl flag. Corresponds to the JSON property requireSsl

Returns:

  • (Boolean)


3592
3593
3594
# File 'lib/google/apis/sqladmin_v1beta4/classes.rb', line 3592

def require_ssl
  @require_ssl
end

#server_ca_modeString

Specify what type of CA is used for the server certificate. Corresponds to the JSON property serverCaMode

Returns:

  • (String)


3598
3599
3600
# File 'lib/google/apis/sqladmin_v1beta4/classes.rb', line 3598

def server_ca_mode
  @server_ca_mode
end

#server_ca_poolString

Optional. The resource name of the server CA pool for an instance with CUSTOMER_MANAGED_CAS_CA as the server_ca_mode. Format: projects/PROJECT/ locations/REGION/caPools/CA_POOL_ID Corresponds to the JSON property serverCaPool

Returns:

  • (String)


3605
3606
3607
# File 'lib/google/apis/sqladmin_v1beta4/classes.rb', line 3605

def server_ca_pool
  @server_ca_pool
end

#server_certificate_rotation_modeString

Optional. Controls the automatic server certificate rotation feature. This feature is disabled by default. When enabled, the server certificate will be automatically rotated during Cloud SQL scheduled maintenance or self-service maintenance updates up to six months before it expires. This setting can only be set if server_ca_mode is either GOOGLE_MANAGED_CAS_CA or CUSTOMER_MANAGED_CAS_CA. Corresponds to the JSON property serverCertificateRotationMode

Returns:

  • (String)


3615
3616
3617
# File 'lib/google/apis/sqladmin_v1beta4/classes.rb', line 3615

def server_certificate_rotation_mode
  @server_certificate_rotation_mode
end

#ssl_modeString

Specify how SSL/TLS is enforced in database connections. If you must use the require_ssl flag for backward compatibility, then only the following value pairs are valid: For PostgreSQL and MySQL: * ssl_mode= ALLOW_UNENCRYPTED_AND_ENCRYPTED and require_ssl=false * ssl_mode= ENCRYPTED_ONLY and require_ssl=false * ssl_mode= TRUSTED_CLIENT_CERTIFICATE_REQUIRED and require_ssl=true For SQL Server: * ssl_mode=ALLOW_UNENCRYPTED_AND_ENCRYPTED and require_ssl=false * ssl_mode= ENCRYPTED_ONLY and require_ssl=true The value of ssl_mode has priority over the value of require_ssl. For example, for the pair ssl_mode= ENCRYPTED_ONLY and require_ssl=false, ssl_mode=ENCRYPTED_ONLY means accept only SSL connections, while require_ssl=false means accept both non- SSL and SSL connections. In this case, MySQL and PostgreSQL databases respect ssl_mode and accepts only SSL connections. Corresponds to the JSON property sslMode

Returns:

  • (String)


3632
3633
3634
# File 'lib/google/apis/sqladmin_v1beta4/classes.rb', line 3632

def ssl_mode
  @ssl_mode
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3639
3640
3641
3642
3643
3644
3645
3646
3647
3648
3649
3650
3651
3652
# File 'lib/google/apis/sqladmin_v1beta4/classes.rb', line 3639

def update!(**args)
  @allocated_ip_range = args[:allocated_ip_range] if args.key?(:allocated_ip_range)
  @authorized_networks = args[:authorized_networks] if args.key?(:authorized_networks)
  @custom_subject_alternative_names = args[:custom_subject_alternative_names] if args.key?(:custom_subject_alternative_names)
  @enable_private_path_for_google_cloud_services = args[:enable_private_path_for_google_cloud_services] if args.key?(:enable_private_path_for_google_cloud_services)
  @ipv4_enabled = args[:ipv4_enabled] if args.key?(:ipv4_enabled)
  @private_network = args[:private_network] if args.key?(:private_network)
  @psc_config = args[:psc_config] if args.key?(:psc_config)
  @require_ssl = args[:require_ssl] if args.key?(:require_ssl)
  @server_ca_mode = args[:server_ca_mode] if args.key?(:server_ca_mode)
  @server_ca_pool = args[:server_ca_pool] if args.key?(:server_ca_pool)
  @server_certificate_rotation_mode = args[:server_certificate_rotation_mode] if args.key?(:server_certificate_rotation_mode)
  @ssl_mode = args[:ssl_mode] if args.key?(:ssl_mode)
end