UNPKG

@pulumi/scm

Version:

A Pulumi package for managing resources on Strata Cloud Manager.. Based on terraform-provider-scm: version v0.2.1

233 lines (232 loc) 6.44 kB
import * as pulumi from "@pulumi/pulumi"; import * as outputs from "./types/output"; /** * SecurityRule data source * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as scm from "@pulumi/scm"; * * // 1. Fetch by ID (Best for direct lookup) * const standardWebAccessById = scm.getSecurityRule({ * id: "2a550f26-3e98-47d0-984f-b51e4ff367de", * }); * export const fetchedStandardWebId = standardWebAccessById.then(standardWebAccessById => standardWebAccessById.id); * export const fetchedStandardWebName = standardWebAccessById.then(standardWebAccessById => standardWebAccessById.name); * export const fetchedStandardWebDescription = standardWebAccessById.then(standardWebAccessById => standardWebAccessById.description); * ``` */ export declare function getSecurityRule(args: GetSecurityRuleArgs, opts?: pulumi.InvokeOptions): Promise<GetSecurityRuleResult>; /** * A collection of arguments for invoking getSecurityRule. */ export interface GetSecurityRuleArgs { /** * The UUID of the security rule */ id: string; /** * The name of the security rule */ name?: string; } /** * A collection of values returned by getSecurityRule. */ export interface GetSecurityRuleResult { /** * The action to be taken when the rule is matched */ readonly action: string; /** * Allow url category */ readonly allowUrlCategories: outputs.GetSecurityRuleAllowUrlCategory[]; /** * Allow web application */ readonly allowWebApplications: outputs.GetSecurityRuleAllowWebApplication[]; /** * The application(s) being accessed */ readonly applications: string[]; /** * Block url category */ readonly blockUrlCategories: string[]; /** * Block web application */ readonly blockWebApplications: string[]; /** * The URL categories being accessed */ readonly categories: string[]; /** * Default profile settings */ readonly defaultProfileSettings: outputs.GetSecurityRuleDefaultProfileSettings; /** * The description of the security rule */ readonly description: string; /** * The destination Host Integrity Profile(s) */ readonly destinationHips: string[]; /** * The destination address(es) */ readonly destinations: string[]; /** * The device in which the resource is defined */ readonly device: string; /** * Devices */ readonly devices: string[]; /** * Is the security rule disabled? */ readonly disabled: boolean; /** * The folder in which the resource is defined */ readonly folder: string; /** * The source security zone(s) */ readonly froms: string[]; /** * The UUID of the security rule */ readonly id: string; /** * Log at session end? */ readonly logEnd: boolean; /** * The external log forwarding profile */ readonly logSetting: string; /** * Log settings */ readonly logSettings: outputs.GetSecurityRuleLogSettings; /** * Log at session start? */ readonly logStart: boolean; /** * The name of the security rule */ readonly name: string; /** * Negate the destination addresses(es)? */ readonly negateDestination: boolean; /** * Negate the source address(es)? */ readonly negateSource: boolean; /** * Negate user */ readonly negateUser: boolean; /** * Policy type */ readonly policyType: string; /** * The position of a security rule */ readonly position: string; /** * The security profile object */ readonly profileSetting: outputs.GetSecurityRuleProfileSetting; /** * Relative positioning rule. String must be one of these: `"before"`, `"after"`, `"top"`, `"bottom"`. If not specified, rule is created at the bottom of the ruleset. */ readonly relativePosition: string; /** * Schedule in which this rule will be applied */ readonly schedule: string; /** * Security settings */ readonly securitySettings: outputs.GetSecurityRuleSecuritySettings; /** * The service(s) being accessed */ readonly services: string[]; /** * The snippet in which the resource is defined */ readonly snippet: string; /** * The source Host Integrity Profile(s) */ readonly sourceHips: string[]; /** * List of source users and/or groups. Reserved words include `any`, `pre-login`, `known-user`, and `unknown`. */ readonly sourceUsers: string[]; /** * The source addresses(es) */ readonly sources: string[]; /** * The tags associated with the security rule */ readonly tags: string[]; /** * The name or UUID of the rule to position this rule relative to. Required when `relativePosition` is `"before"` or `"after"`. */ readonly targetRule: string; /** * Tenant restrictions */ readonly tenantRestrictions: string[]; readonly tfid: string; /** * The destination security zone(s) */ readonly tos: string[]; } /** * SecurityRule data source * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as scm from "@pulumi/scm"; * * // 1. Fetch by ID (Best for direct lookup) * const standardWebAccessById = scm.getSecurityRule({ * id: "2a550f26-3e98-47d0-984f-b51e4ff367de", * }); * export const fetchedStandardWebId = standardWebAccessById.then(standardWebAccessById => standardWebAccessById.id); * export const fetchedStandardWebName = standardWebAccessById.then(standardWebAccessById => standardWebAccessById.name); * export const fetchedStandardWebDescription = standardWebAccessById.then(standardWebAccessById => standardWebAccessById.description); * ``` */ export declare function getSecurityRuleOutput(args: GetSecurityRuleOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetSecurityRuleResult>; /** * A collection of arguments for invoking getSecurityRule. */ export interface GetSecurityRuleOutputArgs { /** * The UUID of the security rule */ id: pulumi.Input<string>; /** * The name of the security rule */ name?: pulumi.Input<string>; }