google-apis-compute_beta 0.66.0 → 0.67.0
Sign up to get free protection for your applications and to get access to all the features.
@@ -567,6 +567,12 @@ module Google
|
|
567
567
|
# @return [String]
|
568
568
|
attr_accessor :public_ptr_domain_name
|
569
569
|
|
570
|
+
# [Output Only] The resource URL for the security policy associated with this
|
571
|
+
# access config.
|
572
|
+
# Corresponds to the JSON property `securityPolicy`
|
573
|
+
# @return [String]
|
574
|
+
attr_accessor :security_policy
|
575
|
+
|
570
576
|
# Specifies whether a public DNS 'PTR' record should be created to map the
|
571
577
|
# external IP address of the instance to a DNS domain name. This field is not
|
572
578
|
# used in ipv6AccessConfig. A default PTR record will be created if the VM has
|
@@ -596,6 +602,7 @@ module Google
|
|
596
602
|
@nat_ip = args[:nat_ip] if args.key?(:nat_ip)
|
597
603
|
@network_tier = args[:network_tier] if args.key?(:network_tier)
|
598
604
|
@public_ptr_domain_name = args[:public_ptr_domain_name] if args.key?(:public_ptr_domain_name)
|
605
|
+
@security_policy = args[:security_policy] if args.key?(:security_policy)
|
599
606
|
@set_public_ptr = args[:set_public_ptr] if args.key?(:set_public_ptr)
|
600
607
|
@type = args[:type] if args.key?(:type)
|
601
608
|
end
|
@@ -3490,6 +3497,12 @@ module Google
|
|
3490
3497
|
# @return [Google::Apis::ComputeBeta::Duration]
|
3491
3498
|
attr_accessor :max_stream_duration
|
3492
3499
|
|
3500
|
+
# Deployment metadata associated with the resource to be set by a GKE hub
|
3501
|
+
# controller and read by the backend RCTH
|
3502
|
+
# Corresponds to the JSON property `metadatas`
|
3503
|
+
# @return [Hash<String,String>]
|
3504
|
+
attr_accessor :metadatas
|
3505
|
+
|
3493
3506
|
# Name of the resource. Provided by the client when the resource is created. The
|
3494
3507
|
# name must be 1-63 characters long, and comply with RFC1035. Specifically, the
|
3495
3508
|
# name must be 1-63 characters long and match the regular expression `[a-z]([-a-
|
@@ -3629,6 +3642,7 @@ module Google
|
|
3629
3642
|
@locality_lb_policy = args[:locality_lb_policy] if args.key?(:locality_lb_policy)
|
3630
3643
|
@log_config = args[:log_config] if args.key?(:log_config)
|
3631
3644
|
@max_stream_duration = args[:max_stream_duration] if args.key?(:max_stream_duration)
|
3645
|
+
@metadatas = args[:metadatas] if args.key?(:metadatas)
|
3632
3646
|
@name = args[:name] if args.key?(:name)
|
3633
3647
|
@network = args[:network] if args.key?(:network)
|
3634
3648
|
@outlier_detection = args[:outlier_detection] if args.key?(:outlier_detection)
|
@@ -4973,6 +4987,12 @@ module Google
|
|
4973
4987
|
class BulkInsertInstanceResourcePerInstanceProperties
|
4974
4988
|
include Google::Apis::Core::Hashable
|
4975
4989
|
|
4990
|
+
# Specifies the hostname of the instance. More details in: https://cloud.google.
|
4991
|
+
# com/compute/docs/instances/custom-hostname-vm#naming_convention
|
4992
|
+
# Corresponds to the JSON property `hostname`
|
4993
|
+
# @return [String]
|
4994
|
+
attr_accessor :hostname
|
4995
|
+
|
4976
4996
|
# This field is only temporary. It will be removed. Do not use it.
|
4977
4997
|
# Corresponds to the JSON property `name`
|
4978
4998
|
# @return [String]
|
@@ -4984,6 +5004,7 @@ module Google
|
|
4984
5004
|
|
4985
5005
|
# Update properties of this object
|
4986
5006
|
def update!(**args)
|
5007
|
+
@hostname = args[:hostname] if args.key?(:hostname)
|
4987
5008
|
@name = args[:name] if args.key?(:name)
|
4988
5009
|
end
|
4989
5010
|
end
|
@@ -5278,7 +5299,7 @@ module Google
|
|
5278
5299
|
# @return [String]
|
5279
5300
|
attr_accessor :self_link
|
5280
5301
|
|
5281
|
-
# Source commitment to be
|
5302
|
+
# Source commitment to be split into a new commitment.
|
5282
5303
|
# Corresponds to the JSON property `splitSourceCommitment`
|
5283
5304
|
# @return [String]
|
5284
5305
|
attr_accessor :split_source_commitment
|
@@ -9107,6 +9128,14 @@ module Google
|
|
9107
9128
|
# @return [Fixnum]
|
9108
9129
|
attr_accessor :rule_tuple_count
|
9109
9130
|
|
9131
|
+
# A fully-qualified URL of a SecurityProfile resource instance. Example: https://
|
9132
|
+
# networksecurity.googleapis.com/v1/projects/`project`/locations/`location`/
|
9133
|
+
# securityProfileGroups/my-security-profile-group Must be specified if action = '
|
9134
|
+
# apply_security_profile_group' and cannot be specified for other actions.
|
9135
|
+
# Corresponds to the JSON property `securityProfileGroup`
|
9136
|
+
# @return [String]
|
9137
|
+
attr_accessor :security_profile_group
|
9138
|
+
|
9110
9139
|
# A list of network resource URLs to which this rule applies. This field allows
|
9111
9140
|
# you to control which network's VMs get this rule. If this field is left blank,
|
9112
9141
|
# all VMs within the organization will receive the rule.
|
@@ -9132,6 +9161,14 @@ module Google
|
|
9132
9161
|
# @return [Array<String>]
|
9133
9162
|
attr_accessor :target_service_accounts
|
9134
9163
|
|
9164
|
+
# Boolean flag indicating if the traffic should be TLS decrypted. Can be set
|
9165
|
+
# only if action = 'apply_security_profile_group' and cannot be set for other
|
9166
|
+
# actions.
|
9167
|
+
# Corresponds to the JSON property `tlsInspect`
|
9168
|
+
# @return [Boolean]
|
9169
|
+
attr_accessor :tls_inspect
|
9170
|
+
alias_method :tls_inspect?, :tls_inspect
|
9171
|
+
|
9135
9172
|
def initialize(**args)
|
9136
9173
|
update!(**args)
|
9137
9174
|
end
|
@@ -9148,9 +9185,11 @@ module Google
|
|
9148
9185
|
@priority = args[:priority] if args.key?(:priority)
|
9149
9186
|
@rule_name = args[:rule_name] if args.key?(:rule_name)
|
9150
9187
|
@rule_tuple_count = args[:rule_tuple_count] if args.key?(:rule_tuple_count)
|
9188
|
+
@security_profile_group = args[:security_profile_group] if args.key?(:security_profile_group)
|
9151
9189
|
@target_resources = args[:target_resources] if args.key?(:target_resources)
|
9152
9190
|
@target_secure_tags = args[:target_secure_tags] if args.key?(:target_secure_tags)
|
9153
9191
|
@target_service_accounts = args[:target_service_accounts] if args.key?(:target_service_accounts)
|
9192
|
+
@tls_inspect = args[:tls_inspect] if args.key?(:tls_inspect)
|
9154
9193
|
end
|
9155
9194
|
end
|
9156
9195
|
|
@@ -11689,6 +11728,12 @@ module Google
|
|
11689
11728
|
# @return [String]
|
11690
11729
|
attr_accessor :health_state
|
11691
11730
|
|
11731
|
+
# Health state of the ipv6 network endpoint determined based on the health
|
11732
|
+
# checks configured.
|
11733
|
+
# Corresponds to the JSON property `ipv6HealthState`
|
11734
|
+
# @return [String]
|
11735
|
+
attr_accessor :ipv6_health_state
|
11736
|
+
|
11692
11737
|
def initialize(**args)
|
11693
11738
|
update!(**args)
|
11694
11739
|
end
|
@@ -11700,6 +11745,7 @@ module Google
|
|
11700
11745
|
@health_check = args[:health_check] if args.key?(:health_check)
|
11701
11746
|
@health_check_service = args[:health_check_service] if args.key?(:health_check_service)
|
11702
11747
|
@health_state = args[:health_state] if args.key?(:health_state)
|
11748
|
+
@ipv6_health_state = args[:ipv6_health_state] if args.key?(:ipv6_health_state)
|
11703
11749
|
end
|
11704
11750
|
end
|
11705
11751
|
|
@@ -17694,6 +17740,34 @@ module Google
|
|
17694
17740
|
end
|
17695
17741
|
end
|
17696
17742
|
|
17743
|
+
#
|
17744
|
+
class InstancesSetSecurityPolicyRequest
|
17745
|
+
include Google::Apis::Core::Hashable
|
17746
|
+
|
17747
|
+
# The network interfaces that the security policy will be applied to. Network
|
17748
|
+
# interfaces use the nicN naming format. You can only set a security policy for
|
17749
|
+
# network interfaces with an access config.
|
17750
|
+
# Corresponds to the JSON property `networkInterfaces`
|
17751
|
+
# @return [Array<String>]
|
17752
|
+
attr_accessor :network_interfaces
|
17753
|
+
|
17754
|
+
# A full or partial URL to a security policy to add to this instance. If this
|
17755
|
+
# field is set to an empty string it will remove the associated security policy.
|
17756
|
+
# Corresponds to the JSON property `securityPolicy`
|
17757
|
+
# @return [String]
|
17758
|
+
attr_accessor :security_policy
|
17759
|
+
|
17760
|
+
def initialize(**args)
|
17761
|
+
update!(**args)
|
17762
|
+
end
|
17763
|
+
|
17764
|
+
# Update properties of this object
|
17765
|
+
def update!(**args)
|
17766
|
+
@network_interfaces = args[:network_interfaces] if args.key?(:network_interfaces)
|
17767
|
+
@security_policy = args[:security_policy] if args.key?(:security_policy)
|
17768
|
+
end
|
17769
|
+
end
|
17770
|
+
|
17697
17771
|
#
|
17698
17772
|
class InstancesSetServiceAccountRequest
|
17699
17773
|
include Google::Apis::Core::Hashable
|
@@ -17924,6 +17998,12 @@ module Google
|
|
17924
17998
|
# @return [Fixnum]
|
17925
17999
|
attr_accessor :provisioned_link_count
|
17926
18000
|
|
18001
|
+
# Indicates that this is a Cross-Cloud Interconnect. This field specifies the
|
18002
|
+
# location outside of Google's network that the interconnect is connected to.
|
18003
|
+
# Corresponds to the JSON property `remoteLocation`
|
18004
|
+
# @return [String]
|
18005
|
+
attr_accessor :remote_location
|
18006
|
+
|
17927
18007
|
# Target number of physical links in the link bundle, as requested by the
|
17928
18008
|
# customer.
|
17929
18009
|
# Corresponds to the JSON property `requestedLinkCount`
|
@@ -17979,6 +18059,7 @@ module Google
|
|
17979
18059
|
@operational_status = args[:operational_status] if args.key?(:operational_status)
|
17980
18060
|
@peer_ip_address = args[:peer_ip_address] if args.key?(:peer_ip_address)
|
17981
18061
|
@provisioned_link_count = args[:provisioned_link_count] if args.key?(:provisioned_link_count)
|
18062
|
+
@remote_location = args[:remote_location] if args.key?(:remote_location)
|
17982
18063
|
@requested_link_count = args[:requested_link_count] if args.key?(:requested_link_count)
|
17983
18064
|
@satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
|
17984
18065
|
@self_link = args[:self_link] if args.key?(:self_link)
|
@@ -18046,6 +18127,12 @@ module Google
|
|
18046
18127
|
# @return [String]
|
18047
18128
|
attr_accessor :cloud_router_ipv6_interface_id
|
18048
18129
|
|
18130
|
+
# [Output Only] Constraints for this attachment, if any. The attachment does not
|
18131
|
+
# work if these constraints are not met.
|
18132
|
+
# Corresponds to the JSON property `configurationConstraints`
|
18133
|
+
# @return [Google::Apis::ComputeBeta::InterconnectAttachmentConfigurationConstraints]
|
18134
|
+
attr_accessor :configuration_constraints
|
18135
|
+
|
18049
18136
|
# [Output Only] Creation timestamp in RFC3339 text format.
|
18050
18137
|
# Corresponds to the JSON property `creationTimestamp`
|
18051
18138
|
# @return [String]
|
@@ -18227,6 +18314,15 @@ module Google
|
|
18227
18314
|
# @return [String]
|
18228
18315
|
attr_accessor :region
|
18229
18316
|
|
18317
|
+
# [Output Only] If the attachment is on a Cross-Cloud Interconnect connection,
|
18318
|
+
# this field contains the interconnect's remote location service provider.
|
18319
|
+
# Example values: "Amazon Web Services" "Microsoft Azure". The field is set only
|
18320
|
+
# for attachments on Cross-Cloud Interconnect connections. Its value is copied
|
18321
|
+
# from the InterconnectRemoteLocation remoteService field.
|
18322
|
+
# Corresponds to the JSON property `remoteService`
|
18323
|
+
# @return [String]
|
18324
|
+
attr_accessor :remote_service
|
18325
|
+
|
18230
18326
|
# URL of the Cloud Router to be used for dynamic routing. This router must be in
|
18231
18327
|
# the same region as this InterconnectAttachment. The InterconnectAttachment
|
18232
18328
|
# will automatically connect the Interconnect to the network & region within
|
@@ -18273,6 +18369,17 @@ module Google
|
|
18273
18369
|
# @return [String]
|
18274
18370
|
attr_accessor :state
|
18275
18371
|
|
18372
|
+
# Length of the IPv4 subnet mask. Allowed values: - 29 (default) - 30 The
|
18373
|
+
# default value is 29, except for Cross-Cloud Interconnect connections that use
|
18374
|
+
# an InterconnectRemoteLocation with a constraints.subnetLengthRange.min equal
|
18375
|
+
# to 30. For example, connections that use an Azure remote location fall into
|
18376
|
+
# this category. In these cases, the default value is 30, and requesting 29
|
18377
|
+
# returns an error. Where both 29 and 30 are allowed, 29 is preferred, because
|
18378
|
+
# it gives Google Cloud Support more debugging visibility.
|
18379
|
+
# Corresponds to the JSON property `subnetLength`
|
18380
|
+
# @return [Fixnum]
|
18381
|
+
attr_accessor :subnet_length
|
18382
|
+
|
18276
18383
|
# The type of interconnect attachment this is, which can take one of the
|
18277
18384
|
# following values: - DEDICATED: an attachment to a Dedicated Interconnect. -
|
18278
18385
|
# PARTNER: an attachment to a Partner Interconnect, created by the customer. -
|
@@ -18301,6 +18408,7 @@ module Google
|
|
18301
18408
|
@cloud_router_ip_address = args[:cloud_router_ip_address] if args.key?(:cloud_router_ip_address)
|
18302
18409
|
@cloud_router_ipv6_address = args[:cloud_router_ipv6_address] if args.key?(:cloud_router_ipv6_address)
|
18303
18410
|
@cloud_router_ipv6_interface_id = args[:cloud_router_ipv6_interface_id] if args.key?(:cloud_router_ipv6_interface_id)
|
18411
|
+
@configuration_constraints = args[:configuration_constraints] if args.key?(:configuration_constraints)
|
18304
18412
|
@creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
|
18305
18413
|
@customer_router_ip_address = args[:customer_router_ip_address] if args.key?(:customer_router_ip_address)
|
18306
18414
|
@customer_router_ipv6_address = args[:customer_router_ipv6_address] if args.key?(:customer_router_ipv6_address)
|
@@ -18324,11 +18432,13 @@ module Google
|
|
18324
18432
|
@partner_metadata = args[:partner_metadata] if args.key?(:partner_metadata)
|
18325
18433
|
@private_interconnect_info = args[:private_interconnect_info] if args.key?(:private_interconnect_info)
|
18326
18434
|
@region = args[:region] if args.key?(:region)
|
18435
|
+
@remote_service = args[:remote_service] if args.key?(:remote_service)
|
18327
18436
|
@router = args[:router] if args.key?(:router)
|
18328
18437
|
@satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
|
18329
18438
|
@self_link = args[:self_link] if args.key?(:self_link)
|
18330
18439
|
@stack_type = args[:stack_type] if args.key?(:stack_type)
|
18331
18440
|
@state = args[:state] if args.key?(:state)
|
18441
|
+
@subnet_length = args[:subnet_length] if args.key?(:subnet_length)
|
18332
18442
|
@type = args[:type] if args.key?(:type)
|
18333
18443
|
@vlan_tag8021q = args[:vlan_tag8021q] if args.key?(:vlan_tag8021q)
|
18334
18444
|
end
|
@@ -18459,6 +18569,68 @@ module Google
|
|
18459
18569
|
end
|
18460
18570
|
end
|
18461
18571
|
|
18572
|
+
#
|
18573
|
+
class InterconnectAttachmentConfigurationConstraints
|
18574
|
+
include Google::Apis::Core::Hashable
|
18575
|
+
|
18576
|
+
# [Output Only] Whether the attachment's BGP session requires/allows/disallows
|
18577
|
+
# BGP MD5 authentication. This can take one of the following values:
|
18578
|
+
# MD5_OPTIONAL, MD5_REQUIRED, MD5_UNSUPPORTED. For example, a Cross-Cloud
|
18579
|
+
# Interconnect connection to a remote cloud provider that requires BGP MD5
|
18580
|
+
# authentication has the interconnectRemoteLocation
|
18581
|
+
# attachment_configuration_constraints.bgp_md5 field set to MD5_REQUIRED, and
|
18582
|
+
# that property is propagated to the attachment. Similarly, if BGP MD5 is
|
18583
|
+
# MD5_UNSUPPORTED, an error is returned if MD5 is requested.
|
18584
|
+
# Corresponds to the JSON property `bgpMd5`
|
18585
|
+
# @return [String]
|
18586
|
+
attr_accessor :bgp_md5
|
18587
|
+
|
18588
|
+
# [Output Only] List of ASN ranges that the remote location is known to support.
|
18589
|
+
# Formatted as an array of inclusive ranges `min: min-value, max: max-value`.
|
18590
|
+
# For example, [`min: 123, max: 123`, `min: 64512, max: 65534`] allows the peer
|
18591
|
+
# ASN to be 123 or anything in the range 64512-65534. This field is only
|
18592
|
+
# advisory. Although the API accepts other ranges, these are the ranges that we
|
18593
|
+
# recommend.
|
18594
|
+
# Corresponds to the JSON property `bgpPeerAsnRanges`
|
18595
|
+
# @return [Array<Google::Apis::ComputeBeta::InterconnectAttachmentConfigurationConstraintsBgpPeerAsnRange>]
|
18596
|
+
attr_accessor :bgp_peer_asn_ranges
|
18597
|
+
|
18598
|
+
def initialize(**args)
|
18599
|
+
update!(**args)
|
18600
|
+
end
|
18601
|
+
|
18602
|
+
# Update properties of this object
|
18603
|
+
def update!(**args)
|
18604
|
+
@bgp_md5 = args[:bgp_md5] if args.key?(:bgp_md5)
|
18605
|
+
@bgp_peer_asn_ranges = args[:bgp_peer_asn_ranges] if args.key?(:bgp_peer_asn_ranges)
|
18606
|
+
end
|
18607
|
+
end
|
18608
|
+
|
18609
|
+
#
|
18610
|
+
class InterconnectAttachmentConfigurationConstraintsBgpPeerAsnRange
|
18611
|
+
include Google::Apis::Core::Hashable
|
18612
|
+
|
18613
|
+
#
|
18614
|
+
# Corresponds to the JSON property `max`
|
18615
|
+
# @return [Fixnum]
|
18616
|
+
attr_accessor :max
|
18617
|
+
|
18618
|
+
#
|
18619
|
+
# Corresponds to the JSON property `min`
|
18620
|
+
# @return [Fixnum]
|
18621
|
+
attr_accessor :min
|
18622
|
+
|
18623
|
+
def initialize(**args)
|
18624
|
+
update!(**args)
|
18625
|
+
end
|
18626
|
+
|
18627
|
+
# Update properties of this object
|
18628
|
+
def update!(**args)
|
18629
|
+
@max = args[:max] if args.key?(:max)
|
18630
|
+
@min = args[:min] if args.key?(:min)
|
18631
|
+
end
|
18632
|
+
end
|
18633
|
+
|
18462
18634
|
# Response to the list request, and contains a list of interconnect attachments.
|
18463
18635
|
class InterconnectAttachmentList
|
18464
18636
|
include Google::Apis::Core::Hashable
|
@@ -19429,6 +19601,371 @@ module Google
|
|
19429
19601
|
end
|
19430
19602
|
end
|
19431
19603
|
|
19604
|
+
# Represents a Cross-Cloud Interconnect Remote Location resource. You can use
|
19605
|
+
# this resource to find remote location details about an Interconnect attachment
|
19606
|
+
# (VLAN).
|
19607
|
+
class InterconnectRemoteLocation
|
19608
|
+
include Google::Apis::Core::Hashable
|
19609
|
+
|
19610
|
+
# [Output Only] The postal address of the Point of Presence, each line in the
|
19611
|
+
# address is separated by a newline character.
|
19612
|
+
# Corresponds to the JSON property `address`
|
19613
|
+
# @return [String]
|
19614
|
+
attr_accessor :address
|
19615
|
+
|
19616
|
+
# [Output Only] Subset of fields from InterconnectAttachment's |
|
19617
|
+
# configurationConstraints| field that apply to all attachments for this remote
|
19618
|
+
# location.
|
19619
|
+
# Corresponds to the JSON property `attachmentConfigurationConstraints`
|
19620
|
+
# @return [Google::Apis::ComputeBeta::InterconnectAttachmentConfigurationConstraints]
|
19621
|
+
attr_accessor :attachment_configuration_constraints
|
19622
|
+
|
19623
|
+
# [Output Only] Metropolitan area designator that indicates which city an
|
19624
|
+
# interconnect is located. For example: "Chicago, IL", "Amsterdam, Netherlands".
|
19625
|
+
# Corresponds to the JSON property `city`
|
19626
|
+
# @return [String]
|
19627
|
+
attr_accessor :city
|
19628
|
+
|
19629
|
+
# [Output Only] Constraints on the parameters for creating Cross-Cloud
|
19630
|
+
# Interconnect and associated InterconnectAttachments.
|
19631
|
+
# Corresponds to the JSON property `constraints`
|
19632
|
+
# @return [Google::Apis::ComputeBeta::InterconnectRemoteLocationConstraints]
|
19633
|
+
attr_accessor :constraints
|
19634
|
+
|
19635
|
+
# [Output Only] Continent for this location, which can take one of the following
|
19636
|
+
# values: - AFRICA - ASIA_PAC - EUROPE - NORTH_AMERICA - SOUTH_AMERICA
|
19637
|
+
# Corresponds to the JSON property `continent`
|
19638
|
+
# @return [String]
|
19639
|
+
attr_accessor :continent
|
19640
|
+
|
19641
|
+
# [Output Only] Creation timestamp in RFC3339 text format.
|
19642
|
+
# Corresponds to the JSON property `creationTimestamp`
|
19643
|
+
# @return [String]
|
19644
|
+
attr_accessor :creation_timestamp
|
19645
|
+
|
19646
|
+
# [Output Only] An optional description of the resource.
|
19647
|
+
# Corresponds to the JSON property `description`
|
19648
|
+
# @return [String]
|
19649
|
+
attr_accessor :description
|
19650
|
+
|
19651
|
+
# [Output Only] The name of the provider for this facility (e.g., EQUINIX).
|
19652
|
+
# Corresponds to the JSON property `facilityProvider`
|
19653
|
+
# @return [String]
|
19654
|
+
attr_accessor :facility_provider
|
19655
|
+
|
19656
|
+
# [Output Only] A provider-assigned Identifier for this facility (e.g., Ashburn-
|
19657
|
+
# DC1).
|
19658
|
+
# Corresponds to the JSON property `facilityProviderFacilityId`
|
19659
|
+
# @return [String]
|
19660
|
+
attr_accessor :facility_provider_facility_id
|
19661
|
+
|
19662
|
+
# [Output Only] The unique identifier for the resource. This identifier is
|
19663
|
+
# defined by the server.
|
19664
|
+
# Corresponds to the JSON property `id`
|
19665
|
+
# @return [Fixnum]
|
19666
|
+
attr_accessor :id
|
19667
|
+
|
19668
|
+
# [Output Only] Type of the resource. Always compute#interconnectRemoteLocation
|
19669
|
+
# for interconnect remote locations.
|
19670
|
+
# Corresponds to the JSON property `kind`
|
19671
|
+
# @return [String]
|
19672
|
+
attr_accessor :kind
|
19673
|
+
|
19674
|
+
# [Output Only] Link Aggregation Control Protocol (LACP) constraints, which can
|
19675
|
+
# take one of the following values: LACP_SUPPORTED, LACP_UNSUPPORTED
|
19676
|
+
# Corresponds to the JSON property `lacp`
|
19677
|
+
# @return [String]
|
19678
|
+
attr_accessor :lacp
|
19679
|
+
|
19680
|
+
# [Output Only] The maximum number of 100 Gbps ports supported in a link
|
19681
|
+
# aggregation group (LAG). When linkType is 100 Gbps, requestedLinkCount cannot
|
19682
|
+
# exceed max_lag_size_100_gbps.
|
19683
|
+
# Corresponds to the JSON property `maxLagSize100Gbps`
|
19684
|
+
# @return [Fixnum]
|
19685
|
+
attr_accessor :max_lag_size100_gbps
|
19686
|
+
|
19687
|
+
# [Output Only] The maximum number of 10 Gbps ports supported in a link
|
19688
|
+
# aggregation group (LAG). When linkType is 10 Gbps, requestedLinkCount cannot
|
19689
|
+
# exceed max_lag_size_10_gbps.
|
19690
|
+
# Corresponds to the JSON property `maxLagSize10Gbps`
|
19691
|
+
# @return [Fixnum]
|
19692
|
+
attr_accessor :max_lag_size10_gbps
|
19693
|
+
|
19694
|
+
# [Output Only] Name of the resource.
|
19695
|
+
# Corresponds to the JSON property `name`
|
19696
|
+
# @return [String]
|
19697
|
+
attr_accessor :name
|
19698
|
+
|
19699
|
+
# [Output Only] The peeringdb identifier for this facility (corresponding with a
|
19700
|
+
# netfac type in peeringdb).
|
19701
|
+
# Corresponds to the JSON property `peeringdbFacilityId`
|
19702
|
+
# @return [String]
|
19703
|
+
attr_accessor :peeringdb_facility_id
|
19704
|
+
|
19705
|
+
# [Output Only] Permitted connections.
|
19706
|
+
# Corresponds to the JSON property `permittedConnections`
|
19707
|
+
# @return [Array<Google::Apis::ComputeBeta::InterconnectRemoteLocationPermittedConnections>]
|
19708
|
+
attr_accessor :permitted_connections
|
19709
|
+
|
19710
|
+
# [Output Only] Indicates the service provider present at the remote location.
|
19711
|
+
# Example values: "Amazon Web Services", "Microsoft Azure".
|
19712
|
+
# Corresponds to the JSON property `remoteService`
|
19713
|
+
# @return [String]
|
19714
|
+
attr_accessor :remote_service
|
19715
|
+
|
19716
|
+
# [Output Only] Server-defined URL for the resource.
|
19717
|
+
# Corresponds to the JSON property `selfLink`
|
19718
|
+
# @return [String]
|
19719
|
+
attr_accessor :self_link
|
19720
|
+
|
19721
|
+
# [Output Only] The status of this InterconnectRemoteLocation, which can take
|
19722
|
+
# one of the following values: - CLOSED: The InterconnectRemoteLocation is
|
19723
|
+
# closed and is unavailable for provisioning new Cross-Cloud Interconnects. -
|
19724
|
+
# AVAILABLE: The InterconnectRemoteLocation is available for provisioning new
|
19725
|
+
# Cross-Cloud Interconnects.
|
19726
|
+
# Corresponds to the JSON property `status`
|
19727
|
+
# @return [String]
|
19728
|
+
attr_accessor :status
|
19729
|
+
|
19730
|
+
def initialize(**args)
|
19731
|
+
update!(**args)
|
19732
|
+
end
|
19733
|
+
|
19734
|
+
# Update properties of this object
|
19735
|
+
def update!(**args)
|
19736
|
+
@address = args[:address] if args.key?(:address)
|
19737
|
+
@attachment_configuration_constraints = args[:attachment_configuration_constraints] if args.key?(:attachment_configuration_constraints)
|
19738
|
+
@city = args[:city] if args.key?(:city)
|
19739
|
+
@constraints = args[:constraints] if args.key?(:constraints)
|
19740
|
+
@continent = args[:continent] if args.key?(:continent)
|
19741
|
+
@creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
|
19742
|
+
@description = args[:description] if args.key?(:description)
|
19743
|
+
@facility_provider = args[:facility_provider] if args.key?(:facility_provider)
|
19744
|
+
@facility_provider_facility_id = args[:facility_provider_facility_id] if args.key?(:facility_provider_facility_id)
|
19745
|
+
@id = args[:id] if args.key?(:id)
|
19746
|
+
@kind = args[:kind] if args.key?(:kind)
|
19747
|
+
@lacp = args[:lacp] if args.key?(:lacp)
|
19748
|
+
@max_lag_size100_gbps = args[:max_lag_size100_gbps] if args.key?(:max_lag_size100_gbps)
|
19749
|
+
@max_lag_size10_gbps = args[:max_lag_size10_gbps] if args.key?(:max_lag_size10_gbps)
|
19750
|
+
@name = args[:name] if args.key?(:name)
|
19751
|
+
@peeringdb_facility_id = args[:peeringdb_facility_id] if args.key?(:peeringdb_facility_id)
|
19752
|
+
@permitted_connections = args[:permitted_connections] if args.key?(:permitted_connections)
|
19753
|
+
@remote_service = args[:remote_service] if args.key?(:remote_service)
|
19754
|
+
@self_link = args[:self_link] if args.key?(:self_link)
|
19755
|
+
@status = args[:status] if args.key?(:status)
|
19756
|
+
end
|
19757
|
+
end
|
19758
|
+
|
19759
|
+
#
|
19760
|
+
class InterconnectRemoteLocationConstraints
|
19761
|
+
include Google::Apis::Core::Hashable
|
19762
|
+
|
19763
|
+
# [Output Only] Port pair remote location constraints, which can take one of the
|
19764
|
+
# following values: PORT_PAIR_UNCONSTRAINED_REMOTE_LOCATION,
|
19765
|
+
# PORT_PAIR_MATCHING_REMOTE_LOCATION. GCP's API refers only to individual ports,
|
19766
|
+
# but the UI uses this field when ordering a pair of ports, to prevent users
|
19767
|
+
# from accidentally ordering something that is incompatible with their cloud
|
19768
|
+
# provider. Specifically, when ordering a redundant pair of Cross-Cloud
|
19769
|
+
# Interconnect ports, and one of them uses a remote location with
|
19770
|
+
# portPairMatchingRemoteLocation set to matching, the UI requires that both
|
19771
|
+
# ports use the same remote location.
|
19772
|
+
# Corresponds to the JSON property `portPairRemoteLocation`
|
19773
|
+
# @return [String]
|
19774
|
+
attr_accessor :port_pair_remote_location
|
19775
|
+
|
19776
|
+
# [Output Only] Port pair VLAN constraints, which can take one of the following
|
19777
|
+
# values: PORT_PAIR_UNCONSTRAINED_VLAN, PORT_PAIR_MATCHING_VLAN
|
19778
|
+
# Corresponds to the JSON property `portPairVlan`
|
19779
|
+
# @return [String]
|
19780
|
+
attr_accessor :port_pair_vlan
|
19781
|
+
|
19782
|
+
# [Output Only] [min-length, max-length] The minimum and maximum value (
|
19783
|
+
# inclusive) for the IPv4 subnet length. For example, an
|
19784
|
+
# interconnectRemoteLocation for Azure has `min: 30, max: 30` because Azure
|
19785
|
+
# requires /30 subnets. This range specifies the values supported by both cloud
|
19786
|
+
# providers. Interconnect currently supports /29 and /30 IPv4 subnet lengths. If
|
19787
|
+
# a remote cloud has no constraint on IPv4 subnet length, the range would thus
|
19788
|
+
# be `min: 29, max: 30`.
|
19789
|
+
# Corresponds to the JSON property `subnetLengthRange`
|
19790
|
+
# @return [Google::Apis::ComputeBeta::InterconnectRemoteLocationConstraintsSubnetLengthRange]
|
19791
|
+
attr_accessor :subnet_length_range
|
19792
|
+
|
19793
|
+
def initialize(**args)
|
19794
|
+
update!(**args)
|
19795
|
+
end
|
19796
|
+
|
19797
|
+
# Update properties of this object
|
19798
|
+
def update!(**args)
|
19799
|
+
@port_pair_remote_location = args[:port_pair_remote_location] if args.key?(:port_pair_remote_location)
|
19800
|
+
@port_pair_vlan = args[:port_pair_vlan] if args.key?(:port_pair_vlan)
|
19801
|
+
@subnet_length_range = args[:subnet_length_range] if args.key?(:subnet_length_range)
|
19802
|
+
end
|
19803
|
+
end
|
19804
|
+
|
19805
|
+
#
|
19806
|
+
class InterconnectRemoteLocationConstraintsSubnetLengthRange
|
19807
|
+
include Google::Apis::Core::Hashable
|
19808
|
+
|
19809
|
+
#
|
19810
|
+
# Corresponds to the JSON property `max`
|
19811
|
+
# @return [Fixnum]
|
19812
|
+
attr_accessor :max
|
19813
|
+
|
19814
|
+
#
|
19815
|
+
# Corresponds to the JSON property `min`
|
19816
|
+
# @return [Fixnum]
|
19817
|
+
attr_accessor :min
|
19818
|
+
|
19819
|
+
def initialize(**args)
|
19820
|
+
update!(**args)
|
19821
|
+
end
|
19822
|
+
|
19823
|
+
# Update properties of this object
|
19824
|
+
def update!(**args)
|
19825
|
+
@max = args[:max] if args.key?(:max)
|
19826
|
+
@min = args[:min] if args.key?(:min)
|
19827
|
+
end
|
19828
|
+
end
|
19829
|
+
|
19830
|
+
# Response to the list request, and contains a list of interconnect remote
|
19831
|
+
# locations.
|
19832
|
+
class InterconnectRemoteLocationList
|
19833
|
+
include Google::Apis::Core::Hashable
|
19834
|
+
|
19835
|
+
# [Output Only] Unique identifier for the resource; defined by the server.
|
19836
|
+
# Corresponds to the JSON property `id`
|
19837
|
+
# @return [String]
|
19838
|
+
attr_accessor :id
|
19839
|
+
|
19840
|
+
# A list of InterconnectRemoteLocation resources.
|
19841
|
+
# Corresponds to the JSON property `items`
|
19842
|
+
# @return [Array<Google::Apis::ComputeBeta::InterconnectRemoteLocation>]
|
19843
|
+
attr_accessor :items
|
19844
|
+
|
19845
|
+
# [Output Only] Type of resource. Always compute#interconnectRemoteLocationList
|
19846
|
+
# for lists of interconnect remote locations.
|
19847
|
+
# Corresponds to the JSON property `kind`
|
19848
|
+
# @return [String]
|
19849
|
+
attr_accessor :kind
|
19850
|
+
|
19851
|
+
# [Output Only] This token lets you get the next page of results for list
|
19852
|
+
# requests. If the number of results is larger than maxResults, use the
|
19853
|
+
# nextPageToken as a value for the query parameter pageToken in the next list
|
19854
|
+
# request. Subsequent list requests will have their own nextPageToken to
|
19855
|
+
# continue paging through the results.
|
19856
|
+
# Corresponds to the JSON property `nextPageToken`
|
19857
|
+
# @return [String]
|
19858
|
+
attr_accessor :next_page_token
|
19859
|
+
|
19860
|
+
# [Output Only] Server-defined URL for this resource.
|
19861
|
+
# Corresponds to the JSON property `selfLink`
|
19862
|
+
# @return [String]
|
19863
|
+
attr_accessor :self_link
|
19864
|
+
|
19865
|
+
# [Output Only] Informational warning message.
|
19866
|
+
# Corresponds to the JSON property `warning`
|
19867
|
+
# @return [Google::Apis::ComputeBeta::InterconnectRemoteLocationList::Warning]
|
19868
|
+
attr_accessor :warning
|
19869
|
+
|
19870
|
+
def initialize(**args)
|
19871
|
+
update!(**args)
|
19872
|
+
end
|
19873
|
+
|
19874
|
+
# Update properties of this object
|
19875
|
+
def update!(**args)
|
19876
|
+
@id = args[:id] if args.key?(:id)
|
19877
|
+
@items = args[:items] if args.key?(:items)
|
19878
|
+
@kind = args[:kind] if args.key?(:kind)
|
19879
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
19880
|
+
@self_link = args[:self_link] if args.key?(:self_link)
|
19881
|
+
@warning = args[:warning] if args.key?(:warning)
|
19882
|
+
end
|
19883
|
+
|
19884
|
+
# [Output Only] Informational warning message.
|
19885
|
+
class Warning
|
19886
|
+
include Google::Apis::Core::Hashable
|
19887
|
+
|
19888
|
+
# [Output Only] A warning code, if applicable. For example, Compute Engine
|
19889
|
+
# returns NO_RESULTS_ON_PAGE if there are no results in the response.
|
19890
|
+
# Corresponds to the JSON property `code`
|
19891
|
+
# @return [String]
|
19892
|
+
attr_accessor :code
|
19893
|
+
|
19894
|
+
# [Output Only] Metadata about this warning in key: value format. For example: "
|
19895
|
+
# data": [ ` "key": "scope", "value": "zones/us-east1-d" `
|
19896
|
+
# Corresponds to the JSON property `data`
|
19897
|
+
# @return [Array<Google::Apis::ComputeBeta::InterconnectRemoteLocationList::Warning::Datum>]
|
19898
|
+
attr_accessor :data
|
19899
|
+
|
19900
|
+
# [Output Only] A human-readable description of the warning code.
|
19901
|
+
# Corresponds to the JSON property `message`
|
19902
|
+
# @return [String]
|
19903
|
+
attr_accessor :message
|
19904
|
+
|
19905
|
+
def initialize(**args)
|
19906
|
+
update!(**args)
|
19907
|
+
end
|
19908
|
+
|
19909
|
+
# Update properties of this object
|
19910
|
+
def update!(**args)
|
19911
|
+
@code = args[:code] if args.key?(:code)
|
19912
|
+
@data = args[:data] if args.key?(:data)
|
19913
|
+
@message = args[:message] if args.key?(:message)
|
19914
|
+
end
|
19915
|
+
|
19916
|
+
#
|
19917
|
+
class Datum
|
19918
|
+
include Google::Apis::Core::Hashable
|
19919
|
+
|
19920
|
+
# [Output Only] A key that provides more detail on the warning being returned.
|
19921
|
+
# For example, for warnings where there are no results in a list request for a
|
19922
|
+
# particular zone, this key might be scope and the key value might be the zone
|
19923
|
+
# name. Other examples might be a key indicating a deprecated resource and a
|
19924
|
+
# suggested replacement, or a warning about invalid network settings (for
|
19925
|
+
# example, if an instance attempts to perform IP forwarding but is not enabled
|
19926
|
+
# for IP forwarding).
|
19927
|
+
# Corresponds to the JSON property `key`
|
19928
|
+
# @return [String]
|
19929
|
+
attr_accessor :key
|
19930
|
+
|
19931
|
+
# [Output Only] A warning data value corresponding to the key.
|
19932
|
+
# Corresponds to the JSON property `value`
|
19933
|
+
# @return [String]
|
19934
|
+
attr_accessor :value
|
19935
|
+
|
19936
|
+
def initialize(**args)
|
19937
|
+
update!(**args)
|
19938
|
+
end
|
19939
|
+
|
19940
|
+
# Update properties of this object
|
19941
|
+
def update!(**args)
|
19942
|
+
@key = args[:key] if args.key?(:key)
|
19943
|
+
@value = args[:value] if args.key?(:value)
|
19944
|
+
end
|
19945
|
+
end
|
19946
|
+
end
|
19947
|
+
end
|
19948
|
+
|
19949
|
+
#
|
19950
|
+
class InterconnectRemoteLocationPermittedConnections
|
19951
|
+
include Google::Apis::Core::Hashable
|
19952
|
+
|
19953
|
+
# [Output Only] URL of an Interconnect location that is permitted to connect to
|
19954
|
+
# this Interconnect remote location.
|
19955
|
+
# Corresponds to the JSON property `interconnectLocation`
|
19956
|
+
# @return [String]
|
19957
|
+
attr_accessor :interconnect_location
|
19958
|
+
|
19959
|
+
def initialize(**args)
|
19960
|
+
update!(**args)
|
19961
|
+
end
|
19962
|
+
|
19963
|
+
# Update properties of this object
|
19964
|
+
def update!(**args)
|
19965
|
+
@interconnect_location = args[:interconnect_location] if args.key?(:interconnect_location)
|
19966
|
+
end
|
19967
|
+
end
|
19968
|
+
|
19432
19969
|
# Response for the InterconnectsGetDiagnosticsRequest.
|
19433
19970
|
class InterconnectsGetDiagnosticsResponse
|
19434
19971
|
include Google::Apis::Core::Hashable
|
@@ -20450,7 +20987,7 @@ module Google
|
|
20450
20987
|
# @return [Fixnum]
|
20451
20988
|
attr_accessor :guest_accelerator_count
|
20452
20989
|
|
20453
|
-
# The accelerator type resource name, not a full URL, e.g.
|
20990
|
+
# The accelerator type resource name, not a full URL, e.g. nvidia-tesla-t4.
|
20454
20991
|
# Corresponds to the JSON property `guestAcceleratorType`
|
20455
20992
|
# @return [String]
|
20456
20993
|
attr_accessor :guest_accelerator_type
|
@@ -21442,9 +21979,9 @@ module Google
|
|
21442
21979
|
# @return [String]
|
21443
21980
|
attr_accessor :description
|
21444
21981
|
|
21445
|
-
#
|
21446
|
-
#
|
21447
|
-
#
|
21982
|
+
# Fingerprint of this resource. A hash of the contents stored in this object.
|
21983
|
+
# This field is used in optimistic locking. An up-to-date fingerprint must be
|
21984
|
+
# provided in order to patch.
|
21448
21985
|
# Corresponds to the JSON property `fingerprint`
|
21449
21986
|
# NOTE: Values are automatically base64 encoded/decoded in the client library.
|
21450
21987
|
# @return [String]
|
@@ -21472,6 +22009,10 @@ module Google
|
|
21472
22009
|
attr_accessor :name
|
21473
22010
|
|
21474
22011
|
# [Output Only] The URL of the network which the Network Attachment belongs to.
|
22012
|
+
# Practically it is inferred by fetching the network of the first subnetwork
|
22013
|
+
# associated. Because it is required that all the subnetworks must be from the
|
22014
|
+
# same network, it is assured that the Network Attachment belongs to the same
|
22015
|
+
# network as all the subnetworks.
|
21475
22016
|
# Corresponds to the JSON property `network`
|
21476
22017
|
# @return [String]
|
21477
22018
|
attr_accessor :network
|
@@ -22250,6 +22791,11 @@ module Google
|
|
22250
22791
|
# @return [String]
|
22251
22792
|
attr_accessor :ip_address
|
22252
22793
|
|
22794
|
+
# Optional IPv6 address of network endpoint.
|
22795
|
+
# Corresponds to the JSON property `ipv6Address`
|
22796
|
+
# @return [String]
|
22797
|
+
attr_accessor :ipv6_address
|
22798
|
+
|
22253
22799
|
# Optional port number of network endpoint. If not specified, the defaultPort
|
22254
22800
|
# for the network endpoint group will be used.
|
22255
22801
|
# Corresponds to the JSON property `port`
|
@@ -22266,6 +22812,7 @@ module Google
|
|
22266
22812
|
@fqdn = args[:fqdn] if args.key?(:fqdn)
|
22267
22813
|
@instance = args[:instance] if args.key?(:instance)
|
22268
22814
|
@ip_address = args[:ip_address] if args.key?(:ip_address)
|
22815
|
+
@ipv6_address = args[:ipv6_address] if args.key?(:ipv6_address)
|
22269
22816
|
@port = args[:port] if args.key?(:port)
|
22270
22817
|
end
|
22271
22818
|
end
|
@@ -33423,9 +33970,8 @@ module Google
|
|
33423
33970
|
# ranges in every Subnetwork are allowed to Nat. - LIST_OF_SUBNETWORKS: A list
|
33424
33971
|
# of Subnetworks are allowed to Nat (specified in the field subnetwork below)
|
33425
33972
|
# The default is SUBNETWORK_IP_RANGE_TO_NAT_OPTION_UNSPECIFIED. Note that if
|
33426
|
-
# this field contains ALL_SUBNETWORKS_ALL_IP_RANGES
|
33427
|
-
#
|
33428
|
-
# Router.Nat section in any Router for this network in this region.
|
33973
|
+
# this field contains ALL_SUBNETWORKS_ALL_IP_RANGES then there should not be any
|
33974
|
+
# other Router.Nat section in any Router for this network in this region.
|
33429
33975
|
# Corresponds to the JSON property `sourceSubnetworkIpRangesToNat`
|
33430
33976
|
# @return [String]
|
33431
33977
|
attr_accessor :source_subnetwork_ip_ranges_to_nat
|
@@ -34976,6 +35522,16 @@ module Google
|
|
34976
35522
|
# @return [String]
|
34977
35523
|
attr_accessor :type
|
34978
35524
|
|
35525
|
+
# Definitions of user-defined fields for CLOUD_ARMOR_NETWORK policies. A user-
|
35526
|
+
# defined field consists of up to 4 bytes extracted from a fixed offset in the
|
35527
|
+
# packet, relative to the IPv4, IPv6, TCP, or UDP header, with an optional mask
|
35528
|
+
# to select certain bits. Rules may then specify matching values for these
|
35529
|
+
# fields. Example: userDefinedFields: - name: "ipv4_fragment_offset" base: IPV4
|
35530
|
+
# offset: 6 size: 2 mask: "0x1fff"
|
35531
|
+
# Corresponds to the JSON property `userDefinedFields`
|
35532
|
+
# @return [Array<Google::Apis::ComputeBeta::SecurityPolicyUserDefinedField>]
|
35533
|
+
attr_accessor :user_defined_fields
|
35534
|
+
|
34979
35535
|
def initialize(**args)
|
34980
35536
|
update!(**args)
|
34981
35537
|
end
|
@@ -35003,6 +35559,7 @@ module Google
|
|
35003
35559
|
@self_link = args[:self_link] if args.key?(:self_link)
|
35004
35560
|
@self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
|
35005
35561
|
@type = args[:type] if args.key?(:type)
|
35562
|
+
@user_defined_fields = args[:user_defined_fields] if args.key?(:user_defined_fields)
|
35006
35563
|
end
|
35007
35564
|
end
|
35008
35565
|
|
@@ -35434,6 +35991,12 @@ module Google
|
|
35434
35991
|
# @return [Google::Apis::ComputeBeta::SecurityPolicyRuleMatcher]
|
35435
35992
|
attr_accessor :match
|
35436
35993
|
|
35994
|
+
# Represents a match condition that incoming network traffic is evaluated
|
35995
|
+
# against.
|
35996
|
+
# Corresponds to the JSON property `networkMatch`
|
35997
|
+
# @return [Google::Apis::ComputeBeta::SecurityPolicyRuleNetworkMatcher]
|
35998
|
+
attr_accessor :network_match
|
35999
|
+
|
35437
36000
|
# Preconfigured WAF configuration to be applied for the rule. If the rule does
|
35438
36001
|
# not evaluate preconfigured WAF rules, i.e., if evaluatePreconfiguredWaf() is
|
35439
36002
|
# not used, this field will have no effect.
|
@@ -35508,6 +36071,7 @@ module Google
|
|
35508
36071
|
@header_action = args[:header_action] if args.key?(:header_action)
|
35509
36072
|
@kind = args[:kind] if args.key?(:kind)
|
35510
36073
|
@match = args[:match] if args.key?(:match)
|
36074
|
+
@network_match = args[:network_match] if args.key?(:network_match)
|
35511
36075
|
@preconfigured_waf_config = args[:preconfigured_waf_config] if args.key?(:preconfigured_waf_config)
|
35512
36076
|
@preview = args[:preview] if args.key?(:preview)
|
35513
36077
|
@priority = args[:priority] if args.key?(:priority)
|
@@ -35680,6 +36244,102 @@ module Google
|
|
35680
36244
|
end
|
35681
36245
|
end
|
35682
36246
|
|
36247
|
+
# Represents a match condition that incoming network traffic is evaluated
|
36248
|
+
# against.
|
36249
|
+
class SecurityPolicyRuleNetworkMatcher
|
36250
|
+
include Google::Apis::Core::Hashable
|
36251
|
+
|
36252
|
+
# Destination IPv4/IPv6 addresses or CIDR prefixes, in standard text format.
|
36253
|
+
# Corresponds to the JSON property `destIpRanges`
|
36254
|
+
# @return [Array<String>]
|
36255
|
+
attr_accessor :dest_ip_ranges
|
36256
|
+
|
36257
|
+
# Destination port numbers for TCP/UDP/SCTP. Each element can be a 16-bit
|
36258
|
+
# unsigned decimal number (e.g. "80") or range (e.g. "0-1023").
|
36259
|
+
# Corresponds to the JSON property `destPorts`
|
36260
|
+
# @return [Array<String>]
|
36261
|
+
attr_accessor :dest_ports
|
36262
|
+
|
36263
|
+
# IPv4 protocol / IPv6 next header (after extension headers). Each element can
|
36264
|
+
# be an 8-bit unsigned decimal number (e.g. "6"), range (e.g. "253-254"), or one
|
36265
|
+
# of the following protocol names: "tcp", "udp", "icmp", "esp", "ah", "ipip", or
|
36266
|
+
# "sctp".
|
36267
|
+
# Corresponds to the JSON property `ipProtocols`
|
36268
|
+
# @return [Array<String>]
|
36269
|
+
attr_accessor :ip_protocols
|
36270
|
+
|
36271
|
+
# BGP Autonomous System Number associated with the source IP address.
|
36272
|
+
# Corresponds to the JSON property `srcAsns`
|
36273
|
+
# @return [Array<Fixnum>]
|
36274
|
+
attr_accessor :src_asns
|
36275
|
+
|
36276
|
+
# Source IPv4/IPv6 addresses or CIDR prefixes, in standard text format.
|
36277
|
+
# Corresponds to the JSON property `srcIpRanges`
|
36278
|
+
# @return [Array<String>]
|
36279
|
+
attr_accessor :src_ip_ranges
|
36280
|
+
|
36281
|
+
# Source port numbers for TCP/UDP/SCTP. Each element can be a 16-bit unsigned
|
36282
|
+
# decimal number (e.g. "80") or range (e.g. "0-1023").
|
36283
|
+
# Corresponds to the JSON property `srcPorts`
|
36284
|
+
# @return [Array<String>]
|
36285
|
+
attr_accessor :src_ports
|
36286
|
+
|
36287
|
+
# Two-letter ISO 3166-1 alpha-2 country code associated with the source IP
|
36288
|
+
# address.
|
36289
|
+
# Corresponds to the JSON property `srcRegionCodes`
|
36290
|
+
# @return [Array<String>]
|
36291
|
+
attr_accessor :src_region_codes
|
36292
|
+
|
36293
|
+
# User-defined fields. Each element names a defined field and lists the matching
|
36294
|
+
# values for that field.
|
36295
|
+
# Corresponds to the JSON property `userDefinedFields`
|
36296
|
+
# @return [Array<Google::Apis::ComputeBeta::SecurityPolicyRuleNetworkMatcherUserDefinedFieldMatch>]
|
36297
|
+
attr_accessor :user_defined_fields
|
36298
|
+
|
36299
|
+
def initialize(**args)
|
36300
|
+
update!(**args)
|
36301
|
+
end
|
36302
|
+
|
36303
|
+
# Update properties of this object
|
36304
|
+
def update!(**args)
|
36305
|
+
@dest_ip_ranges = args[:dest_ip_ranges] if args.key?(:dest_ip_ranges)
|
36306
|
+
@dest_ports = args[:dest_ports] if args.key?(:dest_ports)
|
36307
|
+
@ip_protocols = args[:ip_protocols] if args.key?(:ip_protocols)
|
36308
|
+
@src_asns = args[:src_asns] if args.key?(:src_asns)
|
36309
|
+
@src_ip_ranges = args[:src_ip_ranges] if args.key?(:src_ip_ranges)
|
36310
|
+
@src_ports = args[:src_ports] if args.key?(:src_ports)
|
36311
|
+
@src_region_codes = args[:src_region_codes] if args.key?(:src_region_codes)
|
36312
|
+
@user_defined_fields = args[:user_defined_fields] if args.key?(:user_defined_fields)
|
36313
|
+
end
|
36314
|
+
end
|
36315
|
+
|
36316
|
+
#
|
36317
|
+
class SecurityPolicyRuleNetworkMatcherUserDefinedFieldMatch
|
36318
|
+
include Google::Apis::Core::Hashable
|
36319
|
+
|
36320
|
+
# Name of the user-defined field, as given in the definition.
|
36321
|
+
# Corresponds to the JSON property `name`
|
36322
|
+
# @return [String]
|
36323
|
+
attr_accessor :name
|
36324
|
+
|
36325
|
+
# Matching values of the field. Each element can be a 32-bit unsigned decimal or
|
36326
|
+
# hexadecimal (starting with "0x") number (e.g. "64") or range (e.g. "0x400-
|
36327
|
+
# 0x7ff").
|
36328
|
+
# Corresponds to the JSON property `values`
|
36329
|
+
# @return [Array<String>]
|
36330
|
+
attr_accessor :values
|
36331
|
+
|
36332
|
+
def initialize(**args)
|
36333
|
+
update!(**args)
|
36334
|
+
end
|
36335
|
+
|
36336
|
+
# Update properties of this object
|
36337
|
+
def update!(**args)
|
36338
|
+
@name = args[:name] if args.key?(:name)
|
36339
|
+
@values = args[:values] if args.key?(:values)
|
36340
|
+
end
|
36341
|
+
end
|
36342
|
+
|
35683
36343
|
#
|
35684
36344
|
class SecurityPolicyRulePreconfiguredWafConfig
|
35685
36345
|
include Google::Apis::Core::Hashable
|
@@ -35980,6 +36640,59 @@ module Google
|
|
35980
36640
|
end
|
35981
36641
|
end
|
35982
36642
|
|
36643
|
+
#
|
36644
|
+
class SecurityPolicyUserDefinedField
|
36645
|
+
include Google::Apis::Core::Hashable
|
36646
|
+
|
36647
|
+
# The base relative to which 'offset' is measured. Possible values are: - IPV4:
|
36648
|
+
# Points to the beginning of the IPv4 header. - IPV6: Points to the beginning of
|
36649
|
+
# the IPv6 header. - TCP: Points to the beginning of the TCP header, skipping
|
36650
|
+
# over any IPv4 options or IPv6 extension headers. Not present for non-first
|
36651
|
+
# fragments. - UDP: Points to the beginning of the UDP header, skipping over any
|
36652
|
+
# IPv4 options or IPv6 extension headers. Not present for non-first fragments.
|
36653
|
+
# required
|
36654
|
+
# Corresponds to the JSON property `base`
|
36655
|
+
# @return [String]
|
36656
|
+
attr_accessor :base
|
36657
|
+
|
36658
|
+
# If specified, apply this mask (bitwise AND) to the field to ignore bits before
|
36659
|
+
# matching. Encoded as a hexadecimal number (starting with "0x"). The last byte
|
36660
|
+
# of the field (in network byte order) corresponds to the least significant byte
|
36661
|
+
# of the mask.
|
36662
|
+
# Corresponds to the JSON property `mask`
|
36663
|
+
# @return [String]
|
36664
|
+
attr_accessor :mask
|
36665
|
+
|
36666
|
+
# The name of this field. Must be unique within the policy.
|
36667
|
+
# Corresponds to the JSON property `name`
|
36668
|
+
# @return [String]
|
36669
|
+
attr_accessor :name
|
36670
|
+
|
36671
|
+
# Offset of the first byte of the field (in network byte order) relative to '
|
36672
|
+
# base'.
|
36673
|
+
# Corresponds to the JSON property `offset`
|
36674
|
+
# @return [Fixnum]
|
36675
|
+
attr_accessor :offset
|
36676
|
+
|
36677
|
+
# Size of the field in bytes. Valid values: 1-4.
|
36678
|
+
# Corresponds to the JSON property `size`
|
36679
|
+
# @return [Fixnum]
|
36680
|
+
attr_accessor :size
|
36681
|
+
|
36682
|
+
def initialize(**args)
|
36683
|
+
update!(**args)
|
36684
|
+
end
|
36685
|
+
|
36686
|
+
# Update properties of this object
|
36687
|
+
def update!(**args)
|
36688
|
+
@base = args[:base] if args.key?(:base)
|
36689
|
+
@mask = args[:mask] if args.key?(:mask)
|
36690
|
+
@name = args[:name] if args.key?(:name)
|
36691
|
+
@offset = args[:offset] if args.key?(:offset)
|
36692
|
+
@size = args[:size] if args.key?(:size)
|
36693
|
+
end
|
36694
|
+
end
|
36695
|
+
|
35983
36696
|
# The authentication and authorization settings for a BackendService.
|
35984
36697
|
class SecuritySettings
|
35985
36698
|
include Google::Apis::Core::Hashable
|
@@ -38756,8 +39469,8 @@ module Google
|
|
38756
39469
|
# Whether to enable flow logging for this subnetwork. If this field is not
|
38757
39470
|
# explicitly set, it will not appear in get listings. If not set the default
|
38758
39471
|
# behavior is determined by the org policy, if there is no org policy specified,
|
38759
|
-
# then it will default to disabled. This field isn't supported
|
38760
|
-
# field set to
|
39472
|
+
# then it will default to disabled. This field isn't supported if the subnet
|
39473
|
+
# purpose field is set to REGIONAL_MANAGED_PROXY.
|
38761
39474
|
# Corresponds to the JSON property `enableFlowLogs`
|
38762
39475
|
# @return [Boolean]
|
38763
39476
|
attr_accessor :enable_flow_logs
|
@@ -38861,12 +39574,19 @@ module Google
|
|
38861
39574
|
# @return [String]
|
38862
39575
|
attr_accessor :private_ipv6_google_access
|
38863
39576
|
|
38864
|
-
# The purpose of the resource. This field can be either
|
38865
|
-
#
|
38866
|
-
# INTERNAL_HTTPS_LOAD_BALANCER is
|
38867
|
-
#
|
38868
|
-
#
|
38869
|
-
#
|
39577
|
+
# The purpose of the resource. This field can be either PRIVATE,
|
39578
|
+
# REGIONAL_MANAGED_PROXY, PRIVATE_SERVICE_CONNECT, or
|
39579
|
+
# INTERNAL_HTTPS_LOAD_BALANCER. PRIVATE is the default purpose for user-created
|
39580
|
+
# subnets or subnets that are automatically created in auto mode networks. A
|
39581
|
+
# subnet with purpose set to REGIONAL_MANAGED_PROXY is a user-created subnetwork
|
39582
|
+
# that is reserved for regional Envoy-based load balancers. A subnet with
|
39583
|
+
# purpose set to PRIVATE_SERVICE_CONNECT is used to publish services using
|
39584
|
+
# Private Service Connect. A subnet with purpose set to
|
39585
|
+
# INTERNAL_HTTPS_LOAD_BALANCER is a proxy-only subnet that can be used only by
|
39586
|
+
# regional internal HTTP(S) load balancers. Note that REGIONAL_MANAGED_PROXY is
|
39587
|
+
# the preferred setting for all regional Envoy load balancers. If unspecified,
|
39588
|
+
# the subnet purpose defaults to PRIVATE. The enableFlowLogs field isn't
|
39589
|
+
# supported if the subnet purpose field is set to REGIONAL_MANAGED_PROXY.
|
38870
39590
|
# Corresponds to the JSON property `purpose`
|
38871
39591
|
# @return [String]
|
38872
39592
|
attr_accessor :purpose
|
@@ -38883,11 +39603,10 @@ module Google
|
|
38883
39603
|
attr_accessor :reserved_internal_range
|
38884
39604
|
|
38885
39605
|
# The role of subnetwork. Currently, this field is only used when purpose =
|
38886
|
-
#
|
38887
|
-
#
|
38888
|
-
#
|
38889
|
-
#
|
38890
|
-
# request.
|
39606
|
+
# REGIONAL_MANAGED_PROXY. The value can be set to ACTIVE or BACKUP. An ACTIVE
|
39607
|
+
# subnetwork is one that is currently being used for Envoy-based load balancers
|
39608
|
+
# in a region. A BACKUP subnetwork is one that is ready to be promoted to ACTIVE
|
39609
|
+
# or is currently draining. This field can be updated with a patch request.
|
38891
39610
|
# Corresponds to the JSON property `role`
|
38892
39611
|
# @return [String]
|
38893
39612
|
attr_accessor :role
|
@@ -39215,7 +39934,8 @@ module Google
|
|
39215
39934
|
# Whether to enable flow logging for this subnetwork. If this field is not
|
39216
39935
|
# explicitly set, it will not appear in get listings. If not set the default
|
39217
39936
|
# behavior is determined by the org policy, if there is no org policy specified,
|
39218
|
-
# then it will default to disabled.
|
39937
|
+
# then it will default to disabled. Flow logging isn't supported if the subnet
|
39938
|
+
# purpose field is set to REGIONAL_MANAGED_PROXY.
|
39219
39939
|
# Corresponds to the JSON property `enable`
|
39220
39940
|
# @return [Boolean]
|
39221
39941
|
attr_accessor :enable
|
@@ -40905,6 +41625,12 @@ module Google
|
|
40905
41625
|
# @return [String]
|
40906
41626
|
attr_accessor :network
|
40907
41627
|
|
41628
|
+
# [Output Only] The resource URL for the security policy associated with this
|
41629
|
+
# target instance.
|
41630
|
+
# Corresponds to the JSON property `securityPolicy`
|
41631
|
+
# @return [String]
|
41632
|
+
attr_accessor :security_policy
|
41633
|
+
|
40908
41634
|
# [Output Only] Server-defined URL for the resource.
|
40909
41635
|
# Corresponds to the JSON property `selfLink`
|
40910
41636
|
# @return [String]
|
@@ -40931,6 +41657,7 @@ module Google
|
|
40931
41657
|
@name = args[:name] if args.key?(:name)
|
40932
41658
|
@nat_policy = args[:nat_policy] if args.key?(:nat_policy)
|
40933
41659
|
@network = args[:network] if args.key?(:network)
|
41660
|
+
@security_policy = args[:security_policy] if args.key?(:security_policy)
|
40934
41661
|
@self_link = args[:self_link] if args.key?(:self_link)
|
40935
41662
|
@zone = args[:zone] if args.key?(:zone)
|
40936
41663
|
end
|
@@ -41354,6 +42081,12 @@ module Google
|
|
41354
42081
|
# @return [String]
|
41355
42082
|
attr_accessor :region
|
41356
42083
|
|
42084
|
+
# [Output Only] The resource URL for the security policy associated with this
|
42085
|
+
# target pool.
|
42086
|
+
# Corresponds to the JSON property `securityPolicy`
|
42087
|
+
# @return [String]
|
42088
|
+
attr_accessor :security_policy
|
42089
|
+
|
41357
42090
|
# [Output Only] Server-defined URL for the resource.
|
41358
42091
|
# Corresponds to the JSON property `selfLink`
|
41359
42092
|
# @return [String]
|
@@ -41385,6 +42118,7 @@ module Google
|
|
41385
42118
|
@kind = args[:kind] if args.key?(:kind)
|
41386
42119
|
@name = args[:name] if args.key?(:name)
|
41387
42120
|
@region = args[:region] if args.key?(:region)
|
42121
|
+
@security_policy = args[:security_policy] if args.key?(:security_policy)
|
41388
42122
|
@self_link = args[:self_link] if args.key?(:self_link)
|
41389
42123
|
@session_affinity = args[:session_affinity] if args.key?(:session_affinity)
|
41390
42124
|
end
|
@@ -43997,22 +44731,28 @@ module Google
|
|
43997
44731
|
# @return [String]
|
43998
44732
|
attr_accessor :network
|
43999
44733
|
|
44000
|
-
# The purpose of the resource. This field can be either
|
44001
|
-
#
|
44002
|
-
# INTERNAL_HTTPS_LOAD_BALANCER is
|
44003
|
-
#
|
44004
|
-
#
|
44005
|
-
#
|
44734
|
+
# The purpose of the resource. This field can be either PRIVATE,
|
44735
|
+
# REGIONAL_MANAGED_PROXY, PRIVATE_SERVICE_CONNECT, or
|
44736
|
+
# INTERNAL_HTTPS_LOAD_BALANCER. PRIVATE is the default purpose for user-created
|
44737
|
+
# subnets or subnets that are automatically created in auto mode networks. A
|
44738
|
+
# subnet with purpose set to REGIONAL_MANAGED_PROXY is a user-created subnetwork
|
44739
|
+
# that is reserved for regional Envoy-based load balancers. A subnet with
|
44740
|
+
# purpose set to PRIVATE_SERVICE_CONNECT is used to publish services using
|
44741
|
+
# Private Service Connect. A subnet with purpose set to
|
44742
|
+
# INTERNAL_HTTPS_LOAD_BALANCER is a proxy-only subnet that can be used only by
|
44743
|
+
# regional internal HTTP(S) load balancers. Note that REGIONAL_MANAGED_PROXY is
|
44744
|
+
# the preferred setting for all regional Envoy load balancers. If unspecified,
|
44745
|
+
# the subnet purpose defaults to PRIVATE. The enableFlowLogs field isn't
|
44746
|
+
# supported if the subnet purpose field is set to REGIONAL_MANAGED_PROXY.
|
44006
44747
|
# Corresponds to the JSON property `purpose`
|
44007
44748
|
# @return [String]
|
44008
44749
|
attr_accessor :purpose
|
44009
44750
|
|
44010
44751
|
# The role of subnetwork. Currently, this field is only used when purpose =
|
44011
|
-
#
|
44012
|
-
#
|
44013
|
-
#
|
44014
|
-
#
|
44015
|
-
# request.
|
44752
|
+
# REGIONAL_MANAGED_PROXY. The value can be set to ACTIVE or BACKUP. An ACTIVE
|
44753
|
+
# subnetwork is one that is currently being used for Envoy-based load balancers
|
44754
|
+
# in a region. A BACKUP subnetwork is one that is ready to be promoted to ACTIVE
|
44755
|
+
# or is currently draining. This field can be updated with a patch request.
|
44016
44756
|
# Corresponds to the JSON property `role`
|
44017
44757
|
# @return [String]
|
44018
44758
|
attr_accessor :role
|
@@ -44905,7 +45645,7 @@ module Google
|
|
44905
45645
|
attr_accessor :local_gateway_interface
|
44906
45646
|
|
44907
45647
|
# The peer gateway interface this VPN tunnel is connected to, the peer gateway
|
44908
|
-
# could either be an external VPN gateway or
|
45648
|
+
# could either be an external VPN gateway or a Google Cloud VPN gateway.
|
44909
45649
|
# Corresponds to the JSON property `peerGatewayInterface`
|
44910
45650
|
# @return [Fixnum]
|
44911
45651
|
attr_accessor :peer_gateway_interface
|
@@ -44928,8 +45668,8 @@ module Google
|
|
44928
45668
|
end
|
44929
45669
|
|
44930
45670
|
# A VPN connection contains all VPN tunnels connected from this VpnGateway to
|
44931
|
-
# the same peer gateway. The peer gateway could either be
|
44932
|
-
# or
|
45671
|
+
# the same peer gateway. The peer gateway could either be an external VPN
|
45672
|
+
# gateway or a Google Cloud VPN gateway.
|
44933
45673
|
class VpnGatewayStatusVpnConnection
|
44934
45674
|
include Google::Apis::Core::Hashable
|
44935
45675
|
|