aws logo
AWS Classic v5.34.0, Mar 30 23

aws.getCallerIdentity

Use this data source to get the access to the effective Account ID, User ID, and ARN in which this provider is authorized.

Example Usage

using System.Collections.Generic;
using Pulumi;
using Aws = Pulumi.Aws;

return await Deployment.RunAsync(() => 
{
    var current = Aws.GetCallerIdentity.Invoke();

    return new Dictionary<string, object?>
    {
        ["accountId"] = current.Apply(getCallerIdentityResult => getCallerIdentityResult.AccountId),
        ["callerArn"] = current.Apply(getCallerIdentityResult => getCallerIdentityResult.Arn),
        ["callerUser"] = current.Apply(getCallerIdentityResult => getCallerIdentityResult.UserId),
    };
});
package main

import (
	"github.com/pulumi/pulumi-aws/sdk/v5/go/aws"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		current, err := aws.GetCallerIdentity(ctx, nil, nil)
		if err != nil {
			return err
		}
		ctx.Export("accountId", current.AccountId)
		ctx.Export("callerArn", current.Arn)
		ctx.Export("callerUser", current.UserId)
		return nil
	})
}
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.AwsFunctions;
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 current = AwsFunctions.getCallerIdentity();

        ctx.export("accountId", current.applyValue(getCallerIdentityResult -> getCallerIdentityResult.accountId()));
        ctx.export("callerArn", current.applyValue(getCallerIdentityResult -> getCallerIdentityResult.arn()));
        ctx.export("callerUser", current.applyValue(getCallerIdentityResult -> getCallerIdentityResult.userId()));
    }
}
import pulumi
import pulumi_aws as aws

current = aws.get_caller_identity()
pulumi.export("accountId", current.account_id)
pulumi.export("callerArn", current.arn)
pulumi.export("callerUser", current.user_id)
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";

const current = aws.getCallerIdentity({});
export const accountId = current.then(current => current.accountId);
export const callerArn = current.then(current => current.arn);
export const callerUser = current.then(current => current.userId);
variables:
  current:
    fn::invoke:
      Function: aws:getCallerIdentity
      Arguments: {}
outputs:
  accountId: ${current.accountId}
  callerArn: ${current.arn}
  callerUser: ${current.userId}

Using getCallerIdentity

function getCallerIdentity(opts?: InvokeOptions): Promise<GetCallerIdentityResult>
def get_caller_identity(opts: Optional[InvokeOptions] = None) -> GetCallerIdentityResult
func GetCallerIdentity(ctx *Context, opts ...InvokeOption) (*GetCallerIdentityResult, error)

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

public static class GetCallerIdentity 
{
    public static Task<GetCallerIdentityResult> InvokeAsync(InvokeOptions? opts = null)
}
public static CompletableFuture<GetCallerIdentityResult> getCallerIdentity(InvokeOptions options)
// Output-based functions aren't available in Java yet
fn::invoke:
  function: aws:index/getCallerIdentity:getCallerIdentity
  arguments:
    # arguments dictionary

getCallerIdentity Result

The following output properties are available:

AccountId string

AWS Account ID number of the account that owns or contains the calling entity.

Arn string

ARN associated with the calling entity.

Id string

The provider-assigned unique ID for this managed resource.

UserId string

Unique identifier of the calling entity.

AccountId string

AWS Account ID number of the account that owns or contains the calling entity.

Arn string

ARN associated with the calling entity.

Id string

The provider-assigned unique ID for this managed resource.

UserId string

Unique identifier of the calling entity.

accountId String

AWS Account ID number of the account that owns or contains the calling entity.

arn String

ARN associated with the calling entity.

id String

The provider-assigned unique ID for this managed resource.

userId String

Unique identifier of the calling entity.

accountId string

AWS Account ID number of the account that owns or contains the calling entity.

arn string

ARN associated with the calling entity.

id string

The provider-assigned unique ID for this managed resource.

userId string

Unique identifier of the calling entity.

account_id str

AWS Account ID number of the account that owns or contains the calling entity.

arn str

ARN associated with the calling entity.

id str

The provider-assigned unique ID for this managed resource.

user_id str

Unique identifier of the calling entity.

accountId String

AWS Account ID number of the account that owns or contains the calling entity.

arn String

ARN associated with the calling entity.

id String

The provider-assigned unique ID for this managed resource.

userId String

Unique identifier of the calling entity.

Package Details

Repository
AWS Classic pulumi/pulumi-aws
License
Apache-2.0
Notes

This Pulumi package is based on the aws Terraform Provider.