Namespace Pulumi.AliCloud.Ram
Classes
AccessKey
Provides a RAM User access key resource.
NOTE: You should set the
secret_fileif you want to get the access key.
Example Usage
using Pulumi;
using AliCloud = Pulumi.AliCloud;
class MyStack : Stack
{
public MyStack()
{
// Create a new RAM access key for user.
var user = new AliCloud.Ram.User("user", new AliCloud.Ram.UserArgs
{
Comments = "yoyoyo",
DisplayName = "user_display_name",
Email = "hello.uuu@aaa.com",
Force = true,
Mobile = "86-18688888888",
});
var ak = new AliCloud.Ram.AccessKey("ak", new AliCloud.Ram.AccessKeyArgs
{
SecretFile = "/xxx/xxx/xxx.txt",
UserName = user.Name,
});
}
}
AccessKeyArgs
AccessKeyState
AccountAlias
Provides a RAM cloud account alias.
Example Usage
using Pulumi;
using AliCloud = Pulumi.AliCloud;
class MyStack : Stack
{
public MyStack()
{
// Create a alias for cloud account.
var @alias = new AliCloud.Ram.AccountAlias("alias", new AliCloud.Ram.AccountAliasArgs
{
AccountAlias = "hallo",
});
}
}
AccountAliasArgs
AccountAliasState
AccountPasswordPolicy
AccountPasswordPolicyArgs
AccountPasswordPolicyState
Alias
AliasArgs
AliasState
GetAccountAlias
GetAccountAliasArgs
GetAccountAliases
GetAccountAliasesArgs
GetAccountAliasesResult
GetAccountAliasResult
GetGroups
GetGroupsArgs
GetGroupsResult
GetPolicies
GetPoliciesArgs
GetPoliciesResult
GetRoles
GetRolesArgs
GetRolesResult
GetUsers
GetUsersArgs
GetUsersResult
Group
GroupArgs
GroupMembership
Provides a RAM Group membership resource.
Example Usage
using Pulumi;
using AliCloud = Pulumi.AliCloud;
class MyStack : Stack
{
public MyStack()
{
// Create a RAM Group membership.
var @group = new AliCloud.Ram.Group("group", new AliCloud.Ram.GroupArgs
{
Comments = "this is a group comments.",
Force = true,
});
var user = new AliCloud.Ram.User("user", new AliCloud.Ram.UserArgs
{
Comments = "yoyoyo",
DisplayName = "user_display_name",
Email = "hello.uuu@aaa.com",
Force = true,
Mobile = "86-18688888888",
});
var user1 = new AliCloud.Ram.User("user1", new AliCloud.Ram.UserArgs
{
Comments = "yoyoyo",
DisplayName = "user_display_name1",
Email = "hello.uuu@aaa.com",
Force = true,
Mobile = "86-18688888889",
});
var membership = new AliCloud.Ram.GroupMembership("membership", new AliCloud.Ram.GroupMembershipArgs
{
GroupName = @group.Name,
UserNames =
{
user.Name,
user1.Name,
},
});
}
}
GroupMembershipArgs
GroupMembershipState
GroupPolicyAttachment
Provides a RAM Group Policy attachment resource.
Example Usage
using Pulumi;
using AliCloud = Pulumi.AliCloud;
class MyStack : Stack
{
public MyStack()
{
// Create a RAM Group Policy attachment.
var @group = new AliCloud.Ram.Group("group", new AliCloud.Ram.GroupArgs
{
Comments = "this is a group comments.",
Force = true,
});
var policy = new AliCloud.Ram.Policy("policy", new AliCloud.Ram.PolicyArgs
{
Description = "this is a policy test",
Document = @" {
""Statement"": [
{
""Action"": [
""oss:ListObjects"",
""oss:GetObject""
],
""Effect"": ""Allow"",
""Resource"": [
""acs:oss:*:*:mybucket"",
""acs:oss:*:*:mybucket/*""
]
}
],
""Version"": ""1""
}
",
Force = true,
});
var attach = new AliCloud.Ram.GroupPolicyAttachment("attach", new AliCloud.Ram.GroupPolicyAttachmentArgs
{
GroupName = @group.Name,
PolicyName = policy.Name,
PolicyType = policy.Type,
});
}
}
GroupPolicyAttachmentArgs
GroupPolicyAttachmentState
GroupState
LoginProfile
Provides a RAM User Login Profile resource.
Example Usage
using Pulumi;
using AliCloud = Pulumi.AliCloud;
class MyStack : Stack
{
public MyStack()
{
// Create a RAM login profile.
var user = new AliCloud.Ram.User("user", new AliCloud.Ram.UserArgs
{
Comments = "yoyoyo",
DisplayName = "user_display_name",
Email = "hello.uuu@aaa.com",
Force = true,
Mobile = "86-18688888888",
});
var profile = new AliCloud.Ram.LoginProfile("profile", new AliCloud.Ram.LoginProfileArgs
{
Password = "Yourpassword1234",
UserName = user.Name,
});
}
}
LoginProfileArgs
LoginProfileState
Policy
PolicyArgs
PolicyState
Role
RoleArgs
RoleAttachment
Provides a RAM role attachment resource to bind role for several ECS instances.
Example Usage
using System.Linq;
using Pulumi;
using AliCloud = Pulumi.AliCloud;
class MyStack : Stack
{
public MyStack()
{
var defaultZones = Output.Create(AliCloud.GetZones.InvokeAsync(new AliCloud.GetZonesArgs
{
AvailableDiskCategory = "cloud_efficiency",
AvailableResourceCreation = "VSwitch",
}));
var defaultInstanceTypes = defaultZones.Apply(defaultZones => Output.Create(AliCloud.Ecs.GetInstanceTypes.InvokeAsync(new AliCloud.Ecs.GetInstanceTypesArgs
{
AvailabilityZone = defaultZones.Zones[0].Id,
CpuCoreCount = 2,
MemorySize = 4,
})));
var defaultImages = Output.Create(AliCloud.Ecs.GetImages.InvokeAsync(new AliCloud.Ecs.GetImagesArgs
{
MostRecent = true,
NameRegex = "^ubuntu_18.*64",
Owners = "system",
}));
var defaultNetwork = new AliCloud.Vpc.Network("defaultNetwork", new AliCloud.Vpc.NetworkArgs
{
CidrBlock = "172.16.0.0/16",
});
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 defaultSecurityGroup = new AliCloud.Ecs.SecurityGroup("defaultSecurityGroup", new AliCloud.Ecs.SecurityGroupArgs
{
VpcId = defaultNetwork.Id,
});
var defaultSecurityGroupRule = new AliCloud.Ecs.SecurityGroupRule("defaultSecurityGroupRule", new AliCloud.Ecs.SecurityGroupRuleArgs
{
CidrIp = "172.16.0.0/24",
IpProtocol = "tcp",
NicType = "intranet",
Policy = "accept",
PortRange = "22/22",
Priority = 1,
SecurityGroupId = defaultSecurityGroup.Id,
Type = "ingress",
});
var config = new Config();
var name = config.Get("name") ?? "ecsInstanceVPCExample";
var foo = new AliCloud.Ecs.Instance("foo", new AliCloud.Ecs.InstanceArgs
{
ImageId = defaultImages.Apply(defaultImages => defaultImages.Images[0].Id),
InstanceName = name,
InstanceType = defaultInstanceTypes.Apply(defaultInstanceTypes => defaultInstanceTypes.InstanceTypes[0].Id),
InternetChargeType = "PayByTraffic",
InternetMaxBandwidthOut = 5,
SecurityGroups =
{
defaultSecurityGroup.Id,
},
SystemDiskCategory = "cloud_efficiency",
VswitchId = defaultSwitch.Id,
});
var role = new AliCloud.Ram.Role("role", new AliCloud.Ram.RoleArgs
{
Description = "this is a test",
Document = @" {
""Statement"": [
{
""Action"": ""sts:AssumeRole"",
""Effect"": ""Allow"",
""Principal"": {
""Service"": [
""ecs.aliyuncs.com""
]
}
}
],
""Version"": ""1""
}
",
Force = true,
});
var attach = new AliCloud.Ram.RoleAttachment("attach", new AliCloud.Ram.RoleAttachmentArgs
{
InstanceIds =
{
{
foo,
}.Select(__item => __item.Id).ToList(),
},
RoleName = role.Name,
});
}
}
RoleAttachmentArgs
RoleAttachmentState
RolePolicyAttachment
Provides a RAM Role attachment resource.
Example Usage
using Pulumi;
using AliCloud = Pulumi.AliCloud;
class MyStack : Stack
{
public MyStack()
{
// Create a RAM Role Policy attachment.
var role = new AliCloud.Ram.Role("role", new AliCloud.Ram.RoleArgs
{
Description = "this is a role test.",
Document = @" {
""Statement"": [
{
""Action"": ""sts:AssumeRole"",
""Effect"": ""Allow"",
""Principal"": {
""Service"": [
""apigateway.aliyuncs.com"",
""ecs.aliyuncs.com""
]
}
}
],
""Version"": ""1""
}
",
Force = true,
});
var policy = new AliCloud.Ram.Policy("policy", new AliCloud.Ram.PolicyArgs
{
Description = "this is a policy test",
Document = @" {
""Statement"": [
{
""Action"": [
""oss:ListObjects"",
""oss:GetObject""
],
""Effect"": ""Allow"",
""Resource"": [
""acs:oss:*:*:mybucket"",
""acs:oss:*:*:mybucket/*""
]
}
],
""Version"": ""1""
}
",
Force = true,
});
var attach = new AliCloud.Ram.RolePolicyAttachment("attach", new AliCloud.Ram.RolePolicyAttachmentArgs
{
PolicyName = policy.Name,
PolicyType = policy.Type,
RoleName = role.Name,
});
}
}
RolePolicyAttachmentArgs
RolePolicyAttachmentState
RoleState
User
UserArgs
UserPolicyAttachment
Provides a RAM User Policy attachment resource.
Example Usage
using Pulumi;
using AliCloud = Pulumi.AliCloud;
class MyStack : Stack
{
public MyStack()
{
// Create a RAM User Policy attachment.
var user = new AliCloud.Ram.User("user", new AliCloud.Ram.UserArgs
{
Comments = "yoyoyo",
DisplayName = "user_display_name",
Email = "hello.uuu@aaa.com",
Force = true,
Mobile = "86-18688888888",
});
var policy = new AliCloud.Ram.Policy("policy", new AliCloud.Ram.PolicyArgs
{
Description = "this is a policy test",
Document = @" {
""Statement"": [
{
""Action"": [
""oss:ListObjects"",
""oss:GetObject""
],
""Effect"": ""Allow"",
""Resource"": [
""acs:oss:*:*:mybucket"",
""acs:oss:*:*:mybucket/*""
]
}
],
""Version"": ""1""
}
",
Force = true,
});
var attach = new AliCloud.Ram.UserPolicyAttachment("attach", new AliCloud.Ram.UserPolicyAttachmentArgs
{
PolicyName = policy.Name,
PolicyType = policy.Type,
UserName = user.Name,
});
}
}