We recommend using Azure Native.
azure.keyvault.getKey
Explore with Pulumi AI
Use this data source to access information about an existing Key Vault Key.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const example = azure.keyvault.getKey({
    name: "secret-sauce",
    keyVaultId: existing.id,
});
export const keyType = example.then(example => example.keyType);
import pulumi
import pulumi_azure as azure
example = azure.keyvault.get_key(name="secret-sauce",
    key_vault_id=existing["id"])
pulumi.export("keyType", example.key_type)
package main
import (
	"github.com/pulumi/pulumi-azure/sdk/v5/go/azure/keyvault"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := keyvault.LookupKey(ctx, &keyvault.LookupKeyArgs{
			Name:       "secret-sauce",
			KeyVaultId: existing.Id,
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("keyType", example.KeyType)
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Azure = Pulumi.Azure;
return await Deployment.RunAsync(() => 
{
    var example = Azure.KeyVault.GetKey.Invoke(new()
    {
        Name = "secret-sauce",
        KeyVaultId = existing.Id,
    });
    return new Dictionary<string, object?>
    {
        ["keyType"] = example.Apply(getKeyResult => getKeyResult.KeyType),
    };
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azure.keyvault.KeyvaultFunctions;
import com.pulumi.azure.keyvault.inputs.GetKeyArgs;
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) {
        final var example = KeyvaultFunctions.getKey(GetKeyArgs.builder()
            .name("secret-sauce")
            .keyVaultId(existing.id())
            .build());
        ctx.export("keyType", example.applyValue(getKeyResult -> getKeyResult.keyType()));
    }
}
variables:
  example:
    fn::invoke:
      Function: azure:keyvault:getKey
      Arguments:
        name: secret-sauce
        keyVaultId: ${existing.id}
outputs:
  keyType: ${example.keyType}
Using getKey
Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.
function getKey(args: GetKeyArgs, opts?: InvokeOptions): Promise<GetKeyResult>
function getKeyOutput(args: GetKeyOutputArgs, opts?: InvokeOptions): Output<GetKeyResult>def get_key(key_vault_id: Optional[str] = None,
            name: Optional[str] = None,
            opts: Optional[InvokeOptions] = None) -> GetKeyResult
def get_key_output(key_vault_id: Optional[pulumi.Input[str]] = None,
            name: Optional[pulumi.Input[str]] = None,
            opts: Optional[InvokeOptions] = None) -> Output[GetKeyResult]func LookupKey(ctx *Context, args *LookupKeyArgs, opts ...InvokeOption) (*LookupKeyResult, error)
func LookupKeyOutput(ctx *Context, args *LookupKeyOutputArgs, opts ...InvokeOption) LookupKeyResultOutput> Note: This function is named LookupKey in the Go SDK.
public static class GetKey 
{
    public static Task<GetKeyResult> InvokeAsync(GetKeyArgs args, InvokeOptions? opts = null)
    public static Output<GetKeyResult> Invoke(GetKeyInvokeArgs args, InvokeOptions? opts = null)
}public static CompletableFuture<GetKeyResult> getKey(GetKeyArgs args, InvokeOptions options)
// Output-based functions aren't available in Java yet
fn::invoke:
  function: azure:keyvault/getKey:getKey
  arguments:
    # arguments dictionaryThe following arguments are supported:
- Key
Vault stringId  Specifies the ID of the Key Vault instance where the Secret resides, available on the
azure.keyvault.KeyVaultData Source / Resource.NOTE: The vault must be in the same subscription as the provider. If the vault is in another subscription, you must create an aliased provider for that subscription.
- Name string
 - Specifies the name of the Key Vault Key.
 
- Key
Vault stringId  Specifies the ID of the Key Vault instance where the Secret resides, available on the
azure.keyvault.KeyVaultData Source / Resource.NOTE: The vault must be in the same subscription as the provider. If the vault is in another subscription, you must create an aliased provider for that subscription.
- Name string
 - Specifies the name of the Key Vault Key.
 
- key
Vault StringId  Specifies the ID of the Key Vault instance where the Secret resides, available on the
azure.keyvault.KeyVaultData Source / Resource.NOTE: The vault must be in the same subscription as the provider. If the vault is in another subscription, you must create an aliased provider for that subscription.
- name String
 - Specifies the name of the Key Vault Key.
 
- key
Vault stringId  Specifies the ID of the Key Vault instance where the Secret resides, available on the
azure.keyvault.KeyVaultData Source / Resource.NOTE: The vault must be in the same subscription as the provider. If the vault is in another subscription, you must create an aliased provider for that subscription.
- name string
 - Specifies the name of the Key Vault Key.
 
- key_
vault_ strid  Specifies the ID of the Key Vault instance where the Secret resides, available on the
azure.keyvault.KeyVaultData Source / Resource.NOTE: The vault must be in the same subscription as the provider. If the vault is in another subscription, you must create an aliased provider for that subscription.
- name str
 - Specifies the name of the Key Vault Key.
 
- key
Vault StringId  Specifies the ID of the Key Vault instance where the Secret resides, available on the
azure.keyvault.KeyVaultData Source / Resource.NOTE: The vault must be in the same subscription as the provider. If the vault is in another subscription, you must create an aliased provider for that subscription.
- name String
 - Specifies the name of the Key Vault Key.
 
getKey Result
The following output properties are available:
- Curve string
 - The EC Curve name of this Key Vault Key.
 - E string
 - The RSA public exponent of this Key Vault Key.
 - Id string
 - The provider-assigned unique ID for this managed resource.
 - Key
Opts List<string> - A list of JSON web key operations assigned to this Key Vault Key
 - Key
Size int - Specifies the Size of this Key Vault Key.
 - Key
Type string - Specifies the Key Type of this Key Vault Key
 - Key
Vault stringId  - N string
 - The RSA modulus of this Key Vault Key.
 - Name string
 - Public
Key stringOpenssh  - The OpenSSH encoded public key of this Key Vault Key.
 - Public
Key stringPem  - The PEM encoded public key of this Key Vault Key.
 - Resource
Id string - The (Versioned) ID for this Key Vault Key. This property points to a specific version of a Key Vault Key, as such using this won't auto-rotate values if used in other Azure Services.
 - Resource
Versionless stringId  - The Versionless ID of the Key Vault Key. This property allows other Azure Services (that support it) to auto-rotate their value when the Key Vault Key is updated.
 - Dictionary<string, string>
 - A mapping of tags assigned to this Key Vault Key.
 - Version string
 - The current version of the Key Vault Key.
 - Versionless
Id string - The Base ID of the Key Vault Key.
 - X string
 - The EC X component of this Key Vault Key.
 - Y string
 - The EC Y component of this Key Vault Key.
 
- Curve string
 - The EC Curve name of this Key Vault Key.
 - E string
 - The RSA public exponent of this Key Vault Key.
 - Id string
 - The provider-assigned unique ID for this managed resource.
 - Key
Opts []string - A list of JSON web key operations assigned to this Key Vault Key
 - Key
Size int - Specifies the Size of this Key Vault Key.
 - Key
Type string - Specifies the Key Type of this Key Vault Key
 - Key
Vault stringId  - N string
 - The RSA modulus of this Key Vault Key.
 - Name string
 - Public
Key stringOpenssh  - The OpenSSH encoded public key of this Key Vault Key.
 - Public
Key stringPem  - The PEM encoded public key of this Key Vault Key.
 - Resource
Id string - The (Versioned) ID for this Key Vault Key. This property points to a specific version of a Key Vault Key, as such using this won't auto-rotate values if used in other Azure Services.
 - Resource
Versionless stringId  - The Versionless ID of the Key Vault Key. This property allows other Azure Services (that support it) to auto-rotate their value when the Key Vault Key is updated.
 - map[string]string
 - A mapping of tags assigned to this Key Vault Key.
 - Version string
 - The current version of the Key Vault Key.
 - Versionless
Id string - The Base ID of the Key Vault Key.
 - X string
 - The EC X component of this Key Vault Key.
 - Y string
 - The EC Y component of this Key Vault Key.
 
- curve String
 - The EC Curve name of this Key Vault Key.
 - e String
 - The RSA public exponent of this Key Vault Key.
 - id String
 - The provider-assigned unique ID for this managed resource.
 - key
Opts List<String> - A list of JSON web key operations assigned to this Key Vault Key
 - key
Size Integer - Specifies the Size of this Key Vault Key.
 - key
Type String - Specifies the Key Type of this Key Vault Key
 - key
Vault StringId  - n String
 - The RSA modulus of this Key Vault Key.
 - name String
 - public
Key StringOpenssh  - The OpenSSH encoded public key of this Key Vault Key.
 - public
Key StringPem  - The PEM encoded public key of this Key Vault Key.
 - resource
Id String - The (Versioned) ID for this Key Vault Key. This property points to a specific version of a Key Vault Key, as such using this won't auto-rotate values if used in other Azure Services.
 - resource
Versionless StringId  - The Versionless ID of the Key Vault Key. This property allows other Azure Services (that support it) to auto-rotate their value when the Key Vault Key is updated.
 - Map<String,String>
 - A mapping of tags assigned to this Key Vault Key.
 - version String
 - The current version of the Key Vault Key.
 - versionless
Id String - The Base ID of the Key Vault Key.
 - x String
 - The EC X component of this Key Vault Key.
 - y String
 - The EC Y component of this Key Vault Key.
 
- curve string
 - The EC Curve name of this Key Vault Key.
 - e string
 - The RSA public exponent of this Key Vault Key.
 - id string
 - The provider-assigned unique ID for this managed resource.
 - key
Opts string[] - A list of JSON web key operations assigned to this Key Vault Key
 - key
Size number - Specifies the Size of this Key Vault Key.
 - key
Type string - Specifies the Key Type of this Key Vault Key
 - key
Vault stringId  - n string
 - The RSA modulus of this Key Vault Key.
 - name string
 - public
Key stringOpenssh  - The OpenSSH encoded public key of this Key Vault Key.
 - public
Key stringPem  - The PEM encoded public key of this Key Vault Key.
 - resource
Id string - The (Versioned) ID for this Key Vault Key. This property points to a specific version of a Key Vault Key, as such using this won't auto-rotate values if used in other Azure Services.
 - resource
Versionless stringId  - The Versionless ID of the Key Vault Key. This property allows other Azure Services (that support it) to auto-rotate their value when the Key Vault Key is updated.
 - {[key: string]: string}
 - A mapping of tags assigned to this Key Vault Key.
 - version string
 - The current version of the Key Vault Key.
 - versionless
Id string - The Base ID of the Key Vault Key.
 - x string
 - The EC X component of this Key Vault Key.
 - y string
 - The EC Y component of this Key Vault Key.
 
- curve str
 - The EC Curve name of this Key Vault Key.
 - e str
 - The RSA public exponent of this Key Vault Key.
 - id str
 - The provider-assigned unique ID for this managed resource.
 - key_
opts Sequence[str] - A list of JSON web key operations assigned to this Key Vault Key
 - key_
size int - Specifies the Size of this Key Vault Key.
 - key_
type str - Specifies the Key Type of this Key Vault Key
 - key_
vault_ strid  - n str
 - The RSA modulus of this Key Vault Key.
 - name str
 - public_
key_ stropenssh  - The OpenSSH encoded public key of this Key Vault Key.
 - public_
key_ strpem  - The PEM encoded public key of this Key Vault Key.
 - resource_
id str - The (Versioned) ID for this Key Vault Key. This property points to a specific version of a Key Vault Key, as such using this won't auto-rotate values if used in other Azure Services.
 - resource_
versionless_ strid  - The Versionless ID of the Key Vault Key. This property allows other Azure Services (that support it) to auto-rotate their value when the Key Vault Key is updated.
 - Mapping[str, str]
 - A mapping of tags assigned to this Key Vault Key.
 - version str
 - The current version of the Key Vault Key.
 - versionless_
id str - The Base ID of the Key Vault Key.
 - x str
 - The EC X component of this Key Vault Key.
 - y str
 - The EC Y component of this Key Vault Key.
 
- curve String
 - The EC Curve name of this Key Vault Key.
 - e String
 - The RSA public exponent of this Key Vault Key.
 - id String
 - The provider-assigned unique ID for this managed resource.
 - key
Opts List<String> - A list of JSON web key operations assigned to this Key Vault Key
 - key
Size Number - Specifies the Size of this Key Vault Key.
 - key
Type String - Specifies the Key Type of this Key Vault Key
 - key
Vault StringId  - n String
 - The RSA modulus of this Key Vault Key.
 - name String
 - public
Key StringOpenssh  - The OpenSSH encoded public key of this Key Vault Key.
 - public
Key StringPem  - The PEM encoded public key of this Key Vault Key.
 - resource
Id String - The (Versioned) ID for this Key Vault Key. This property points to a specific version of a Key Vault Key, as such using this won't auto-rotate values if used in other Azure Services.
 - resource
Versionless StringId  - The Versionless ID of the Key Vault Key. This property allows other Azure Services (that support it) to auto-rotate their value when the Key Vault Key is updated.
 - Map<String>
 - A mapping of tags assigned to this Key Vault Key.
 - version String
 - The current version of the Key Vault Key.
 - versionless
Id String - The Base ID of the Key Vault Key.
 - x String
 - The EC X component of this Key Vault Key.
 - y String
 - The EC Y component of this Key Vault Key.
 
Package Details
- Repository
 - Azure Classic pulumi/pulumi-azure
 - License
 - Apache-2.0
 - Notes
 - This Pulumi package is based on the 
azurermTerraform Provider.