func AcquireARMToken()

in pkg/authorizer/token_retriever.go [21:32]


func AcquireARMToken(ctx context.Context, id azidentity.ManagedIDKind) (azcore.AccessToken, error) {
	customARMResource := os.Getenv(customARMResourceEnvVar)
	if customARMResource == "" {
		customARMResource = defaultARMResource
	}

	cred, err := azidentity.NewManagedIdentityCredential(&azidentity.ManagedIdentityCredentialOptions{ID: id})
	if err != nil {
		return azcore.AccessToken{}, fmt.Errorf("failed to build managed identity credential: %w", err)
	}
	return cred.GetToken(ctx, policy.TokenRequestOptions{Scopes: []string{customARMResource}})
}