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.



3612
3613
3614
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 3612

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)


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

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



3528
3529
3530
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 3528

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


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

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)


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

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)


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

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)


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

def private_network
  @private_network
end

#psc_configGoogle::Apis::SqladminV1::PscConfig

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



3559
3560
3561
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 3559

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)


3570
3571
3572
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 3570

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)


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

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)


3583
3584
3585
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 3583

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)


3593
3594
3595
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 3593

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)


3610
3611
3612
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 3610

def ssl_mode
  @ssl_mode
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3617
3618
3619
3620
3621
3622
3623
3624
3625
3626
3627
3628
3629
3630
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 3617

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