Class: Google::Apis::VmwareengineV1::ExternalAccessRule
- Inherits:
-
Object
- Object
- Google::Apis::VmwareengineV1::ExternalAccessRule
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/vmwareengine_v1/classes.rb,
lib/google/apis/vmwareengine_v1/representations.rb,
lib/google/apis/vmwareengine_v1/representations.rb
Overview
External access firewall rules for filtering incoming traffic destined to
ExternalAddress
resources.
Instance Attribute Summary collapse
-
#action ⇒ String
The action that the external access rule performs.
-
#create_time ⇒ String
Output only.
-
#description ⇒ String
User-provided description for this external access rule.
-
#destination_ip_ranges ⇒ Array<Google::Apis::VmwareengineV1::IpRange>
If destination ranges are specified, the external access rule applies only to the traffic that has a destination IP address in these ranges.
-
#destination_ports ⇒ Array<String>
A list of destination ports to which the external access rule applies.
-
#ip_protocol ⇒ String
The IP protocol to which the external access rule applies.
-
#name ⇒ String
Output only.
-
#priority ⇒ Fixnum
External access rule priority, which determines the external access rule to use when multiple rules apply.
-
#source_ip_ranges ⇒ Array<Google::Apis::VmwareengineV1::IpRange>
If source ranges are specified, the external access rule applies only to traffic that has a source IP address in these ranges.
-
#source_ports ⇒ Array<String>
A list of source ports to which the external access rule applies.
-
#state ⇒ String
Output only.
-
#uid ⇒ String
Output only.
-
#update_time ⇒ String
Output only.
Instance Method Summary collapse
-
#initialize(**args) ⇒ ExternalAccessRule
constructor
A new instance of ExternalAccessRule.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ ExternalAccessRule
Returns a new instance of ExternalAccessRule.
529 530 531 |
# File 'lib/google/apis/vmwareengine_v1/classes.rb', line 529 def initialize(**args) update!(**args) end |
Instance Attribute Details
#action ⇒ String
The action that the external access rule performs.
Corresponds to the JSON property action
441 442 443 |
# File 'lib/google/apis/vmwareengine_v1/classes.rb', line 441 def action @action end |
#create_time ⇒ String
Output only. Creation time of this resource.
Corresponds to the JSON property createTime
446 447 448 |
# File 'lib/google/apis/vmwareengine_v1/classes.rb', line 446 def create_time @create_time end |
#description ⇒ String
User-provided description for this external access rule.
Corresponds to the JSON property description
451 452 453 |
# File 'lib/google/apis/vmwareengine_v1/classes.rb', line 451 def description @description end |
#destination_ip_ranges ⇒ Array<Google::Apis::VmwareengineV1::IpRange>
If destination ranges are specified, the external access rule applies only to
the traffic that has a destination IP address in these ranges. The specified
IP addresses must have reserved external IP addresses in the scope of the
parent network policy. To match all external IP addresses in the scope of the
parent network policy, specify 0.0.0.0/0
. To match a specific external IP
address, specify it using the IpRange.external_address
property.
Corresponds to the JSON property destinationIpRanges
461 462 463 |
# File 'lib/google/apis/vmwareengine_v1/classes.rb', line 461 def destination_ip_ranges @destination_ip_ranges end |
#destination_ports ⇒ Array<String>
A list of destination ports to which the external access rule applies. This
field is only applicable for the UDP or TCP protocol. Each entry must be
either an integer or a range. For example: ["22"]
, ["80","443"]
, or ["
12345-12349"]
. To match all destination ports, specify ["0-65535"]
.
Corresponds to the JSON property destinationPorts
469 470 471 |
# File 'lib/google/apis/vmwareengine_v1/classes.rb', line 469 def destination_ports @destination_ports end |
#ip_protocol ⇒ String
The IP protocol to which the external access rule applies. This value can be
one of the following three protocol strings (not case-sensitive): tcp
, udp
,
or icmp
.
Corresponds to the JSON property ipProtocol
476 477 478 |
# File 'lib/google/apis/vmwareengine_v1/classes.rb', line 476 def ip_protocol @ip_protocol end |
#name ⇒ String
Output only. The resource name of this external access rule. Resource names
are schemeless URIs that follow the conventions in https://cloud.google.com/
apis/design/resource_names. For example: projects/my-project/locations/us-
central1/networkPolicies/my-policy/externalAccessRules/my-rule
Corresponds to the JSON property name
484 485 486 |
# File 'lib/google/apis/vmwareengine_v1/classes.rb', line 484 def name @name end |
#priority ⇒ Fixnum
External access rule priority, which determines the external access rule to
use when multiple rules apply. If multiple rules have the same priority, their
ordering is non-deterministic. If specific ordering is required, assign unique
priorities to enforce such ordering. The external access rule priority is an
integer from 100 to 4096, both inclusive. Lower integers indicate higher
precedence. For example, a rule with priority 100
has higher precedence than
a rule with priority 101
.
Corresponds to the JSON property priority
495 496 497 |
# File 'lib/google/apis/vmwareengine_v1/classes.rb', line 495 def priority @priority end |
#source_ip_ranges ⇒ Array<Google::Apis::VmwareengineV1::IpRange>
If source ranges are specified, the external access rule applies only to
traffic that has a source IP address in these ranges. These ranges can either
be expressed in the CIDR format or as an IP address. As only inbound rules are
supported, ExternalAddress
resources cannot be the source IP addresses of an
external access rule. To match all source addresses, specify 0.0.0.0/0
.
Corresponds to the JSON property sourceIpRanges
504 505 506 |
# File 'lib/google/apis/vmwareengine_v1/classes.rb', line 504 def source_ip_ranges @source_ip_ranges end |
#source_ports ⇒ Array<String>
A list of source ports to which the external access rule applies. This field
is only applicable for the UDP or TCP protocol. Each entry must be either an
integer or a range. For example: ["22"]
, ["80","443"]
, or ["12345-12349"]
. To match all source ports, specify ["0-65535"]
.
Corresponds to the JSON property sourcePorts
512 513 514 |
# File 'lib/google/apis/vmwareengine_v1/classes.rb', line 512 def source_ports @source_ports end |
#state ⇒ String
Output only. The state of the resource.
Corresponds to the JSON property state
517 518 519 |
# File 'lib/google/apis/vmwareengine_v1/classes.rb', line 517 def state @state end |
#uid ⇒ String
Output only. System-generated unique identifier for the resource.
Corresponds to the JSON property uid
522 523 524 |
# File 'lib/google/apis/vmwareengine_v1/classes.rb', line 522 def uid @uid end |
#update_time ⇒ String
Output only. Last update time of this resource.
Corresponds to the JSON property updateTime
527 528 529 |
# File 'lib/google/apis/vmwareengine_v1/classes.rb', line 527 def update_time @update_time end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 |
# File 'lib/google/apis/vmwareengine_v1/classes.rb', line 534 def update!(**args) @action = args[:action] if args.key?(:action) @create_time = args[:create_time] if args.key?(:create_time) @description = args[:description] if args.key?(:description) @destination_ip_ranges = args[:destination_ip_ranges] if args.key?(:destination_ip_ranges) @destination_ports = args[:destination_ports] if args.key?(:destination_ports) @ip_protocol = args[:ip_protocol] if args.key?(:ip_protocol) @name = args[:name] if args.key?(:name) @priority = args[:priority] if args.key?(:priority) @source_ip_ranges = args[:source_ip_ranges] if args.key?(:source_ip_ranges) @source_ports = args[:source_ports] if args.key?(:source_ports) @state = args[:state] if args.key?(:state) @uid = args[:uid] if args.key?(:uid) @update_time = args[:update_time] if args.key?(:update_time) end |