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.



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

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)


3484
3485
3486
# File 'lib/google/apis/sqladmin_v1beta4/classes.rb', line 3484

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



3491
3492
3493
# File 'lib/google/apis/sqladmin_v1beta4/classes.rb', line 3491

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


3496
3497
3498
# File 'lib/google/apis/sqladmin_v1beta4/classes.rb', line 3496

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)


3502
3503
3504
# File 'lib/google/apis/sqladmin_v1beta4/classes.rb', line 3502

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)


3508
3509
3510
# File 'lib/google/apis/sqladmin_v1beta4/classes.rb', line 3508

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)


3517
3518
3519
# File 'lib/google/apis/sqladmin_v1beta4/classes.rb', line 3517

def private_network
  @private_network
end

#psc_configGoogle::Apis::SqladminV1beta4::PscConfig

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



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

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)


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

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)


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

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)


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

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)


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

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)


3573
3574
3575
# File 'lib/google/apis/sqladmin_v1beta4/classes.rb', line 3573

def ssl_mode
  @ssl_mode
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



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

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