SaslAcl
Provides an ALIKAFKA sasl acl resource.
NOTE: Available in 1.66.0+
NOTE: Only the following regions support create alikafka sasl user. [
cn-hangzhou,cn-beijing,cn-shenzhen,cn-shanghai,cn-qingdao,cn-hongkong,cn-huhehaote,cn-zhangjiakou,ap-southeast-1,ap-south-1,ap-southeast-5]
Example Usage
using Pulumi;
using AliCloud = Pulumi.AliCloud;
class MyStack : Stack
{
public MyStack()
{
var config = new Config();
var username = config.Get("username") ?? "testusername";
var password = config.Get("password") ?? "testpassword";
var defaultZones = Output.Create(AliCloud.GetZones.InvokeAsync(new AliCloud.GetZonesArgs
{
AvailableResourceCreation = "VSwitch",
}));
var defaultNetwork = new AliCloud.Vpc.Network("defaultNetwork", new AliCloud.Vpc.NetworkArgs
{
CidrBlock = "172.16.0.0/12",
});
var defaultSwitch = new AliCloud.Vpc.Switch("defaultSwitch", new AliCloud.Vpc.SwitchArgs
{
AvailabilityZone = defaultZones.Apply(defaultZones => defaultZones.Zones[0].Id),
CidrBlock = "172.16.0.0/24",
VpcId = defaultNetwork.Id,
});
var defaultInstance = new AliCloud.AliKafka.Instance("defaultInstance", new AliCloud.AliKafka.InstanceArgs
{
DeployType = 5,
DiskSize = 500,
DiskType = 1,
IoMax = 20,
TopicQuota = 50,
VswitchId = defaultSwitch.Id,
});
var defaultTopic = new AliCloud.AliKafka.Topic("defaultTopic", new AliCloud.AliKafka.TopicArgs
{
InstanceId = defaultInstance.Id,
Remark = "topic-remark",
Topic = "test-topic",
});
var defaultSaslUser = new AliCloud.AliKafka.SaslUser("defaultSaslUser", new AliCloud.AliKafka.SaslUserArgs
{
InstanceId = defaultInstance.Id,
Password = password,
Username = username,
});
var defaultSaslAcl = new AliCloud.AliKafka.SaslAcl("defaultSaslAcl", new AliCloud.AliKafka.SaslAclArgs
{
AclOperationType = "Write",
AclResourceName = defaultTopic.TopicName,
AclResourcePatternType = "LITERAL",
AclResourceType = "Topic",
InstanceId = defaultInstance.Id,
Username = defaultSaslUser.Username,
});
}
}
Coming soon!
import pulumi
import pulumi_alicloud as alicloud
config = pulumi.Config()
username = config.get("username")
if username is None:
username = "testusername"
password = config.get("password")
if password is None:
password = "testpassword"
default_zones = alicloud.get_zones(available_resource_creation="VSwitch")
default_network = alicloud.vpc.Network("defaultNetwork", cidr_block="172.16.0.0/12")
default_switch = alicloud.vpc.Switch("defaultSwitch",
availability_zone=default_zones.zones[0]["id"],
cidr_block="172.16.0.0/24",
vpc_id=default_network.id)
default_instance = alicloud.alikafka.Instance("defaultInstance",
deploy_type="5",
disk_size="500",
disk_type="1",
io_max="20",
topic_quota="50",
vswitch_id=default_switch.id)
default_topic = alicloud.alikafka.Topic("defaultTopic",
instance_id=default_instance.id,
remark="topic-remark",
topic="test-topic")
default_sasl_user = alicloud.alikafka.SaslUser("defaultSaslUser",
instance_id=default_instance.id,
password=password,
username=username)
default_sasl_acl = alicloud.alikafka.SaslAcl("defaultSaslAcl",
acl_operation_type="Write",
acl_resource_name=default_topic.topic,
acl_resource_pattern_type="LITERAL",
acl_resource_type="Topic",
instance_id=default_instance.id,
username=default_sasl_user.username)import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
const config = new pulumi.Config();
const username = config.get("username") || "testusername";
const password = config.get("password") || "testpassword";
const defaultZones = pulumi.output(alicloud.getZones({
availableResourceCreation: "VSwitch",
}, { async: true }));
const defaultNetwork = new alicloud.vpc.Network("default", {
cidrBlock: "172.16.0.0/12",
});
const defaultSwitch = new alicloud.vpc.Switch("default", {
availabilityZone: defaultZones.zones[0].id,
cidrBlock: "172.16.0.0/24",
vpcId: defaultNetwork.id,
});
const defaultInstance = new alicloud.alikafka.Instance("default", {
deployType: 5,
diskSize: 500,
diskType: 1,
ioMax: 20,
topicQuota: 50,
vswitchId: defaultSwitch.id,
});
const defaultTopic = new alicloud.alikafka.Topic("default", {
instanceId: defaultInstance.id,
remark: "topic-remark",
topic: "test-topic",
});
const defaultSaslUser = new alicloud.alikafka.SaslUser("default", {
instanceId: defaultInstance.id,
password: password,
username: username,
});
const defaultSaslAcl = new alicloud.alikafka.SaslAcl("default", {
aclOperationType: "Write",
aclResourceName: defaultTopic.topic,
aclResourcePatternType: "LITERAL",
aclResourceType: "Topic",
instanceId: defaultInstance.id,
username: defaultSaslUser.username,
});Create a SaslAcl Resource
new SaslAcl(name: string, args: SaslAclArgs, opts?: CustomResourceOptions);def SaslAcl(resource_name, opts=None, acl_operation_type=None, acl_resource_name=None, acl_resource_pattern_type=None, acl_resource_type=None, instance_id=None, username=None, __props__=None);func NewSaslAcl(ctx *Context, name string, args SaslAclArgs, opts ...ResourceOption) (*SaslAcl, error)public SaslAcl(string name, SaslAclArgs args, CustomResourceOptions? opts = null)- name string
- The unique name of the resource.
- args SaslAclArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- opts ResourceOptions
- A bag of options that control this resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args SaslAclArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args SaslAclArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
SaslAcl Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Programming Model docs.
Inputs
The SaslAcl resource accepts the following input properties:
- Acl
Operation stringType Operation type for this acl. The operation type can only be “Write” and “Read”.
- Acl
Resource stringName Resource name for this acl. The resource name should be a topic or consumer group name.
- Acl
Resource stringPattern Type Resource pattern type for this acl. The resource pattern support two types “LITERAL” and “PREFIXED”. “LITERAL”: A literal name defines the full name of a resource. The special wildcard character “*” can be used to represent a resource with any name. “PREFIXED”: A prefixed name defines a prefix for a resource.
- Acl
Resource stringType Resource type for this acl. The resource type can only be “Topic” and “Group”.
- Instance
Id string ID of the ALIKAFKA Instance that owns the groups.
- Username string
Username for the sasl user. The length should between 1 to 64 characters. The user should be an existed sasl user.
- Acl
Operation stringType Operation type for this acl. The operation type can only be “Write” and “Read”.
- Acl
Resource stringName Resource name for this acl. The resource name should be a topic or consumer group name.
- Acl
Resource stringPattern Type Resource pattern type for this acl. The resource pattern support two types “LITERAL” and “PREFIXED”. “LITERAL”: A literal name defines the full name of a resource. The special wildcard character “*” can be used to represent a resource with any name. “PREFIXED”: A prefixed name defines a prefix for a resource.
- Acl
Resource stringType Resource type for this acl. The resource type can only be “Topic” and “Group”.
- Instance
Id string ID of the ALIKAFKA Instance that owns the groups.
- Username string
Username for the sasl user. The length should between 1 to 64 characters. The user should be an existed sasl user.
- acl
Operation stringType Operation type for this acl. The operation type can only be “Write” and “Read”.
- acl
Resource stringName Resource name for this acl. The resource name should be a topic or consumer group name.
- acl
Resource stringPattern Type Resource pattern type for this acl. The resource pattern support two types “LITERAL” and “PREFIXED”. “LITERAL”: A literal name defines the full name of a resource. The special wildcard character “*” can be used to represent a resource with any name. “PREFIXED”: A prefixed name defines a prefix for a resource.
- acl
Resource stringType Resource type for this acl. The resource type can only be “Topic” and “Group”.
- instance
Id string ID of the ALIKAFKA Instance that owns the groups.
- username string
Username for the sasl user. The length should between 1 to 64 characters. The user should be an existed sasl user.
- acl_
operation_ strtype Operation type for this acl. The operation type can only be “Write” and “Read”.
- acl_
resource_ strname Resource name for this acl. The resource name should be a topic or consumer group name.
- acl_
resource_ strpattern_ type Resource pattern type for this acl. The resource pattern support two types “LITERAL” and “PREFIXED”. “LITERAL”: A literal name defines the full name of a resource. The special wildcard character “*” can be used to represent a resource with any name. “PREFIXED”: A prefixed name defines a prefix for a resource.
- acl_
resource_ strtype Resource type for this acl. The resource type can only be “Topic” and “Group”.
- instance_
id str ID of the ALIKAFKA Instance that owns the groups.
- username str
Username for the sasl user. The length should between 1 to 64 characters. The user should be an existed sasl user.
Outputs
All input properties are implicitly available as output properties. Additionally, the SaslAcl resource produces the following output properties:
Look up an Existing SaslAcl Resource
Get an existing SaslAcl resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: SaslAclState, opts?: CustomResourceOptions): SaslAclstatic get(resource_name, id, opts=None, acl_operation_type=None, acl_resource_name=None, acl_resource_pattern_type=None, acl_resource_type=None, host=None, instance_id=None, username=None, __props__=None);func GetSaslAcl(ctx *Context, name string, id IDInput, state *SaslAclState, opts ...ResourceOption) (*SaslAcl, error)public static SaslAcl Get(string name, Input<string> id, SaslAclState? state, CustomResourceOptions? opts = null)- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
The following state arguments are supported:
- Acl
Operation stringType Operation type for this acl. The operation type can only be “Write” and “Read”.
- Acl
Resource stringName Resource name for this acl. The resource name should be a topic or consumer group name.
- Acl
Resource stringPattern Type Resource pattern type for this acl. The resource pattern support two types “LITERAL” and “PREFIXED”. “LITERAL”: A literal name defines the full name of a resource. The special wildcard character “*” can be used to represent a resource with any name. “PREFIXED”: A prefixed name defines a prefix for a resource.
- Acl
Resource stringType Resource type for this acl. The resource type can only be “Topic” and “Group”.
- Host string
The host of the acl.
- Instance
Id string ID of the ALIKAFKA Instance that owns the groups.
- Username string
Username for the sasl user. The length should between 1 to 64 characters. The user should be an existed sasl user.
- Acl
Operation stringType Operation type for this acl. The operation type can only be “Write” and “Read”.
- Acl
Resource stringName Resource name for this acl. The resource name should be a topic or consumer group name.
- Acl
Resource stringPattern Type Resource pattern type for this acl. The resource pattern support two types “LITERAL” and “PREFIXED”. “LITERAL”: A literal name defines the full name of a resource. The special wildcard character “*” can be used to represent a resource with any name. “PREFIXED”: A prefixed name defines a prefix for a resource.
- Acl
Resource stringType Resource type for this acl. The resource type can only be “Topic” and “Group”.
- Host string
The host of the acl.
- Instance
Id string ID of the ALIKAFKA Instance that owns the groups.
- Username string
Username for the sasl user. The length should between 1 to 64 characters. The user should be an existed sasl user.
- acl
Operation stringType Operation type for this acl. The operation type can only be “Write” and “Read”.
- acl
Resource stringName Resource name for this acl. The resource name should be a topic or consumer group name.
- acl
Resource stringPattern Type Resource pattern type for this acl. The resource pattern support two types “LITERAL” and “PREFIXED”. “LITERAL”: A literal name defines the full name of a resource. The special wildcard character “*” can be used to represent a resource with any name. “PREFIXED”: A prefixed name defines a prefix for a resource.
- acl
Resource stringType Resource type for this acl. The resource type can only be “Topic” and “Group”.
- host string
The host of the acl.
- instance
Id string ID of the ALIKAFKA Instance that owns the groups.
- username string
Username for the sasl user. The length should between 1 to 64 characters. The user should be an existed sasl user.
- acl_
operation_ strtype Operation type for this acl. The operation type can only be “Write” and “Read”.
- acl_
resource_ strname Resource name for this acl. The resource name should be a topic or consumer group name.
- acl_
resource_ strpattern_ type Resource pattern type for this acl. The resource pattern support two types “LITERAL” and “PREFIXED”. “LITERAL”: A literal name defines the full name of a resource. The special wildcard character “*” can be used to represent a resource with any name. “PREFIXED”: A prefixed name defines a prefix for a resource.
- acl_
resource_ strtype Resource type for this acl. The resource type can only be “Topic” and “Group”.
- host str
The host of the acl.
- instance_
id str ID of the ALIKAFKA Instance that owns the groups.
- username str
Username for the sasl user. The length should between 1 to 64 characters. The user should be an existed sasl user.
Package Details
- Repository
- https://github.com/pulumi/pulumi-alicloud
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
alicloudTerraform Provider.