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.
644 645 646 |
# File 'lib/google/apis/vmwareengine_v1/classes.rb', line 644 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
556 557 558 |
# File 'lib/google/apis/vmwareengine_v1/classes.rb', line 556 def action @action end |
#create_time ⇒ String
Output only. Creation time of this resource.
Corresponds to the JSON property createTime
561 562 563 |
# File 'lib/google/apis/vmwareengine_v1/classes.rb', line 561 def create_time @create_time end |
#description ⇒ String
User-provided description for this external access rule.
Corresponds to the JSON property description
566 567 568 |
# File 'lib/google/apis/vmwareengine_v1/classes.rb', line 566 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
576 577 578 |
# File 'lib/google/apis/vmwareengine_v1/classes.rb', line 576 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
584 585 586 |
# File 'lib/google/apis/vmwareengine_v1/classes.rb', line 584 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
591 592 593 |
# File 'lib/google/apis/vmwareengine_v1/classes.rb', line 591 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
599 600 601 |
# File 'lib/google/apis/vmwareengine_v1/classes.rb', line 599 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
610 611 612 |
# File 'lib/google/apis/vmwareengine_v1/classes.rb', line 610 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
619 620 621 |
# File 'lib/google/apis/vmwareengine_v1/classes.rb', line 619 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
627 628 629 |
# File 'lib/google/apis/vmwareengine_v1/classes.rb', line 627 def source_ports @source_ports end |
#state ⇒ String
Output only. The state of the resource.
Corresponds to the JSON property state
632 633 634 |
# File 'lib/google/apis/vmwareengine_v1/classes.rb', line 632 def state @state end |
#uid ⇒ String
Output only. System-generated unique identifier for the resource.
Corresponds to the JSON property uid
637 638 639 |
# File 'lib/google/apis/vmwareengine_v1/classes.rb', line 637 def uid @uid end |
#update_time ⇒ String
Output only. Last update time of this resource.
Corresponds to the JSON property updateTime
642 643 644 |
# File 'lib/google/apis/vmwareengine_v1/classes.rb', line 642 def update_time @update_time end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 |
# File 'lib/google/apis/vmwareengine_v1/classes.rb', line 649 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 |