Class: Google::Apis::SqladminV1::IpConfiguration

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/sqladmin_v1/classes.rb,
lib/google/apis/sqladmin_v1/representations.rb,
lib/google/apis/sqladmin_v1/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.



3574
3575
3576
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 3574

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)


3483
3484
3485
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 3483

def allocated_ip_range
  @allocated_ip_range
end

#authorized_networksArray<Google::Apis::SqladminV1::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



3490
3491
3492
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 3490

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>)


3495
3496
3497
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 3495

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)


3501
3502
3503
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 3501

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)


3507
3508
3509
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 3507

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)


3516
3517
3518
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 3516

def private_network
  @private_network
end

#psc_configGoogle::Apis::SqladminV1::PscConfig

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



3521
3522
3523
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 3521

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 require_ssl flag. Corresponds to the JSON property requireSsl

Returns:

  • (Boolean)


3532
3533
3534
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 3532

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)


3538
3539
3540
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 3538

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)


3545
3546
3547
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 3545

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)


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

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)


3572
3573
3574
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 3572

def ssl_mode
  @ssl_mode
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3579
3580
3581
3582
3583
3584
3585
3586
3587
3588
3589
3590
3591
3592
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 3579

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