Class: Google::Apis::ComputeV1::Firewall
- Inherits:
-
Object
- Object
- Google::Apis::ComputeV1::Firewall
- Defined in:
- generated/google/apis/compute_v1/classes.rb,
generated/google/apis/compute_v1/representations.rb,
generated/google/apis/compute_v1/representations.rb
Overview
Represents a Firewall resource.
Defined Under Namespace
Classes: Allowed
Instance Attribute Summary collapse
-
#allowed ⇒ Array<Google::Apis::ComputeV1::Firewall::Allowed>
The list of ALLOW rules specified by this firewall.
-
#creation_timestamp ⇒ String
[Output Only] Creation timestamp in RFC3339 text format.
-
#description ⇒ String
An optional description of this resource.
-
#id ⇒ Fixnum
[Output Only] The unique identifier for the resource.
-
#kind ⇒ String
[Output Only] Type of the resource.
-
#name ⇒ String
Name of the resource; provided by the client when the resource is created.
-
#network ⇒ String
URL of the network resource for this firewall rule.
-
#self_link ⇒ String
[Output Only] Server-defined URL for the resource.
-
#source_ranges ⇒ Array<String>
If source ranges are specified, the firewall will apply only to traffic that has source IP address in these ranges.
-
#source_tags ⇒ Array<String>
If source tags are specified, the firewall will apply only to traffic with source IP that belongs to a tag listed in source tags.
-
#target_tags ⇒ Array<String>
A list of instance tags indicating sets of instances located in the network that may make network connections as specified in allowed[].
Instance Method Summary collapse
-
#initialize(**args) ⇒ Firewall
constructor
A new instance of Firewall.
-
#update!(**args) ⇒ Object
Update properties of this object.
Methods included from Google::Apis::Core::JsonObjectSupport
Methods included from Google::Apis::Core::Hashable
Constructor Details
#initialize(**args) ⇒ Firewall
Returns a new instance of Firewall
2616 2617 2618 |
# File 'generated/google/apis/compute_v1/classes.rb', line 2616 def initialize(**args) update!(**args) end |
Instance Attribute Details
#allowed ⇒ Array<Google::Apis::ComputeV1::Firewall::Allowed>
The list of ALLOW rules specified by this firewall. Each rule specifies a
protocol and port-range tuple that describes a permitted connection.
Corresponds to the JSON property allowed
2533 2534 2535 |
# File 'generated/google/apis/compute_v1/classes.rb', line 2533 def allowed @allowed end |
#creation_timestamp ⇒ String
[Output Only] Creation timestamp in RFC3339 text format.
Corresponds to the JSON property creationTimestamp
2538 2539 2540 |
# File 'generated/google/apis/compute_v1/classes.rb', line 2538 def @creation_timestamp end |
#description ⇒ String
An optional description of this resource. Provide this property when you
create the resource.
Corresponds to the JSON property description
2544 2545 2546 |
# File 'generated/google/apis/compute_v1/classes.rb', line 2544 def description @description end |
#id ⇒ Fixnum
[Output Only] The unique identifier for the resource. This identifier is
defined by the server.
Corresponds to the JSON property id
2550 2551 2552 |
# File 'generated/google/apis/compute_v1/classes.rb', line 2550 def id @id end |
#kind ⇒ String
[Output Only] Type of the resource. Always compute#firewall for firewall rules.
Corresponds to the JSON property kind
2555 2556 2557 |
# File 'generated/google/apis/compute_v1/classes.rb', line 2555 def kind @kind end |
#name ⇒ String
Name of the resource; provided by the client when the resource is created. The
name must be 1-63 characters long, and comply with RFC1035. Specifically, the
name must be 1-63 characters long and match the regular expression a-z? which means the first character must be a lowercase letter,
and all following characters must be a dash, lowercase letter, or digit,
except the last character, which cannot be a dash.
Corresponds to the JSON property name
2565 2566 2567 |
# File 'generated/google/apis/compute_v1/classes.rb', line 2565 def name @name end |
#network ⇒ String
URL of the network resource for this firewall rule. If not specified when creating a firewall rule, the default network is used: global/networks/default If you choose to specify this property, you can specify the network as a full or partial URL. For example, the following are all valid URLs:
- https://www.googleapis.com/compute/v1/projects/myproject/global/networks/my- network
- projects/myproject/global/networks/my-network
- global/networks/default
Corresponds to the JSON property
network
2578 2579 2580 |
# File 'generated/google/apis/compute_v1/classes.rb', line 2578 def network @network end |
#self_link ⇒ String
[Output Only] Server-defined URL for the resource.
Corresponds to the JSON property selfLink
2583 2584 2585 |
# File 'generated/google/apis/compute_v1/classes.rb', line 2583 def self_link @self_link end |
#source_ranges ⇒ Array<String>
If source ranges are specified, the firewall will apply only to traffic that
has source IP address in these ranges. These ranges must be expressed in CIDR
format. One or both of sourceRanges and sourceTags may be set. If both
properties are set, the firewall will apply to traffic that has source IP
address within sourceRanges OR the source IP that belongs to a tag listed in
the sourceTags property. The connection does not need to match both properties
for the firewall to apply. Only IPv4 is supported.
Corresponds to the JSON property sourceRanges
2594 2595 2596 |
# File 'generated/google/apis/compute_v1/classes.rb', line 2594 def source_ranges @source_ranges end |
#source_tags ⇒ Array<String>
If source tags are specified, the firewall will apply only to traffic with
source IP that belongs to a tag listed in source tags. Source tags cannot be
used to control traffic to an instance's external IP address. Because tags are
associated with an instance, not an IP address. One or both of sourceRanges
and sourceTags may be set. If both properties are set, the firewall will apply
to traffic that has source IP address within sourceRanges OR the source IP
that belongs to a tag listed in the sourceTags property. The connection does
not need to match both properties for the firewall to apply.
Corresponds to the JSON property sourceTags
2606 2607 2608 |
# File 'generated/google/apis/compute_v1/classes.rb', line 2606 def @source_tags end |
#target_tags ⇒ Array<String>
A list of instance tags indicating sets of instances located in the network
that may make network connections as specified in allowed[]. If no targetTags
are specified, the firewall rule applies to all instances on the specified
network.
Corresponds to the JSON property targetTags
2614 2615 2616 |
# File 'generated/google/apis/compute_v1/classes.rb', line 2614 def @target_tags end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
2621 2622 2623 2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 |
# File 'generated/google/apis/compute_v1/classes.rb', line 2621 def update!(**args) @allowed = args[:allowed] if args.key?(:allowed) @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) @description = args[:description] if args.key?(:description) @id = args[:id] if args.key?(:id) @kind = args[:kind] if args.key?(:kind) @name = args[:name] if args.key?(:name) @network = args[:network] if args.key?(:network) @self_link = args[:self_link] if args.key?(:self_link) @source_ranges = args[:source_ranges] if args.key?(:source_ranges) @source_tags = args[:source_tags] if args.key?(:source_tags) @target_tags = args[:target_tags] if args.key?(:target_tags) end |