getHostAccounts

This data source provides the Bastionhost Host Accounts of the current Alibaba Cloud user.

NOTE: Available in v1.135.0+.

Example Usage

Basic Usage

using Pulumi;
using AliCloud = Pulumi.AliCloud;

class MyStack : Stack
{
    public MyStack()
    {
        var ids = Output.Create(AliCloud.BastionHost.GetHostAccounts.InvokeAsync(new AliCloud.BastionHost.GetHostAccountsArgs
        {
            HostId = "15",
            InstanceId = "example_value",
            Ids = 
            {
                "1",
                "2",
            },
        }));
        this.BastionhostHostAccountId1 = ids.Apply(ids => ids.Accounts?[0]?.Id);
        var nameRegex = Output.Create(AliCloud.BastionHost.GetHostAccounts.InvokeAsync(new AliCloud.BastionHost.GetHostAccountsArgs
        {
            HostId = "15",
            InstanceId = "example_value",
            NameRegex = "^my-HostAccount",
        }));
        this.BastionhostHostAccountId2 = nameRegex.Apply(nameRegex => nameRegex.Accounts?[0]?.Id);
    }

    [Output("bastionhostHostAccountId1")]
    public Output<string> BastionhostHostAccountId1 { get; set; }
    [Output("bastionhostHostAccountId2")]
    public Output<string> BastionhostHostAccountId2 { get; set; }
}
package main

import (
	"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/bastionhost"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		ids, err := bastionhost.GetHostAccounts(ctx, &bastionhost.GetHostAccountsArgs{
			HostId:     "15",
			InstanceId: "example_value",
			Ids: []string{
				"1",
				"2",
			},
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("bastionhostHostAccountId1", ids.Accounts[0].Id)
		nameRegex, err := bastionhost.GetHostAccounts(ctx, &bastionhost.GetHostAccountsArgs{
			HostId:     "15",
			InstanceId: "example_value",
			NameRegex:  pulumi.StringRef("^my-HostAccount"),
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("bastionhostHostAccountId2", nameRegex.Accounts[0].Id)
		return nil
	})
}
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.alicloud.bastionhost.BastionhostFunctions;
import com.pulumi.alicloud.bastionhost.inputs.GetHostAccountsArgs;
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 ids = BastionhostFunctions.getHostAccounts(GetHostAccountsArgs.builder()
            .hostId("15")
            .instanceId("example_value")
            .ids(            
                "1",
                "2")
            .build());

        ctx.export("bastionhostHostAccountId1", ids.applyValue(getHostAccountsResult -> getHostAccountsResult.accounts()[0].id()));
        final var nameRegex = BastionhostFunctions.getHostAccounts(GetHostAccountsArgs.builder()
            .hostId("15")
            .instanceId("example_value")
            .nameRegex("^my-HostAccount")
            .build());

        ctx.export("bastionhostHostAccountId2", nameRegex.applyValue(getHostAccountsResult -> getHostAccountsResult.accounts()[0].id()));
    }
}
import pulumi
import pulumi_alicloud as alicloud

ids = alicloud.bastionhost.get_host_accounts(host_id="15",
    instance_id="example_value",
    ids=[
        "1",
        "2",
    ])
pulumi.export("bastionhostHostAccountId1", ids.accounts[0].id)
name_regex = alicloud.bastionhost.get_host_accounts(host_id="15",
    instance_id="example_value",
    name_regex="^my-HostAccount")
pulumi.export("bastionhostHostAccountId2", name_regex.accounts[0].id)
import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";

const ids = alicloud.bastionhost.getHostAccounts({
    hostId: "15",
    instanceId: "example_value",
    ids: [
        "1",
        "2",
    ],
});
export const bastionhostHostAccountId1 = ids.then(ids => ids.accounts?[0]?.id);
const nameRegex = alicloud.bastionhost.getHostAccounts({
    hostId: "15",
    instanceId: "example_value",
    nameRegex: "^my-HostAccount",
});
export const bastionhostHostAccountId2 = nameRegex.then(nameRegex => nameRegex.accounts?[0]?.id);
variables:
  ids:
    Fn::Invoke:
      Function: alicloud:bastionhost:getHostAccounts
      Arguments:
        hostId: 15
        instanceId: example_value
        ids:
          - 1
          - 2
  nameRegex:
    Fn::Invoke:
      Function: alicloud:bastionhost:getHostAccounts
      Arguments:
        hostId: 15
        instanceId: example_value
        nameRegex: ^my-HostAccount
outputs:
  bastionhostHostAccountId1: ${ids.accounts[0].id}
  bastionhostHostAccountId2: ${nameRegex.accounts[0].id}

Using getHostAccounts

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 getHostAccounts(args: GetHostAccountsArgs, opts?: InvokeOptions): Promise<GetHostAccountsResult>
function getHostAccountsOutput(args: GetHostAccountsOutputArgs, opts?: InvokeOptions): Output<GetHostAccountsResult>
def get_host_accounts(host_account_name: Optional[str] = None,
                      host_id: Optional[str] = None,
                      ids: Optional[Sequence[str]] = None,
                      instance_id: Optional[str] = None,
                      name_regex: Optional[str] = None,
                      output_file: Optional[str] = None,
                      protocol_name: Optional[str] = None,
                      opts: Optional[InvokeOptions] = None) -> GetHostAccountsResult
def get_host_accounts_output(host_account_name: Optional[pulumi.Input[str]] = None,
                      host_id: Optional[pulumi.Input[str]] = None,
                      ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
                      instance_id: Optional[pulumi.Input[str]] = None,
                      name_regex: Optional[pulumi.Input[str]] = None,
                      output_file: Optional[pulumi.Input[str]] = None,
                      protocol_name: Optional[pulumi.Input[str]] = None,
                      opts: Optional[InvokeOptions] = None) -> Output[GetHostAccountsResult]
func GetHostAccounts(ctx *Context, args *GetHostAccountsArgs, opts ...InvokeOption) (*GetHostAccountsResult, error)
func GetHostAccountsOutput(ctx *Context, args *GetHostAccountsOutputArgs, opts ...InvokeOption) GetHostAccountsResultOutput

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

public static class GetHostAccounts 
{
    public static Task<GetHostAccountsResult> InvokeAsync(GetHostAccountsArgs args, InvokeOptions? opts = null)
    public static Output<GetHostAccountsResult> Invoke(GetHostAccountsInvokeArgs args, InvokeOptions? opts = null)
}
public static CompletableFuture<GetHostAccountsResult> getHostAccounts(GetHostAccountsArgs args, InvokeOptions options)
// Output-based functions aren't available in Java yet
fn::invoke:
  function: alicloud:bastionhost/getHostAccounts:getHostAccounts
  arguments:
    # arguments dictionary

The following arguments are supported:

HostId string

Specifies the database where you want to create your hosting account's host ID.

InstanceId string

Specifies the database where you want to create your hosting account's host bastion host ID of.

HostAccountName string

Specify the new hosting account's name, support the longest 128 characters.

Ids List<string>

A list of Host Account IDs.

NameRegex string

A regex string to filter results by Host Account name.

OutputFile string
ProtocolName string

Specify the new hosting account of the agreement name. Valid values: USING SSH and RDP.

HostId string

Specifies the database where you want to create your hosting account's host ID.

InstanceId string

Specifies the database where you want to create your hosting account's host bastion host ID of.

HostAccountName string

Specify the new hosting account's name, support the longest 128 characters.

Ids []string

A list of Host Account IDs.

NameRegex string

A regex string to filter results by Host Account name.

OutputFile string
ProtocolName string

Specify the new hosting account of the agreement name. Valid values: USING SSH and RDP.

hostId String

Specifies the database where you want to create your hosting account's host ID.

instanceId String

Specifies the database where you want to create your hosting account's host bastion host ID of.

hostAccountName String

Specify the new hosting account's name, support the longest 128 characters.

ids List<String>

A list of Host Account IDs.

nameRegex String

A regex string to filter results by Host Account name.

outputFile String
protocolName String

Specify the new hosting account of the agreement name. Valid values: USING SSH and RDP.

hostId string

Specifies the database where you want to create your hosting account's host ID.

instanceId string

Specifies the database where you want to create your hosting account's host bastion host ID of.

hostAccountName string

Specify the new hosting account's name, support the longest 128 characters.

ids string[]

A list of Host Account IDs.

nameRegex string

A regex string to filter results by Host Account name.

outputFile string
protocolName string

Specify the new hosting account of the agreement name. Valid values: USING SSH and RDP.

host_id str

Specifies the database where you want to create your hosting account's host ID.

instance_id str

Specifies the database where you want to create your hosting account's host bastion host ID of.

host_account_name str

Specify the new hosting account's name, support the longest 128 characters.

ids Sequence[str]

A list of Host Account IDs.

name_regex str

A regex string to filter results by Host Account name.

output_file str
protocol_name str

Specify the new hosting account of the agreement name. Valid values: USING SSH and RDP.

hostId String

Specifies the database where you want to create your hosting account's host ID.

instanceId String

Specifies the database where you want to create your hosting account's host bastion host ID of.

hostAccountName String

Specify the new hosting account's name, support the longest 128 characters.

ids List<String>

A list of Host Account IDs.

nameRegex String

A regex string to filter results by Host Account name.

outputFile String
protocolName String

Specify the new hosting account of the agreement name. Valid values: USING SSH and RDP.

getHostAccounts Result

The following output properties are available:

Accounts List<Pulumi.AliCloud.BastionHost.Outputs.GetHostAccountsAccount>
HostId string
Id string

The provider-assigned unique ID for this managed resource.

Ids List<string>
InstanceId string
Names List<string>
HostAccountName string
NameRegex string
OutputFile string
ProtocolName string
Accounts []GetHostAccountsAccount
HostId string
Id string

The provider-assigned unique ID for this managed resource.

Ids []string
InstanceId string
Names []string
HostAccountName string
NameRegex string
OutputFile string
ProtocolName string
accounts List<GetHostAccountsAccount>
hostId String
id String

The provider-assigned unique ID for this managed resource.

ids List<String>
instanceId String
names List<String>
hostAccountName String
nameRegex String
outputFile String
protocolName String
accounts GetHostAccountsAccount[]
hostId string
id string

The provider-assigned unique ID for this managed resource.

ids string[]
instanceId string
names string[]
hostAccountName string
nameRegex string
outputFile string
protocolName string
accounts Sequence[GetHostAccountsAccount]
host_id str
id str

The provider-assigned unique ID for this managed resource.

ids Sequence[str]
instance_id str
names Sequence[str]
host_account_name str
name_regex str
output_file str
protocol_name str
accounts List<Property Map>
hostId String
id String

The provider-assigned unique ID for this managed resource.

ids List<String>
instanceId String
names List<String>
hostAccountName String
nameRegex String
outputFile String
protocolName String

Supporting Types

GetHostAccountsAccount

HasPassword bool

Whether to set a new password.

HostAccountId string

Hosting account ID.

HostAccountName string

Specify the new hosting account's name, support the longest 128 characters.

HostId string

Specifies the database where you want to create your hosting account's host ID.

Id string

The ID of the Host Account.

InstanceId string

Specifies the database where you want to create your hosting account's host bastion host ID of.

PrivateKeyFingerprint string

The situation where the private keys of the fingerprint information.

ProtocolName string

Specify the new hosting account of the agreement name. Valid values: USING SSH and RDP.

HasPassword bool

Whether to set a new password.

HostAccountId string

Hosting account ID.

HostAccountName string

Specify the new hosting account's name, support the longest 128 characters.

HostId string

Specifies the database where you want to create your hosting account's host ID.

Id string

The ID of the Host Account.

InstanceId string

Specifies the database where you want to create your hosting account's host bastion host ID of.

PrivateKeyFingerprint string

The situation where the private keys of the fingerprint information.

ProtocolName string

Specify the new hosting account of the agreement name. Valid values: USING SSH and RDP.

hasPassword Boolean

Whether to set a new password.

hostAccountId String

Hosting account ID.

hostAccountName String

Specify the new hosting account's name, support the longest 128 characters.

hostId String

Specifies the database where you want to create your hosting account's host ID.

id String

The ID of the Host Account.

instanceId String

Specifies the database where you want to create your hosting account's host bastion host ID of.

privateKeyFingerprint String

The situation where the private keys of the fingerprint information.

protocolName String

Specify the new hosting account of the agreement name. Valid values: USING SSH and RDP.

hasPassword boolean

Whether to set a new password.

hostAccountId string

Hosting account ID.

hostAccountName string

Specify the new hosting account's name, support the longest 128 characters.

hostId string

Specifies the database where you want to create your hosting account's host ID.

id string

The ID of the Host Account.

instanceId string

Specifies the database where you want to create your hosting account's host bastion host ID of.

privateKeyFingerprint string

The situation where the private keys of the fingerprint information.

protocolName string

Specify the new hosting account of the agreement name. Valid values: USING SSH and RDP.

has_password bool

Whether to set a new password.

host_account_id str

Hosting account ID.

host_account_name str

Specify the new hosting account's name, support the longest 128 characters.

host_id str

Specifies the database where you want to create your hosting account's host ID.

id str

The ID of the Host Account.

instance_id str

Specifies the database where you want to create your hosting account's host bastion host ID of.

private_key_fingerprint str

The situation where the private keys of the fingerprint information.

protocol_name str

Specify the new hosting account of the agreement name. Valid values: USING SSH and RDP.

hasPassword Boolean

Whether to set a new password.

hostAccountId String

Hosting account ID.

hostAccountName String

Specify the new hosting account's name, support the longest 128 characters.

hostId String

Specifies the database where you want to create your hosting account's host ID.

id String

The ID of the Host Account.

instanceId String

Specifies the database where you want to create your hosting account's host bastion host ID of.

privateKeyFingerprint String

The situation where the private keys of the fingerprint information.

protocolName String

Specify the new hosting account of the agreement name. Valid values: USING SSH and RDP.

Package Details

Repository
https://github.com/pulumi/pulumi-alicloud
License
Apache-2.0
Notes

This Pulumi package is based on the alicloud Terraform Provider.