1. Packages
  2. Azure Classic
  3. API Docs
  4. compute
  5. getSshPublicKey

We recommend using Azure Native.

Viewing docs for Azure v4.42.0 (Older version)
published on Monday, Mar 9, 2026 by Pulumi
azure logo

We recommend using Azure Native.

Viewing docs for Azure v4.42.0 (Older version)
published on Monday, Mar 9, 2026 by Pulumi

    Use this data source to access information about an existing SSH Public Key.

    Example Usage

    using Pulumi;
    using Azure = Pulumi.Azure;
    
    class MyStack : Stack
    {
        public MyStack()
        {
            var example = Output.Create(Azure.Compute.GetSshPublicKey.InvokeAsync(new Azure.Compute.GetSshPublicKeyArgs
            {
                Name = "existing",
                ResourceGroupName = "existing",
            }));
            this.Id = example.Apply(example => example.Id);
        }
    
        [Output("id")]
        public Output<string> Id { get; set; }
    }
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/compute"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		example, err := compute.LookupSshPublicKey(ctx, &compute.LookupSshPublicKeyArgs{
    			Name:              "existing",
    			ResourceGroupName: "existing",
    		}, nil)
    		if err != nil {
    			return err
    		}
    		ctx.Export("id", example.Id)
    		return nil
    	})
    }
    

    Example coming soon!

    import * as pulumi from "@pulumi/pulumi";
    import * as azure from "@pulumi/azure";
    
    const example = azure.compute.getSshPublicKey({
        name: "existing",
        resourceGroupName: "existing",
    });
    export const id = example.then(example => example.id);
    
    import pulumi
    import pulumi_azure as azure
    
    example = azure.compute.get_ssh_public_key(name="existing",
        resource_group_name="existing")
    pulumi.export("id", example.id)
    

    Example coming soon!

    Using getSshPublicKey

    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 getSshPublicKey(args: GetSshPublicKeyArgs, opts?: InvokeOptions): Promise<GetSshPublicKeyResult>
    function getSshPublicKeyOutput(args: GetSshPublicKeyOutputArgs, opts?: InvokeOptions): Output<GetSshPublicKeyResult>
    def get_ssh_public_key(name: Optional[str] = None,
                           resource_group_name: Optional[str] = None,
                           tags: Optional[Mapping[str, str]] = None,
                           opts: Optional[InvokeOptions] = None) -> GetSshPublicKeyResult
    def get_ssh_public_key_output(name: Optional[pulumi.Input[str]] = None,
                           resource_group_name: Optional[pulumi.Input[str]] = None,
                           tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
                           opts: Optional[InvokeOptions] = None) -> Output[GetSshPublicKeyResult]
    func LookupSshPublicKey(ctx *Context, args *LookupSshPublicKeyArgs, opts ...InvokeOption) (*LookupSshPublicKeyResult, error)
    func LookupSshPublicKeyOutput(ctx *Context, args *LookupSshPublicKeyOutputArgs, opts ...InvokeOption) LookupSshPublicKeyResultOutput

    > Note: This function is named LookupSshPublicKey in the Go SDK.

    public static class GetSshPublicKey 
    {
        public static Task<GetSshPublicKeyResult> InvokeAsync(GetSshPublicKeyArgs args, InvokeOptions? opts = null)
        public static Output<GetSshPublicKeyResult> Invoke(GetSshPublicKeyInvokeArgs args, InvokeOptions? opts = null)
    }
    public static CompletableFuture<GetSshPublicKeyResult> getSshPublicKey(GetSshPublicKeyArgs args, InvokeOptions options)
    public static Output<GetSshPublicKeyResult> getSshPublicKey(GetSshPublicKeyArgs args, InvokeOptions options)
    
    fn::invoke:
      function: azure:compute/getSshPublicKey:getSshPublicKey
      arguments:
        # arguments dictionary

    The following arguments are supported:

    Name string
    The name of this SSH Public Key.
    ResourceGroupName string
    The name of the Resource Group where the SSH Public Key exists.
    Tags Dictionary<string, string>
    A mapping of tags which should be assigned to the SSH Public Key.
    Name string
    The name of this SSH Public Key.
    ResourceGroupName string
    The name of the Resource Group where the SSH Public Key exists.
    Tags map[string]string
    A mapping of tags which should be assigned to the SSH Public Key.
    name String
    The name of this SSH Public Key.
    resourceGroupName String
    The name of the Resource Group where the SSH Public Key exists.
    tags Map<String,String>
    A mapping of tags which should be assigned to the SSH Public Key.
    name string
    The name of this SSH Public Key.
    resourceGroupName string
    The name of the Resource Group where the SSH Public Key exists.
    tags {[key: string]: string}
    A mapping of tags which should be assigned to the SSH Public Key.
    name str
    The name of this SSH Public Key.
    resource_group_name str
    The name of the Resource Group where the SSH Public Key exists.
    tags Mapping[str, str]
    A mapping of tags which should be assigned to the SSH Public Key.
    name String
    The name of this SSH Public Key.
    resourceGroupName String
    The name of the Resource Group where the SSH Public Key exists.
    tags Map<String>
    A mapping of tags which should be assigned to the SSH Public Key.

    getSshPublicKey Result

    The following output properties are available:

    Id string
    The provider-assigned unique ID for this managed resource.
    Name string
    PublicKey string
    The SSH public key used to authenticate to a virtual machine through ssh.
    ResourceGroupName string
    Tags Dictionary<string, string>
    Id string
    The provider-assigned unique ID for this managed resource.
    Name string
    PublicKey string
    The SSH public key used to authenticate to a virtual machine through ssh.
    ResourceGroupName string
    Tags map[string]string
    id String
    The provider-assigned unique ID for this managed resource.
    name String
    publicKey String
    The SSH public key used to authenticate to a virtual machine through ssh.
    resourceGroupName String
    tags Map<String,String>
    id string
    The provider-assigned unique ID for this managed resource.
    name string
    publicKey string
    The SSH public key used to authenticate to a virtual machine through ssh.
    resourceGroupName string
    tags {[key: string]: string}
    id str
    The provider-assigned unique ID for this managed resource.
    name str
    public_key str
    The SSH public key used to authenticate to a virtual machine through ssh.
    resource_group_name str
    tags Mapping[str, str]
    id String
    The provider-assigned unique ID for this managed resource.
    name String
    publicKey String
    The SSH public key used to authenticate to a virtual machine through ssh.
    resourceGroupName String
    tags Map<String>

    Package Details

    Repository
    Azure Classic pulumi/pulumi-azure
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the azurerm Terraform Provider.
    azure logo

    We recommend using Azure Native.

    Viewing docs for Azure v4.42.0 (Older version)
    published on Monday, Mar 9, 2026 by Pulumi
      Try Pulumi Cloud free. Your team will thank you.