KmsconfigArgs

data class KmsconfigArgs(val cryptoKeyName: Output<String>? = null, val description: Output<String>? = null, val labels: Output<Map<String, String>>? = null, val location: Output<String>? = null, val name: Output<String>? = null, val project: Output<String>? = null) : ConvertibleToJava<KmsconfigArgs>

NetApp Volumes always encrypts your data at rest using volume-specific keys. A CMEK policy (customer-managed encryption key) warps such volume-specific keys in a key stored in Cloud Key Management Service (KMS). To get more information about kmsconfig, see:

Example Usage

Kms Config Create

import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const kmsConfig = new gcp.netapp.Kmsconfig("kmsConfig", {
name: "kms-test",
description: "this is a test description",
cryptoKeyName: "crypto-name",
location: "us-central1",
});
import pulumi
import pulumi_gcp as gcp
kms_config = gcp.netapp.Kmsconfig("kmsConfig",
name="kms-test",
description="this is a test description",
crypto_key_name="crypto-name",
location="us-central1")
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() =>
{
var kmsConfig = new Gcp.Netapp.Kmsconfig("kmsConfig", new()
{
Name = "kms-test",
Description = "this is a test description",
CryptoKeyName = "crypto-name",
Location = "us-central1",
});
});
package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/netapp"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := netapp.NewKmsconfig(ctx, "kmsConfig", &netapp.KmsconfigArgs{
Name: pulumi.String("kms-test"),
Description: pulumi.String("this is a test description"),
CryptoKeyName: pulumi.String("crypto-name"),
Location: pulumi.String("us-central1"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.netapp.Kmsconfig;
import com.pulumi.gcp.netapp.KmsconfigArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var kmsConfig = new Kmsconfig("kmsConfig", KmsconfigArgs.builder()
.name("kms-test")
.description("this is a test description")
.cryptoKeyName("crypto-name")
.location("us-central1")
.build());
}
}
resources:
kmsConfig:
type: gcp:netapp:Kmsconfig
properties:
name: kms-test
description: this is a test description
cryptoKeyName: crypto-name
location: us-central1

Import

kmsconfig can be imported using any of these accepted formats:

  • projects/{{project}}/locations/{{location}}/kmsConfigs/{{name}}

  • {{project}}/{{location}}/{{name}}

  • {{location}}/{{name}} When using the pulumi import command, kmsconfig can be imported using one of the formats above. For example:

$ pulumi import gcp:netapp/kmsconfig:Kmsconfig default projects/{{project}}/locations/{{location}}/kmsConfigs/{{name}}
$ pulumi import gcp:netapp/kmsconfig:Kmsconfig default {{project}}/{{location}}/{{name}}
$ pulumi import gcp:netapp/kmsconfig:Kmsconfig default {{location}}/{{name}}

Constructors

Link copied to clipboard
constructor(cryptoKeyName: Output<String>? = null, description: Output<String>? = null, labels: Output<Map<String, String>>? = null, location: Output<String>? = null, name: Output<String>? = null, project: Output<String>? = null)

Properties

Link copied to clipboard
val cryptoKeyName: Output<String>? = null

Resource name of the KMS key to use. Only regional keys are supported. Format: projects/{{project}}/locations/{{location}}/keyRings/{{key_ring}}/cryptoKeys/{{key}}.

Link copied to clipboard
val description: Output<String>? = null

Description for the CMEK policy.

Link copied to clipboard
val labels: Output<Map<String, String>>? = null

Labels as key value pairs. Example: { "owner": "Bob", "department": "finance", "purpose": "testing" }. Note: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field effective_labels for all of the labels present on the resource.

Link copied to clipboard
val location: Output<String>? = null

Name of the policy location. CMEK policies apply to the whole region.

Link copied to clipboard
val name: Output<String>? = null

Name of the CMEK policy.

Link copied to clipboard
val project: Output<String>? = null

The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

Functions

Link copied to clipboard
open override fun toJava(): KmsconfigArgs