Class: Google::Apis::ComputeBeta::Firewall
- Inherits:
-
Object
- Object
- Google::Apis::ComputeBeta::Firewall
- Defined in:
- generated/google/apis/compute_beta/classes.rb,
generated/google/apis/compute_beta/representations.rb,
generated/google/apis/compute_beta/representations.rb
Overview
Represents a Firewall resource.
Defined Under Namespace
Classes: Allowed
Instance Attribute Summary collapse
-
#allowed ⇒ Array<Google::Apis::ComputeBeta::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 ⇒ String
[Output Only] The unique identifier for the resource.
-
#kind ⇒ String
[Output Ony] 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.
2827 2828 2829 |
# File 'generated/google/apis/compute_beta/classes.rb', line 2827 def initialize(**args) update!(**args) end |
Instance Attribute Details
#allowed ⇒ Array<Google::Apis::ComputeBeta::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
2744 2745 2746 |
# File 'generated/google/apis/compute_beta/classes.rb', line 2744 def allowed @allowed end |
#creation_timestamp ⇒ String
[Output Only] Creation timestamp in RFC3339 text format.
Corresponds to the JSON property creationTimestamp
2749 2750 2751 |
# File 'generated/google/apis/compute_beta/classes.rb', line 2749 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
2755 2756 2757 |
# File 'generated/google/apis/compute_beta/classes.rb', line 2755 def description @description end |
#id ⇒ String
[Output Only] The unique identifier for the resource. This identifier is
defined by the server.
Corresponds to the JSON property id
2761 2762 2763 |
# File 'generated/google/apis/compute_beta/classes.rb', line 2761 def id @id end |
#kind ⇒ String
[Output Ony] Type of the resource. Always compute#firewall for firewall rules.
Corresponds to the JSON property kind
2766 2767 2768 |
# File 'generated/google/apis/compute_beta/classes.rb', line 2766 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
2776 2777 2778 |
# File 'generated/google/apis/compute_beta/classes.rb', line 2776 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
2789 2790 2791 |
# File 'generated/google/apis/compute_beta/classes.rb', line 2789 def network @network end |
#self_link ⇒ String
[Output Only] Server-defined URL for the resource.
Corresponds to the JSON property selfLink
2794 2795 2796 |
# File 'generated/google/apis/compute_beta/classes.rb', line 2794 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
2805 2806 2807 |
# File 'generated/google/apis/compute_beta/classes.rb', line 2805 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
2817 2818 2819 |
# File 'generated/google/apis/compute_beta/classes.rb', line 2817 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
2825 2826 2827 |
# File 'generated/google/apis/compute_beta/classes.rb', line 2825 def @target_tags end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
2832 2833 2834 2835 2836 2837 2838 2839 2840 2841 2842 2843 2844 |
# File 'generated/google/apis/compute_beta/classes.rb', line 2832 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 |