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.



2381
2382
2383
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 2381

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)


2317
2318
2319
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 2317

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



2324
2325
2326
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 2324

def authorized_networks
  @authorized_networks
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)


2330
2331
2332
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 2330

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)


2336
2337
2338
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 2336

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)


2345
2346
2347
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 2345

def private_network
  @private_network
end

#psc_configGoogle::Apis::SqladminV1::PscConfig

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



2350
2351
2352
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 2350

def psc_config
  @psc_config
end

#require_sslBoolean Also known as: require_ssl?

Use ssl_mode instead for MySQL and PostgreSQL. SQL Server uses this flag. 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)


2361
2362
2363
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 2361

def require_ssl
  @require_ssl
end

#ssl_modeString

Specify how SSL/TLS is enforced in database connections. MySQL and PostgreSQL use the ssl_mode flag. If you must use the require_ssl flag for backward compatibility, then only the following value pairs are valid: * 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 The value of ssl_mode gets priority over the value of require_ssl. For example, for the pair ssl_mode=ENCRYPTED_ONLY and require_ssl=false, the ssl_mode= ENCRYPTED_ONLY means only accept SSL connections, while the require_ssl= false means accept both non-SSL and SSL connections. MySQL and PostgreSQL databases respect ssl_mode in this case and accept only SSL connections. SQL Server uses the require_ssl flag. You can set the value for this flag to true or false. Corresponds to the JSON property sslMode

Returns:

  • (String)


2379
2380
2381
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 2379

def ssl_mode
  @ssl_mode
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
# File 'lib/google/apis/sqladmin_v1/classes.rb', line 2386

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)
  @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)
  @ssl_mode = args[:ssl_mode] if args.key?(:ssl_mode)
end