UNPKG

@huaweicloudos/pulumi

Version:

A Pulumi package for creating and managing Huaweicloud cloud resources.

216 lines (215 loc) 9.79 kB
import * as pulumi from "@pulumi/pulumi"; import { input as inputs, output as outputs } from "../types"; /** * Manages an ELB security policy resource within HuaweiCloud. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as huaweicloud from "@pulumi/huaweicloud"; * * const test = new huaweicloud.DedicatedElb.SecurityPolicy("test", { * ciphers: [ * "ECDHE-RSA-AES256-GCM-SHA384", * "ECDHE-RSA-AES128-GCM-SHA256", * ], * description: "this is a security policy", * protocols: [ * "TLSv1", * "TLSv1.1", * "TLSv1.2", * "TLSv1.3", * ], * }); * ``` * * ## Import * * The elb security policies can be imported using the `id`, e.g. bash * * ```sh * $ pulumi import huaweicloud:DedicatedElb/securityPolicy:SecurityPolicy test 0ce123456a00f2591fabc00385ff1234 * ``` */ export declare class SecurityPolicy extends pulumi.CustomResource { /** * Get an existing SecurityPolicy resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param state Any extra arguments used during the lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: SecurityPolicyState, opts?: pulumi.CustomResourceOptions): SecurityPolicy; /** * Returns true if the given object is an instance of SecurityPolicy. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is SecurityPolicy; /** * Specifies the cipher suite list of the security policy. * The protocol and cipher suite must match. That is to say, there must be at least one cipher suite in * ciphers that matches the protocol. The following cipher suites are supported: * **ECDHE-RSA-AES256-GCM-SHA384**, **ECDHE-RSA-AES128-GCM-SHA256**, **ECDHE-ECDSA-AES256-GCM-SHA384**, * **ECDHE-ECDSA-AES128-GCM-SHA256**, **AES128-GCM-SHA256**, **AES256-GCM-SHA384**, **ECDHE-ECDSA-AES128-SHA256**, * **ECDHE-RSA-AES128-SHA256**, **AES128-SHA256**, **AES256-SHA256**, **ECDHE-ECDSA-AES256-SHA384**, * **ECDHE-RSA-AES256-SHA384**, **ECDHE-ECDSA-AES128-SHA**, **ECDHE-RSA-AES128-SHA**, **ECDHE-RSA-AES256-SHA**, * **ECDHE-ECDSA-AES256-SHA**, **AES128-SHA**, **AES256-SHA**, **CAMELLIA128-SHA**, **DES-CBC3-SHA**, * **CAMELLIA256-SHA**, **ECDHE-RSA-CHACHA20-POLY1305**, **ECDHE-ECDSA-CHACHA20-POLY1305**, **TLS_AES_128_GCM_SHA256**, * **TLS_AES_256_GCM_SHA384**, **TLS_CHACHA20_POLY1305_SHA256**, **TLS_AES_128_CCM_SHA256**, * **TLS_AES_128_CCM_8_SHA256**. */ readonly ciphers: pulumi.Output<string[]>; /** * The create time of the security policy. */ readonly createdAt: pulumi.Output<string>; /** * Specifies the description of the ELB security policy. * The value can contain 0 to 255 characters. */ readonly description: pulumi.Output<string>; /** * Specifies the enterprise project ID to which the Enterprise * router belongs. */ readonly enterpriseProjectId: pulumi.Output<string>; /** * The listener which the security policy associated with. * The ListenerRef structure is documented below. */ readonly listeners: pulumi.Output<outputs.DedicatedElb.SecurityPolicyListener[]>; /** * Specifies the ELB security policy name. * The name contains only Chinese characters, letters, digits, underscores (_), and hyphens (-), * and cannot exceed 255 characters. */ readonly name: pulumi.Output<string>; /** * Specifies the TSL protocol list which the security policy select. * Value options: **TLSv1**, **TLSv1.1**, **TLSv1.2**, and **TLSv1.3**. */ readonly protocols: pulumi.Output<string[]>; /** * Specifies the region in which to create the resource. * If omitted, the provider-level region will be used. Changing this parameter will create a new resource. */ readonly region: pulumi.Output<string>; /** * The update time of the security policy. */ readonly updatedAt: pulumi.Output<string>; /** * Create a SecurityPolicy resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args: SecurityPolicyArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering SecurityPolicy resources. */ export interface SecurityPolicyState { /** * Specifies the cipher suite list of the security policy. * The protocol and cipher suite must match. That is to say, there must be at least one cipher suite in * ciphers that matches the protocol. The following cipher suites are supported: * **ECDHE-RSA-AES256-GCM-SHA384**, **ECDHE-RSA-AES128-GCM-SHA256**, **ECDHE-ECDSA-AES256-GCM-SHA384**, * **ECDHE-ECDSA-AES128-GCM-SHA256**, **AES128-GCM-SHA256**, **AES256-GCM-SHA384**, **ECDHE-ECDSA-AES128-SHA256**, * **ECDHE-RSA-AES128-SHA256**, **AES128-SHA256**, **AES256-SHA256**, **ECDHE-ECDSA-AES256-SHA384**, * **ECDHE-RSA-AES256-SHA384**, **ECDHE-ECDSA-AES128-SHA**, **ECDHE-RSA-AES128-SHA**, **ECDHE-RSA-AES256-SHA**, * **ECDHE-ECDSA-AES256-SHA**, **AES128-SHA**, **AES256-SHA**, **CAMELLIA128-SHA**, **DES-CBC3-SHA**, * **CAMELLIA256-SHA**, **ECDHE-RSA-CHACHA20-POLY1305**, **ECDHE-ECDSA-CHACHA20-POLY1305**, **TLS_AES_128_GCM_SHA256**, * **TLS_AES_256_GCM_SHA384**, **TLS_CHACHA20_POLY1305_SHA256**, **TLS_AES_128_CCM_SHA256**, * **TLS_AES_128_CCM_8_SHA256**. */ ciphers?: pulumi.Input<pulumi.Input<string>[]>; /** * The create time of the security policy. */ createdAt?: pulumi.Input<string>; /** * Specifies the description of the ELB security policy. * The value can contain 0 to 255 characters. */ description?: pulumi.Input<string>; /** * Specifies the enterprise project ID to which the Enterprise * router belongs. */ enterpriseProjectId?: pulumi.Input<string>; /** * The listener which the security policy associated with. * The ListenerRef structure is documented below. */ listeners?: pulumi.Input<pulumi.Input<inputs.DedicatedElb.SecurityPolicyListener>[]>; /** * Specifies the ELB security policy name. * The name contains only Chinese characters, letters, digits, underscores (_), and hyphens (-), * and cannot exceed 255 characters. */ name?: pulumi.Input<string>; /** * Specifies the TSL protocol list which the security policy select. * Value options: **TLSv1**, **TLSv1.1**, **TLSv1.2**, and **TLSv1.3**. */ protocols?: pulumi.Input<pulumi.Input<string>[]>; /** * Specifies the region in which to create the resource. * If omitted, the provider-level region will be used. Changing this parameter will create a new resource. */ region?: pulumi.Input<string>; /** * The update time of the security policy. */ updatedAt?: pulumi.Input<string>; } /** * The set of arguments for constructing a SecurityPolicy resource. */ export interface SecurityPolicyArgs { /** * Specifies the cipher suite list of the security policy. * The protocol and cipher suite must match. That is to say, there must be at least one cipher suite in * ciphers that matches the protocol. The following cipher suites are supported: * **ECDHE-RSA-AES256-GCM-SHA384**, **ECDHE-RSA-AES128-GCM-SHA256**, **ECDHE-ECDSA-AES256-GCM-SHA384**, * **ECDHE-ECDSA-AES128-GCM-SHA256**, **AES128-GCM-SHA256**, **AES256-GCM-SHA384**, **ECDHE-ECDSA-AES128-SHA256**, * **ECDHE-RSA-AES128-SHA256**, **AES128-SHA256**, **AES256-SHA256**, **ECDHE-ECDSA-AES256-SHA384**, * **ECDHE-RSA-AES256-SHA384**, **ECDHE-ECDSA-AES128-SHA**, **ECDHE-RSA-AES128-SHA**, **ECDHE-RSA-AES256-SHA**, * **ECDHE-ECDSA-AES256-SHA**, **AES128-SHA**, **AES256-SHA**, **CAMELLIA128-SHA**, **DES-CBC3-SHA**, * **CAMELLIA256-SHA**, **ECDHE-RSA-CHACHA20-POLY1305**, **ECDHE-ECDSA-CHACHA20-POLY1305**, **TLS_AES_128_GCM_SHA256**, * **TLS_AES_256_GCM_SHA384**, **TLS_CHACHA20_POLY1305_SHA256**, **TLS_AES_128_CCM_SHA256**, * **TLS_AES_128_CCM_8_SHA256**. */ ciphers: pulumi.Input<pulumi.Input<string>[]>; /** * Specifies the description of the ELB security policy. * The value can contain 0 to 255 characters. */ description?: pulumi.Input<string>; /** * Specifies the enterprise project ID to which the Enterprise * router belongs. */ enterpriseProjectId?: pulumi.Input<string>; /** * Specifies the ELB security policy name. * The name contains only Chinese characters, letters, digits, underscores (_), and hyphens (-), * and cannot exceed 255 characters. */ name?: pulumi.Input<string>; /** * Specifies the TSL protocol list which the security policy select. * Value options: **TLSv1**, **TLSv1.1**, **TLSv1.2**, and **TLSv1.3**. */ protocols: pulumi.Input<pulumi.Input<string>[]>; /** * Specifies the region in which to create the resource. * If omitted, the provider-level region will be used. Changing this parameter will create a new resource. */ region?: pulumi.Input<string>; }