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.



3613
3614
3615
# File 'lib/google/apis/sqladmin_v1beta4/classes.rb', line 3613

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)


3522
3523
3524
# File 'lib/google/apis/sqladmin_v1beta4/classes.rb', line 3522

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



3529
3530
3531
# File 'lib/google/apis/sqladmin_v1beta4/classes.rb', line 3529

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


3534
3535
3536
# File 'lib/google/apis/sqladmin_v1beta4/classes.rb', line 3534

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)


3540
3541
3542
# File 'lib/google/apis/sqladmin_v1beta4/classes.rb', line 3540

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)


3546
3547
3548
# File 'lib/google/apis/sqladmin_v1beta4/classes.rb', line 3546

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)


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

def private_network
  @private_network
end

#psc_configGoogle::Apis::SqladminV1beta4::PscConfig

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



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

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)


3571
3572
3573
# File 'lib/google/apis/sqladmin_v1beta4/classes.rb', line 3571

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)


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

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)


3584
3585
3586
# File 'lib/google/apis/sqladmin_v1beta4/classes.rb', line 3584

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)


3594
3595
3596
# File 'lib/google/apis/sqladmin_v1beta4/classes.rb', line 3594

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)


3611
3612
3613
# File 'lib/google/apis/sqladmin_v1beta4/classes.rb', line 3611

def ssl_mode
  @ssl_mode
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



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

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