@pulumi/cloudngfwaws
Version:
A Pulumi package for creating and managing Cloud NGFW for AWS resources.
314 lines (313 loc) • 6.49 kB
TypeScript
import * as outputs from "../types/output";
export interface GetAccountsAccountDetail {
/**
* The account id.
*/
accountId: string;
/**
* External Id of the onboarded account
*/
externalId: string;
/**
* Onboarding status of the account.
*/
onboardingStatus: string;
}
export interface GetNgfwLogProfileLogDestination {
/**
* The log destination details.
*/
destination: string;
/**
* The log destination type. Valid values are `S3`, `CloudWatchLogs`, or `KinesisDataFirehose`.
*/
destinationType: string;
/**
* The type of logs. Valid values are `TRAFFIC`, `THREAT`, or `DECRYPTION`.
*/
logType: string;
}
export interface GetNgfwStatus {
/**
* The firewall attachments.
*/
attachments: outputs.GetNgfwStatusAttachment[];
/**
* The firewall failure reason.
*/
failureReason: string;
/**
* The firewall status.
*/
firewallStatus: string;
/**
* The rulestack status.
*/
rulestackStatus: string;
}
export interface GetNgfwStatusAttachment {
/**
* The endpoint id.
*/
endpointId: string;
/**
* The reject reason.
*/
rejectedReason: string;
/**
* The attachment status.
*/
status: string;
/**
* The subnet id.
*/
subnetId: string;
}
export interface GetNgfwSubnetMapping {
/**
* The availability zone, for when the endpoint mode is customer managed.
*/
availabilityZone: string;
/**
* The availability zone ID, for when the endpoint mode is customer managed.
*/
availabilityZoneId: string;
/**
* The subnet id, for when the endpoint mode is service managed.
*/
subnetId: string;
}
export interface GetNgfwsInstance {
/**
* The account id.
*/
accountId: string;
/**
* The NGFW name.
*/
name: string;
}
export interface GetRulestackProfileConfig {
/**
* Anti-spyware profile setting.
*/
antiSpyware: string;
/**
* Anti-virus profile setting.
*/
antiVirus: string;
/**
* File blocking profile setting.
*/
fileBlocking: string;
/**
* Outbound trust certificate.
*/
outboundTrustCertificate: string;
/**
* Outbound untrust certificate.
*/
outboundUntrustCertificate: string;
/**
* URL filtering profile setting.
*/
urlFiltering: string;
/**
* Vulnerability profile setting.
*/
vulnerability: string;
}
export interface GetSecurityRuleCategory {
/**
* List of feeds.
*/
feeds: string[];
/**
* List of URL category names.
*/
urlCategoryNames: string[];
}
export interface GetSecurityRuleDestination {
/**
* List of CIDRs.
*/
cidrs: string[];
/**
* List of countries.
*/
countries: string[];
/**
* List of feeds.
*/
feeds: string[];
/**
* List of FQDN lists.
*/
fqdnLists: string[];
/**
* List of prefix list.
*/
prefixLists: string[];
}
export interface GetSecurityRuleSource {
/**
* List of CIDRs.
*/
cidrs: string[];
/**
* List of countries.
*/
countries: string[];
/**
* List of feeds.
*/
feeds: string[];
/**
* List of prefix list.
*/
prefixLists: string[];
}
export interface NgfwLogProfileLogDestination {
/**
* The log destination details.
*/
destination?: string;
/**
* The log destination type. Valid values are `S3`, `CloudWatchLogs`, or `KinesisDataFirehose`.
*/
destinationType?: string;
/**
* The type of logs. Valid values are `TRAFFIC`, `THREAT`, or `DECRYPTION`.
*/
logType?: string;
}
export interface NgfwStatus {
/**
* The firewall attachments.
*/
attachments: outputs.NgfwStatusAttachment[];
/**
* The firewall failure reason.
*/
failureReason: string;
/**
* The firewall status.
*/
firewallStatus: string;
/**
* The rulestack status.
*/
rulestackStatus: string;
}
export interface NgfwStatusAttachment {
/**
* The endpoint id.
*/
endpointId: string;
/**
* The reject reason.
*/
rejectedReason: string;
/**
* The attachment status.
*/
status: string;
/**
* The subnet id.
*/
subnetId: string;
}
export interface NgfwSubnetMapping {
/**
* The availability zone, for when the endpoint mode is customer managed.
*/
availabilityZone: string;
/**
* The availability zone ID, for when the endpoint mode is customer managed.
*/
availabilityZoneId: string;
/**
* The subnet id, for when the endpoint mode is service managed.
*/
subnetId?: string;
}
export interface RulestackProfileConfig {
/**
* Anti-spyware profile setting. Defaults to `BestPractice`.
*/
antiSpyware?: string;
/**
* Anti-virus profile setting. Defaults to `BestPractice`.
*/
antiVirus?: string;
/**
* File blocking profile setting. Defaults to `BestPractice`.
*/
fileBlocking?: string;
/**
* Outbound trust certificate.
*/
outboundTrustCertificate?: string;
/**
* Outbound untrust certificate.
*/
outboundUntrustCertificate?: string;
/**
* URL filtering profile setting. Defaults to `None`.
*/
urlFiltering?: string;
/**
* Vulnerability profile setting. Defaults to `BestPractice`.
*/
vulnerability?: string;
}
export interface SecurityRuleCategory {
/**
* List of feeds.
*/
feeds?: string[];
/**
* List of URL category names.
*/
urlCategoryNames?: string[];
}
export interface SecurityRuleDestination {
/**
* List of CIDRs.
*/
cidrs?: string[];
/**
* List of countries.
*/
countries?: string[];
/**
* List of feeds.
*/
feeds?: string[];
/**
* List of FQDN lists.
*/
fqdnLists?: string[];
/**
* List of prefix list.
*/
prefixLists?: string[];
}
export interface SecurityRuleSource {
/**
* List of CIDRs.
*/
cidrs?: string[];
/**
* List of countries.
*/
countries?: string[];
/**
* List of feeds.
*/
feeds?: string[];
/**
* List of prefix list.
*/
prefixLists?: string[];
}