@pulumi/aws
Version:
A Pulumi package for creating and managing Amazon Web Services (AWS) cloud resources.
217 lines (216 loc) • 6.64 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as outputs from "../types/output";
/**
* Retrieve information about a firewall.
*
* ## Example Usage
*
* ### Find firewall policy by ARN
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as aws from "@pulumi/aws";
*
* const example = aws.networkfirewall.getFirewall({
* arn: arn,
* });
* ```
*
* ### Find firewall policy by Name
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as aws from "@pulumi/aws";
*
* const example = aws.networkfirewall.getFirewall({
* name: "Test",
* });
* ```
*
* ### Find firewall policy by ARN and Name
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as aws from "@pulumi/aws";
*
* const example = aws.networkfirewall.getFirewall({
* arn: arn,
* name: "Test",
* });
* ```
*/
export declare function getFirewall(args?: GetFirewallArgs, opts?: pulumi.InvokeOptions): Promise<GetFirewallResult>;
/**
* A collection of arguments for invoking getFirewall.
*/
export interface GetFirewallArgs {
/**
* ARN of the firewall.
*/
arn?: string;
/**
* Descriptive name of the firewall.
*
* One or more of these arguments is required.
*/
name?: string;
/**
* Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.
*/
region?: string;
/**
* Map of resource tags to associate with the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
*/
tags?: {
[key: string]: string;
};
}
/**
* A collection of values returned by getFirewall.
*/
export interface GetFirewallResult {
/**
* ARN of the firewall.
*/
readonly arn: string;
/**
* Indicates whether the firewall is protected against changes to its Availability Zone configuration.
*/
readonly availabilityZoneChangeProtection: boolean;
/**
* Set of Availability Zones where the firewall endpoints are created for a transit gateway-attached firewall.
*/
readonly availabilityZoneMappings: outputs.networkfirewall.GetFirewallAvailabilityZoneMapping[];
/**
* A flag indicating whether the firewall is protected against deletion.
*/
readonly deleteProtection: boolean;
/**
* Description of the firewall.
*/
readonly description: string;
/**
* Set of types for which to collect analysis metrics.
*/
readonly enabledAnalysisTypes: string[];
/**
* AWS Key Management Service (AWS KMS) encryption settings for the firewall.
*/
readonly encryptionConfigurations: outputs.networkfirewall.GetFirewallEncryptionConfiguration[];
/**
* ARN of the VPC Firewall policy.
*/
readonly firewallPolicyArn: string;
/**
* A flag indicating whether the firewall is protected against a change to the firewall policy association.
*/
readonly firewallPolicyChangeProtection: boolean;
/**
* Nested list of information about the current status of the firewall.
*/
readonly firewallStatuses: outputs.networkfirewall.GetFirewallFirewallStatus[];
/**
* The provider-assigned unique ID for this managed resource.
*/
readonly id: string;
/**
* Descriptive name of the firewall.
*/
readonly name: string;
readonly region: string;
/**
* A flag indicating whether the firewall is protected against changes to the subnet associations.
*/
readonly subnetChangeProtection: boolean;
/**
* Set of configuration blocks describing the public subnets. Each subnet must belong to a different Availability Zone in the VPC. AWS Network Firewall creates a firewall endpoint in each subnet.
*/
readonly subnetMappings: outputs.networkfirewall.GetFirewallSubnetMapping[];
/**
* Map of resource tags to associate with the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
*/
readonly tags: {
[key: string]: string;
};
/**
* The unique identifier of the transit gateway associated with this firewall.
*/
readonly transitGatewayId: string;
/**
* The AWS account ID that owns the transit gateway.
*/
readonly transitGatewayOwnerAccountId: string;
/**
* String token used when updating a firewall.
*/
readonly updateToken: string;
/**
* Unique identifier of the VPC where AWS Network Firewall should create the firewall.
*/
readonly vpcId: string;
}
/**
* Retrieve information about a firewall.
*
* ## Example Usage
*
* ### Find firewall policy by ARN
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as aws from "@pulumi/aws";
*
* const example = aws.networkfirewall.getFirewall({
* arn: arn,
* });
* ```
*
* ### Find firewall policy by Name
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as aws from "@pulumi/aws";
*
* const example = aws.networkfirewall.getFirewall({
* name: "Test",
* });
* ```
*
* ### Find firewall policy by ARN and Name
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as aws from "@pulumi/aws";
*
* const example = aws.networkfirewall.getFirewall({
* arn: arn,
* name: "Test",
* });
* ```
*/
export declare function getFirewallOutput(args?: GetFirewallOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetFirewallResult>;
/**
* A collection of arguments for invoking getFirewall.
*/
export interface GetFirewallOutputArgs {
/**
* ARN of the firewall.
*/
arn?: pulumi.Input<string>;
/**
* Descriptive name of the firewall.
*
* One or more of these arguments is required.
*/
name?: pulumi.Input<string>;
/**
* Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.
*/
region?: pulumi.Input<string>;
/**
* Map of resource tags to associate with the resource. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
*/
tags?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
}