import * as pulumi from "@pulumi/pulumi"; /** * This resource provides the Tsig Key resource in Oracle Cloud Infrastructure DNS service. * Api doc link for the resource: https://docs.oracle.com/iaas/api/#/en/dns/latest/TsigKey * * Example terraform configs related to the resource : https://github.com/oracle/terraform-provider-oci/tree/master/examples/dns * * Creates a new TSIG key in the specified compartment. There is no * `opc-retry-token` header since TSIG key names must be globally unique. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as oci from "@pulumi/oci"; * * const testTsigKey = new oci.dns.TsigKey("test_tsig_key", { * algorithm: tsigKeyAlgorithm, * compartmentId: compartmentId, * name: tsigKeyName, * secret: tsigKeySecret, * definedTags: tsigKeyDefinedTags, * freeformTags: tsigKeyFreeformTags, * }); * ``` * * ## Import * * TsigKeys can be imported using the `id`, e.g. * * ```sh * $ pulumi import oci:Dns/tsigKey:TsigKey test_tsig_key "id" * ``` */ export declare class TsigKey extends pulumi.CustomResource { /** * Get an existing TsigKey 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, state?: TsigKeyState, opts?: pulumi.CustomResourceOptions): TsigKey; /** * Returns true if the given object is an instance of TsigKey. 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 TsigKey; /** * TSIG key algorithms are encoded as domain names, but most consist of only one non-empty label, which is not required to be explicitly absolute. Applicable algorithms include: hmac-sha1, hmac-sha224, hmac-sha256, hmac-sha512. For more information on these algorithms, see [RFC 4635](https://tools.ietf.org/html/rfc4635#section-2). */ readonly algorithm: pulumi.Output; /** * (Updatable) The OCID of the compartment containing the TSIG key. */ readonly compartmentId: pulumi.Output; /** * (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). * * **Example:** `{"Operations": {"CostCenter": "42"}}` */ readonly definedTags: pulumi.Output<{ [key: string]: string; }>; /** * (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). * * **Example:** `{"Department": "Finance"}` */ readonly freeformTags: pulumi.Output<{ [key: string]: string; }>; /** * A globally unique domain name identifying the key for a given pair of hosts. */ readonly name: pulumi.Output; /** * A base64 string encoding the binary shared secret. * * ** IMPORTANT ** * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values */ readonly secret: pulumi.Output; /** * The canonical absolute URL of the resource. */ readonly self: pulumi.Output; /** * The current state of the resource. */ readonly state: pulumi.Output; /** * The date and time the resource was created, expressed in RFC 3339 timestamp format. */ readonly timeCreated: pulumi.Output; /** * The date and time the resource was last updated, expressed in RFC 3339 timestamp format. */ readonly timeUpdated: pulumi.Output; /** * Create a TsigKey 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: TsigKeyArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering TsigKey resources. */ export interface TsigKeyState { /** * TSIG key algorithms are encoded as domain names, but most consist of only one non-empty label, which is not required to be explicitly absolute. Applicable algorithms include: hmac-sha1, hmac-sha224, hmac-sha256, hmac-sha512. For more information on these algorithms, see [RFC 4635](https://tools.ietf.org/html/rfc4635#section-2). */ algorithm?: pulumi.Input; /** * (Updatable) The OCID of the compartment containing the TSIG key. */ compartmentId?: pulumi.Input; /** * (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). * * **Example:** `{"Operations": {"CostCenter": "42"}}` */ definedTags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). * * **Example:** `{"Department": "Finance"}` */ freeformTags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * A globally unique domain name identifying the key for a given pair of hosts. */ name?: pulumi.Input; /** * A base64 string encoding the binary shared secret. * * ** IMPORTANT ** * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values */ secret?: pulumi.Input; /** * The canonical absolute URL of the resource. */ self?: pulumi.Input; /** * The current state of the resource. */ state?: pulumi.Input; /** * The date and time the resource was created, expressed in RFC 3339 timestamp format. */ timeCreated?: pulumi.Input; /** * The date and time the resource was last updated, expressed in RFC 3339 timestamp format. */ timeUpdated?: pulumi.Input; } /** * The set of arguments for constructing a TsigKey resource. */ export interface TsigKeyArgs { /** * TSIG key algorithms are encoded as domain names, but most consist of only one non-empty label, which is not required to be explicitly absolute. Applicable algorithms include: hmac-sha1, hmac-sha224, hmac-sha256, hmac-sha512. For more information on these algorithms, see [RFC 4635](https://tools.ietf.org/html/rfc4635#section-2). */ algorithm: pulumi.Input; /** * (Updatable) The OCID of the compartment containing the TSIG key. */ compartmentId: pulumi.Input; /** * (Updatable) Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). * * **Example:** `{"Operations": {"CostCenter": "42"}}` */ definedTags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * (Updatable) Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). * * **Example:** `{"Department": "Finance"}` */ freeformTags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * A globally unique domain name identifying the key for a given pair of hosts. */ name?: pulumi.Input; /** * A base64 string encoding the binary shared secret. * * ** IMPORTANT ** * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values */ secret: pulumi.Input; } //# sourceMappingURL=tsigKey.d.ts.map