UNPKG

@pulumi/openstack

Version:

A Pulumi package for creating and managing OpenStack cloud resources.

236 lines (235 loc) • 9.25 kB
import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * Manages a V2 Neutron IPSec policy resource within OpenStack. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as openstack from "@pulumi/openstack"; * * const policy1 = new openstack.vpnaas.IpSecPolicy("policy_1", {name: "my_policy"}); * ``` * * ## Import * * Policies can be imported using the `id`, e.g. * * ```sh * $ pulumi import openstack:vpnaas/ipSecPolicy:IpSecPolicy policy_1 832cb7f3-59fe-40cf-8f64-8350ffc03272 * ``` */ export declare class IpSecPolicy extends pulumi.CustomResource { /** * Get an existing IpSecPolicy 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?: IpSecPolicyState, opts?: pulumi.CustomResourceOptions): IpSecPolicy; /** * Returns true if the given object is an instance of IpSecPolicy. 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 IpSecPolicy; /** * The authentication hash algorithm. Valid values are sha1, sha256, sha384, sha512, * aes-xcbc, aes-cmac. Default is sha1. * Changing this updates the algorithm of the existing policy. */ readonly authAlgorithm: pulumi.Output<string>; /** * The human-readable description for the policy. * Changing this updates the description of the existing policy. */ readonly description: pulumi.Output<string | undefined>; /** * The encapsulation mode. Valid values are tunnel and transport. Default is tunnel. * Changing this updates the existing policy. */ readonly encapsulationMode: pulumi.Output<string>; /** * The encryption algorithm. Valid values are 3des, aes-128, aes-192, aes-256, * aes-KKK-ctr, aes-KKK-ccm-II, aes-KKK-gcm-II (with KKK = 128/192/256 bits key size and II = 8/12/16 octets ICV). * The default value is aes-128. Changing this updates the existing policy. */ readonly encryptionAlgorithm: pulumi.Output<string>; /** * The lifetime of the security association. Consists of Unit and Value. */ readonly lifetimes: pulumi.Output<outputs.vpnaas.IpSecPolicyLifetime[]>; /** * The name of the policy. Changing this updates the name of * the existing policy. */ readonly name: pulumi.Output<string>; /** * The perfect forward secrecy mode. Valid values are group2, group5 and group14 to group31. * Default is group5. Changing this updates the existing policy. */ readonly pfs: pulumi.Output<string>; /** * The region in which to obtain the V2 Networking client. * A Networking client is needed to create an IPSec policy. If omitted, the * `region` argument of the provider is used. Changing this creates a new * policy. */ readonly region: pulumi.Output<string>; /** * The owner of the policy. Required if admin wants to * create a policy for another project. Changing this creates a new policy. */ readonly tenantId: pulumi.Output<string>; /** * The transform protocol. Valid values are esp, ah and ah-esp. * Changing this updates the existing policy. Default is ESP. */ readonly transformProtocol: pulumi.Output<string>; /** * Map of additional options. */ readonly valueSpecs: pulumi.Output<{ [key: string]: string; } | undefined>; /** * Create a IpSecPolicy 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?: IpSecPolicyArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering IpSecPolicy resources. */ export interface IpSecPolicyState { /** * The authentication hash algorithm. Valid values are sha1, sha256, sha384, sha512, * aes-xcbc, aes-cmac. Default is sha1. * Changing this updates the algorithm of the existing policy. */ authAlgorithm?: pulumi.Input<string>; /** * The human-readable description for the policy. * Changing this updates the description of the existing policy. */ description?: pulumi.Input<string>; /** * The encapsulation mode. Valid values are tunnel and transport. Default is tunnel. * Changing this updates the existing policy. */ encapsulationMode?: pulumi.Input<string>; /** * The encryption algorithm. Valid values are 3des, aes-128, aes-192, aes-256, * aes-KKK-ctr, aes-KKK-ccm-II, aes-KKK-gcm-II (with KKK = 128/192/256 bits key size and II = 8/12/16 octets ICV). * The default value is aes-128. Changing this updates the existing policy. */ encryptionAlgorithm?: pulumi.Input<string>; /** * The lifetime of the security association. Consists of Unit and Value. */ lifetimes?: pulumi.Input<pulumi.Input<inputs.vpnaas.IpSecPolicyLifetime>[]>; /** * The name of the policy. Changing this updates the name of * the existing policy. */ name?: pulumi.Input<string>; /** * The perfect forward secrecy mode. Valid values are group2, group5 and group14 to group31. * Default is group5. Changing this updates the existing policy. */ pfs?: pulumi.Input<string>; /** * The region in which to obtain the V2 Networking client. * A Networking client is needed to create an IPSec policy. If omitted, the * `region` argument of the provider is used. Changing this creates a new * policy. */ region?: pulumi.Input<string>; /** * The owner of the policy. Required if admin wants to * create a policy for another project. Changing this creates a new policy. */ tenantId?: pulumi.Input<string>; /** * The transform protocol. Valid values are esp, ah and ah-esp. * Changing this updates the existing policy. Default is ESP. */ transformProtocol?: pulumi.Input<string>; /** * Map of additional options. */ valueSpecs?: pulumi.Input<{ [key: string]: pulumi.Input<string>; }>; } /** * The set of arguments for constructing a IpSecPolicy resource. */ export interface IpSecPolicyArgs { /** * The authentication hash algorithm. Valid values are sha1, sha256, sha384, sha512, * aes-xcbc, aes-cmac. Default is sha1. * Changing this updates the algorithm of the existing policy. */ authAlgorithm?: pulumi.Input<string>; /** * The human-readable description for the policy. * Changing this updates the description of the existing policy. */ description?: pulumi.Input<string>; /** * The encapsulation mode. Valid values are tunnel and transport. Default is tunnel. * Changing this updates the existing policy. */ encapsulationMode?: pulumi.Input<string>; /** * The encryption algorithm. Valid values are 3des, aes-128, aes-192, aes-256, * aes-KKK-ctr, aes-KKK-ccm-II, aes-KKK-gcm-II (with KKK = 128/192/256 bits key size and II = 8/12/16 octets ICV). * The default value is aes-128. Changing this updates the existing policy. */ encryptionAlgorithm?: pulumi.Input<string>; /** * The lifetime of the security association. Consists of Unit and Value. */ lifetimes?: pulumi.Input<pulumi.Input<inputs.vpnaas.IpSecPolicyLifetime>[]>; /** * The name of the policy. Changing this updates the name of * the existing policy. */ name?: pulumi.Input<string>; /** * The perfect forward secrecy mode. Valid values are group2, group5 and group14 to group31. * Default is group5. Changing this updates the existing policy. */ pfs?: pulumi.Input<string>; /** * The region in which to obtain the V2 Networking client. * A Networking client is needed to create an IPSec policy. If omitted, the * `region` argument of the provider is used. Changing this creates a new * policy. */ region?: pulumi.Input<string>; /** * The owner of the policy. Required if admin wants to * create a policy for another project. Changing this creates a new policy. */ tenantId?: pulumi.Input<string>; /** * The transform protocol. Valid values are esp, ah and ah-esp. * Changing this updates the existing policy. Default is ESP. */ transformProtocol?: pulumi.Input<string>; /** * Map of additional options. */ valueSpecs?: pulumi.Input<{ [key: string]: pulumi.Input<string>; }>; }