Alibaba Cloud v3.86.1 published on Saturday, Sep 27, 2025 by Pulumi
alicloud.actiontrail.getSaslUsers
Explore with Pulumi AI
This data source provides the Alikafka Sasl Users of the current Alibaba Cloud user.
NOTE: Available since v1.66.0.
Example Usage
Basic Usage
import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
const config = new pulumi.Config();
const name = config.get("name") || "terraform-example";
const _default = alicloud.getZones({
availableResourceCreation: "VSwitch",
});
const defaultNetwork = new alicloud.vpc.Network("default", {
vpcName: name,
cidrBlock: "10.4.0.0/16",
});
const defaultSwitch = new alicloud.vpc.Switch("default", {
vswitchName: name,
vpcId: defaultNetwork.id,
cidrBlock: "10.4.0.0/24",
zoneId: _default.then(_default => _default.zones?.[0]?.id),
});
const defaultSecurityGroup = new alicloud.ecs.SecurityGroup("default", {vpcId: defaultNetwork.id});
const defaultInstance = new alicloud.alikafka.Instance("default", {
name: name,
partitionNum: 50,
diskType: 1,
diskSize: 500,
deployType: 5,
ioMax: 20,
specType: "professional",
serviceVersion: "2.2.0",
vswitchId: defaultSwitch.id,
securityGroup: defaultSecurityGroup.id,
config: ` {
\\"enable.acl\\": \\"true\\"
}
`,
});
const defaultSaslUser = new alicloud.alikafka.SaslUser("default", {
instanceId: defaultInstance.id,
username: name,
password: "YourPassword1234!",
});
const ids = alicloud.actiontrail.getSaslUsersOutput({
ids: [defaultSaslUser.id],
instanceId: defaultSaslUser.instanceId,
});
export const alikafkaSaslUsersId0 = ids.apply(ids => ids.users?.[0]?.id);
import pulumi
import pulumi_alicloud as alicloud
config = pulumi.Config()
name = config.get("name")
if name is None:
name = "terraform-example"
default = alicloud.get_zones(available_resource_creation="VSwitch")
default_network = alicloud.vpc.Network("default",
vpc_name=name,
cidr_block="10.4.0.0/16")
default_switch = alicloud.vpc.Switch("default",
vswitch_name=name,
vpc_id=default_network.id,
cidr_block="10.4.0.0/24",
zone_id=default.zones[0].id)
default_security_group = alicloud.ecs.SecurityGroup("default", vpc_id=default_network.id)
default_instance = alicloud.alikafka.Instance("default",
name=name,
partition_num=50,
disk_type=1,
disk_size=500,
deploy_type=5,
io_max=20,
spec_type="professional",
service_version="2.2.0",
vswitch_id=default_switch.id,
security_group=default_security_group.id,
config=""" {
\"enable.acl\": \"true\"
}
""")
default_sasl_user = alicloud.alikafka.SaslUser("default",
instance_id=default_instance.id,
username=name,
password="YourPassword1234!")
ids = alicloud.actiontrail.get_sasl_users_output(ids=[default_sasl_user.id],
instance_id=default_sasl_user.instance_id)
pulumi.export("alikafkaSaslUsersId0", ids.users[0].id)
package main
import (
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/actiontrail"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/alikafka"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ecs"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
cfg := config.New(ctx, "")
name := "terraform-example"
if param := cfg.Get("name"); param != "" {
name = param
}
_default, err := alicloud.GetZones(ctx, &alicloud.GetZonesArgs{
AvailableResourceCreation: pulumi.StringRef("VSwitch"),
}, nil)
if err != nil {
return err
}
defaultNetwork, err := vpc.NewNetwork(ctx, "default", &vpc.NetworkArgs{
VpcName: pulumi.String(name),
CidrBlock: pulumi.String("10.4.0.0/16"),
})
if err != nil {
return err
}
defaultSwitch, err := vpc.NewSwitch(ctx, "default", &vpc.SwitchArgs{
VswitchName: pulumi.String(name),
VpcId: defaultNetwork.ID(),
CidrBlock: pulumi.String("10.4.0.0/24"),
ZoneId: pulumi.String(_default.Zones[0].Id),
})
if err != nil {
return err
}
defaultSecurityGroup, err := ecs.NewSecurityGroup(ctx, "default", &ecs.SecurityGroupArgs{
VpcId: defaultNetwork.ID(),
})
if err != nil {
return err
}
defaultInstance, err := alikafka.NewInstance(ctx, "default", &alikafka.InstanceArgs{
Name: pulumi.String(name),
PartitionNum: pulumi.Int(50),
DiskType: pulumi.Int(1),
DiskSize: pulumi.Int(500),
DeployType: pulumi.Int(5),
IoMax: pulumi.Int(20),
SpecType: pulumi.String("professional"),
ServiceVersion: pulumi.String("2.2.0"),
VswitchId: defaultSwitch.ID(),
SecurityGroup: defaultSecurityGroup.ID(),
Config: pulumi.String(" {\n \\\"enable.acl\\\": \\\"true\\\"\n }\n"),
})
if err != nil {
return err
}
defaultSaslUser, err := alikafka.NewSaslUser(ctx, "default", &alikafka.SaslUserArgs{
InstanceId: defaultInstance.ID(),
Username: pulumi.String(name),
Password: pulumi.String("YourPassword1234!"),
})
if err != nil {
return err
}
ids := actiontrail.GetSaslUsersOutput(ctx, actiontrail.GetSaslUsersOutputArgs{
Ids: pulumi.StringArray{
defaultSaslUser.ID(),
},
InstanceId: defaultSaslUser.InstanceId,
}, nil)
ctx.Export("alikafkaSaslUsersId0", ids.ApplyT(func(ids actiontrail.GetSaslUsersResult) (*string, error) {
return &ids.Users[0].Id, nil
}).(pulumi.StringPtrOutput))
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AliCloud = Pulumi.AliCloud;
return await Deployment.RunAsync(() =>
{
var config = new Config();
var name = config.Get("name") ?? "terraform-example";
var @default = AliCloud.GetZones.Invoke(new()
{
AvailableResourceCreation = "VSwitch",
});
var defaultNetwork = new AliCloud.Vpc.Network("default", new()
{
VpcName = name,
CidrBlock = "10.4.0.0/16",
});
var defaultSwitch = new AliCloud.Vpc.Switch("default", new()
{
VswitchName = name,
VpcId = defaultNetwork.Id,
CidrBlock = "10.4.0.0/24",
ZoneId = @default.Apply(@default => @default.Apply(getZonesResult => getZonesResult.Zones[0]?.Id)),
});
var defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup("default", new()
{
VpcId = defaultNetwork.Id,
});
var defaultInstance = new AliCloud.AliKafka.Instance("default", new()
{
Name = name,
PartitionNum = 50,
DiskType = 1,
DiskSize = 500,
DeployType = 5,
IoMax = 20,
SpecType = "professional",
ServiceVersion = "2.2.0",
VswitchId = defaultSwitch.Id,
SecurityGroup = defaultSecurityGroup.Id,
Config = @" {
\""enable.acl\"": \""true\""
}
",
});
var defaultSaslUser = new AliCloud.AliKafka.SaslUser("default", new()
{
InstanceId = defaultInstance.Id,
Username = name,
Password = "YourPassword1234!",
});
var ids = AliCloud.ActionTrail.GetSaslUsers.Invoke(new()
{
Ids = new[]
{
defaultSaslUser.Id,
},
InstanceId = defaultSaslUser.InstanceId,
});
return new Dictionary<string, object?>
{
["alikafkaSaslUsersId0"] = ids.Apply(getSaslUsersResult => getSaslUsersResult.Users[0]?.Id),
};
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.alicloud.AlicloudFunctions;
import com.pulumi.alicloud.inputs.GetZonesArgs;
import com.pulumi.alicloud.vpc.Network;
import com.pulumi.alicloud.vpc.NetworkArgs;
import com.pulumi.alicloud.vpc.Switch;
import com.pulumi.alicloud.vpc.SwitchArgs;
import com.pulumi.alicloud.ecs.SecurityGroup;
import com.pulumi.alicloud.ecs.SecurityGroupArgs;
import com.pulumi.alicloud.alikafka.Instance;
import com.pulumi.alicloud.alikafka.InstanceArgs;
import com.pulumi.alicloud.alikafka.SaslUser;
import com.pulumi.alicloud.alikafka.SaslUserArgs;
import com.pulumi.alicloud.actiontrail.ActiontrailFunctions;
import com.pulumi.alicloud.actiontrail.inputs.GetSaslUsersArgs;
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 config = ctx.config();
final var name = config.get("name").orElse("terraform-example");
final var default = AlicloudFunctions.getZones(GetZonesArgs.builder()
.availableResourceCreation("VSwitch")
.build());
var defaultNetwork = new Network("defaultNetwork", NetworkArgs.builder()
.vpcName(name)
.cidrBlock("10.4.0.0/16")
.build());
var defaultSwitch = new Switch("defaultSwitch", SwitchArgs.builder()
.vswitchName(name)
.vpcId(defaultNetwork.id())
.cidrBlock("10.4.0.0/24")
.zoneId(default_.zones()[0].id())
.build());
var defaultSecurityGroup = new SecurityGroup("defaultSecurityGroup", SecurityGroupArgs.builder()
.vpcId(defaultNetwork.id())
.build());
var defaultInstance = new Instance("defaultInstance", InstanceArgs.builder()
.name(name)
.partitionNum(50)
.diskType(1)
.diskSize(500)
.deployType(5)
.ioMax(20)
.specType("professional")
.serviceVersion("2.2.0")
.vswitchId(defaultSwitch.id())
.securityGroup(defaultSecurityGroup.id())
.config("""
{
\"enable.acl\": \"true\"
}
""")
.build());
var defaultSaslUser = new SaslUser("defaultSaslUser", SaslUserArgs.builder()
.instanceId(defaultInstance.id())
.username(name)
.password("YourPassword1234!")
.build());
final var ids = ActiontrailFunctions.getSaslUsers(GetSaslUsersArgs.builder()
.ids(defaultSaslUser.id())
.instanceId(defaultSaslUser.instanceId())
.build());
ctx.export("alikafkaSaslUsersId0", ids.applyValue(_ids -> _ids.users()[0].id()));
}
}
configuration:
name:
type: string
default: terraform-example
resources:
defaultNetwork:
type: alicloud:vpc:Network
name: default
properties:
vpcName: ${name}
cidrBlock: 10.4.0.0/16
defaultSwitch:
type: alicloud:vpc:Switch
name: default
properties:
vswitchName: ${name}
vpcId: ${defaultNetwork.id}
cidrBlock: 10.4.0.0/24
zoneId: ${default.zones[0].id}
defaultSecurityGroup:
type: alicloud:ecs:SecurityGroup
name: default
properties:
vpcId: ${defaultNetwork.id}
defaultInstance:
type: alicloud:alikafka:Instance
name: default
properties:
name: ${name}
partitionNum: 50
diskType: '1'
diskSize: '500'
deployType: '5'
ioMax: '20'
specType: professional
serviceVersion: 2.2.0
vswitchId: ${defaultSwitch.id}
securityGroup: ${defaultSecurityGroup.id}
config: |2
{
\"enable.acl\": \"true\"
}
defaultSaslUser:
type: alicloud:alikafka:SaslUser
name: default
properties:
instanceId: ${defaultInstance.id}
username: ${name}
password: YourPassword1234!
variables:
default:
fn::invoke:
function: alicloud:getZones
arguments:
availableResourceCreation: VSwitch
ids:
fn::invoke:
function: alicloud:actiontrail:getSaslUsers
arguments:
ids:
- ${defaultSaslUser.id}
instanceId: ${defaultSaslUser.instanceId}
outputs:
alikafkaSaslUsersId0: ${ids.users[0].id}
Using getSaslUsers
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 getSaslUsers(args: GetSaslUsersArgs, opts?: InvokeOptions): Promise<GetSaslUsersResult>
function getSaslUsersOutput(args: GetSaslUsersOutputArgs, opts?: InvokeOptions): Output<GetSaslUsersResult>
def get_sasl_users(ids: Optional[Sequence[str]] = None,
instance_id: Optional[str] = None,
name_regex: Optional[str] = None,
output_file: Optional[str] = None,
opts: Optional[InvokeOptions] = None) -> GetSaslUsersResult
def get_sasl_users_output(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,
opts: Optional[InvokeOptions] = None) -> Output[GetSaslUsersResult]
func GetSaslUsers(ctx *Context, args *GetSaslUsersArgs, opts ...InvokeOption) (*GetSaslUsersResult, error)
func GetSaslUsersOutput(ctx *Context, args *GetSaslUsersOutputArgs, opts ...InvokeOption) GetSaslUsersResultOutput
> Note: This function is named GetSaslUsers
in the Go SDK.
public static class GetSaslUsers
{
public static Task<GetSaslUsersResult> InvokeAsync(GetSaslUsersArgs args, InvokeOptions? opts = null)
public static Output<GetSaslUsersResult> Invoke(GetSaslUsersInvokeArgs args, InvokeOptions? opts = null)
}
public static CompletableFuture<GetSaslUsersResult> getSaslUsers(GetSaslUsersArgs args, InvokeOptions options)
public static Output<GetSaslUsersResult> getSaslUsers(GetSaslUsersArgs args, InvokeOptions options)
fn::invoke:
function: alicloud:actiontrail/getSaslUsers:getSaslUsers
arguments:
# arguments dictionary
The following arguments are supported:
- Instance
Id string - The ID of the instance.
- Ids List<string>
- A list of Sasl User IDs.
- Name
Regex string - A regex string to filter results by Sasl User name.
- Output
File string - File name where to save data source results (after running
pulumi preview
).
- Instance
Id string - The ID of the instance.
- Ids []string
- A list of Sasl User IDs.
- Name
Regex string - A regex string to filter results by Sasl User name.
- Output
File string - File name where to save data source results (after running
pulumi preview
).
- instance
Id String - The ID of the instance.
- ids List<String>
- A list of Sasl User IDs.
- name
Regex String - A regex string to filter results by Sasl User name.
- output
File String - File name where to save data source results (after running
pulumi preview
).
- instance
Id string - The ID of the instance.
- ids string[]
- A list of Sasl User IDs.
- name
Regex string - A regex string to filter results by Sasl User name.
- output
File string - File name where to save data source results (after running
pulumi preview
).
- instance_
id str - The ID of the instance.
- ids Sequence[str]
- A list of Sasl User IDs.
- name_
regex str - A regex string to filter results by Sasl User name.
- output_
file str - File name where to save data source results (after running
pulumi preview
).
- instance
Id String - The ID of the instance.
- ids List<String>
- A list of Sasl User IDs.
- name
Regex String - A regex string to filter results by Sasl User name.
- output
File String - File name where to save data source results (after running
pulumi preview
).
getSaslUsers Result
The following output properties are available:
- Id string
- The provider-assigned unique ID for this managed resource.
- Ids List<string>
- Instance
Id string - Names List<string>
- A list of Sasl User names.
- Users
List<Pulumi.
Ali Cloud. Action Trail. Outputs. Get Sasl Users User> - A list of Sasl Users. Each element contains the following attributes:
- Name
Regex string - Output
File string
- Id string
- The provider-assigned unique ID for this managed resource.
- Ids []string
- Instance
Id string - Names []string
- A list of Sasl User names.
- Users
[]Get
Sasl Users User - A list of Sasl Users. Each element contains the following attributes:
- Name
Regex string - Output
File string
- id String
- The provider-assigned unique ID for this managed resource.
- ids List<String>
- instance
Id String - names List<String>
- A list of Sasl User names.
- users
List<Get
Sasl Users User> - A list of Sasl Users. Each element contains the following attributes:
- name
Regex String - output
File String
- id string
- The provider-assigned unique ID for this managed resource.
- ids string[]
- instance
Id string - names string[]
- A list of Sasl User names.
- users
Get
Sasl Users User[] - A list of Sasl Users. Each element contains the following attributes:
- name
Regex string - output
File string
- id str
- The provider-assigned unique ID for this managed resource.
- ids Sequence[str]
- instance_
id str - names Sequence[str]
- A list of Sasl User names.
- users
Sequence[Get
Sasl Users User] - A list of Sasl Users. Each element contains the following attributes:
- name_
regex str - output_
file str
- id String
- The provider-assigned unique ID for this managed resource.
- ids List<String>
- instance
Id String - names List<String>
- A list of Sasl User names.
- users List<Property Map>
- A list of Sasl Users. Each element contains the following attributes:
- name
Regex String - output
File String
Supporting Types
GetSaslUsersUser
Package Details
- Repository
- Alibaba Cloud pulumi/pulumi-alicloud
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
alicloud
Terraform Provider.