Skip to main content

firewall_policies

Creates, updates, deletes, gets or lists a firewall_policies resource.

Overview​

Namefirewall_policies
TypeResource
Idgoogle.compute.firewall_policies

Fields​

The following fields are returned by SELECT queries:

NameDatatypeDescription
idstring (uint64)[Output Only] The unique identifier for the resource. This identifier is defined by the server.
namestringName of the resource. For Organization Firewall Policies it's a [Output Only] numeric ID allocated by Google Cloud which uniquely identifies the Organization Firewall Policy.
associationsarrayA list of associations that belong to this firewall policy.
creationTimestampstringOutput only. [Output Only] Creation timestamp inRFC3339 text format.
descriptionstringAn optional description of this resource. Provide this property when you create the resource.
displayNamestringDeprecated, please use short name instead. User-provided name of the Organization firewall policy. The name should be unique in the organization in which the firewall policy is created. This field is not applicable to network firewall policies. This name must be set on creation and cannot be changed. 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]([-a-z0-9]*[a-z0-9])? 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. (pattern: [a-z](?:[-a-z0-9]{0,61}[a-z0-9])?)
fingerprintstring (byte)Specifies a fingerprint for this resource, which is essentially a hash of the metadata's contents and used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update metadata. You must always provide an up-to-date fingerprint hash in order to update or change metadata, otherwise the request will fail with error412 conditionNotMet. To see the latest fingerprint, make get() request to the firewall policy.
kindstringOutput only. [Output only] Type of the resource. Alwayscompute#firewallPolicyfor firewall policies (default: compute#firewallPolicy)
packetMirroringRulesarrayA list of packet mirroring rules that belong to this policy.
parentstringOutput only. [Output Only] The parent of the firewall policy. This field is not applicable to network firewall policies.
policyTypestringThe type of the firewall policy. This field can be one of VPC_POLICY, RDMA_ROCE_POLICY or ULL_POLICY. Note: if not specified then VPC_POLICY will be used. (RDMA_ROCE_POLICY, ULL_POLICY, VPC_POLICY)
regionstringOutput only. [Output Only] URL of the region where the regional firewall policy resides. This field is not applicable to global firewall policies. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body.
ruleTupleCountinteger (int32)Output only. [Output Only] Total count of all firewall policy rule tuples. A firewall policy can not exceed a set number of tuples.
rulesarrayA list of rules that belong to this policy. There must always be a default rule (rule with priority 2147483647 and match "*"). If no rules are provided when creating a firewall policy, a default rule with action "allow" will be added.
selfLinkstring[Output Only] Server-defined URL for the resource.
selfLinkWithIdstringOutput only. [Output Only] Server-defined URL for this resource with the resource id.
shortNamestringUser-provided name of the Organization firewall policy. The name should be unique in the organization in which the firewall policy is created. This field is not applicable to network firewall policies. This name must be set on creation and cannot be changed. 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]([-a-z0-9]*[a-z0-9])? 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. (pattern: [a-z](?:[-a-z0-9]{0,61}[a-z0-9])?)

Methods​

The following methods are available for this resource:

NameAccessible byRequired ParamsOptional ParamsDescription
getselectproject, firewallPolicyReturns the specified network firewall policy.
listselectprojectfilter, maxResults, orderBy, pageToken, returnPartialSuccessLists all the policies that have been configured for the specified project.
insertinsertprojectrequestIdCreates a new policy in the specified project using the data included in
the request.
patchupdateproject, firewallPolicyrequestIdPatches the specified policy with the data included in the request.
deletedeleteproject, firewallPolicyrequestIdDeletes the specified policy.
clone_rulesexecproject, firewallPolicyrequestId, sourceFirewallPolicyCopies rules to the specified firewall policy.
moveexecfirewallPolicyparentId, requestIdMoves the specified firewall policy.

Parameters​

Parameters can be passed in the WHERE clause of a query. Check the Methods section to see which parameters are required or optional for each operation.

NameDatatypeDescription
firewallPolicystring
projectstring
filterstring
maxResultsinteger (uint32)
orderBystring
pageTokenstring
parentIdstring
requestIdstring
returnPartialSuccessboolean
sourceFirewallPolicystring

SELECT examples​

Returns the specified network firewall policy.

SELECT
id,
name,
associations,
creationTimestamp,
description,
displayName,
fingerprint,
kind,
packetMirroringRules,
parent,
policyType,
region,
ruleTupleCount,
rules,
selfLink,
selfLinkWithId,
shortName
FROM google.compute.firewall_policies
WHERE project = '{{ project }}' -- required
AND firewallPolicy = '{{ firewallPolicy }}' -- required
;

INSERT examples​

Creates a new policy in the specified project using the data included in
the request.

INSERT INTO google.compute.firewall_policies (
data__associations,
data__description,
data__displayName,
data__fingerprint,
data__id,
data__name,
data__packetMirroringRules,
data__policyType,
data__rules,
data__selfLink,
data__shortName,
project,
requestId
)
SELECT
'{{ associations }}',
'{{ description }}',
'{{ displayName }}',
'{{ fingerprint }}',
'{{ id }}',
'{{ name }}',
'{{ packetMirroringRules }}',
'{{ policyType }}',
'{{ rules }}',
'{{ selfLink }}',
'{{ shortName }}',
'{{ project }}',
'{{ requestId }}'
RETURNING
id,
name,
clientOperationId,
creationTimestamp,
description,
endTime,
error,
getVersionOperationMetadata,
httpErrorMessage,
httpErrorStatusCode,
insertTime,
instancesBulkInsertOperationMetadata,
kind,
operationGroupId,
operationType,
progress,
region,
selfLink,
setCommonInstanceMetadataOperationMetadata,
startTime,
status,
statusMessage,
targetId,
targetLink,
user,
warnings,
zone
;

UPDATE examples​

Patches the specified policy with the data included in the request.

UPDATE google.compute.firewall_policies
SET
data__associations = '{{ associations }}',
data__description = '{{ description }}',
data__displayName = '{{ displayName }}',
data__fingerprint = '{{ fingerprint }}',
data__id = '{{ id }}',
data__name = '{{ name }}',
data__packetMirroringRules = '{{ packetMirroringRules }}',
data__policyType = '{{ policyType }}',
data__rules = '{{ rules }}',
data__selfLink = '{{ selfLink }}',
data__shortName = '{{ shortName }}'
WHERE
project = '{{ project }}' --required
AND firewallPolicy = '{{ firewallPolicy }}' --required
AND requestId = '{{ requestId}}'
RETURNING
id,
name,
clientOperationId,
creationTimestamp,
description,
endTime,
error,
getVersionOperationMetadata,
httpErrorMessage,
httpErrorStatusCode,
insertTime,
instancesBulkInsertOperationMetadata,
kind,
operationGroupId,
operationType,
progress,
region,
selfLink,
setCommonInstanceMetadataOperationMetadata,
startTime,
status,
statusMessage,
targetId,
targetLink,
user,
warnings,
zone;

DELETE examples​

Deletes the specified policy.

DELETE FROM google.compute.firewall_policies
WHERE project = '{{ project }}' --required
AND firewallPolicy = '{{ firewallPolicy }}' --required
AND requestId = '{{ requestId }}'
;

Lifecycle Methods​

Copies rules to the specified firewall policy.

EXEC google.compute.firewall_policies.clone_rules
@project='{{ project }}' --required,
@firewallPolicy='{{ firewallPolicy }}' --required,
@requestId='{{ requestId }}',
@sourceFirewallPolicy='{{ sourceFirewallPolicy }}'
;