private void createSecurityGroup() { try { CreateSecurityGroupRequest requestSecurirtyGroup = new CreateSecurityGroupRequest(); requestSecurirtyGroup.GroupName = _securityGroups; requestSecurirtyGroup.GroupDescription = jwSecurityGroupDescription; CreateSecurityGroupResponse responseSecurityGroup = _service.CreateSecurityGroup(requestSecurirtyGroup); AuthorizeSecurityGroupIngressRequest requestAuthz = new AuthorizeSecurityGroupIngressRequest(); requestAuthz.GroupName = _securityGroups; requestAuthz.IpProtocol = "tcp"; requestAuthz.CidrIp = "0.0.0.0/0"; decimal[] ports = { 80, 443, 1443, 3389 }; foreach (decimal port in ports) { requestAuthz.FromPort = port; requestAuthz.ToPort = port; AuthorizeSecurityGroupIngressResponse responseAuthz = _service.AuthorizeSecurityGroupIngress(requestAuthz); } } catch (AmazonEC2Exception ex) { throw new Exception("Caught Exception: " + ex.XML); } }
/// <summary> /// Unmarshaller the response from the service to the response class. /// </summary> /// <param name="context"></param> /// <returns></returns> public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext context) { CreateSecurityGroupResponse response = new CreateSecurityGroupResponse(); int originalDepth = context.CurrentDepth; int targetDepth = originalDepth + 1; if (context.IsStartOfDocument) { targetDepth = 2; } while (context.ReadAtDepth(originalDepth)) { if (context.IsStartElement || context.IsAttribute) { if (context.TestExpression("groupId", targetDepth)) { var unmarshaller = StringUnmarshaller.Instance; response.GroupId = unmarshaller.Unmarshall(context); continue; } } } return(response); }
public static CreateSecurityGroupResponse Unmarshall(UnmarshallerContext _ctx) { CreateSecurityGroupResponse createSecurityGroupResponse = new CreateSecurityGroupResponse(); createSecurityGroupResponse.HttpResponse = _ctx.HttpResponse; createSecurityGroupResponse.RequestId = _ctx.StringValue("CreateSecurityGroup.RequestId"); createSecurityGroupResponse.SecurityGroupId = _ctx.StringValue("CreateSecurityGroup.SecurityGroupId"); return(createSecurityGroupResponse); }
// ############################################################################################# SecurityGroup CreateSecurityGroup(IAmazonEC2 ec2, string secGroupName, string vpc) { SecurityGroup MySG; Amazon.EC2.Model.Filter nameFilter = new Amazon.EC2.Model.Filter(); nameFilter.Name = "group-name"; nameFilter.Values = new List <string>() { secGroupName }; var describeRequest = new DescribeSecurityGroupsRequest(); describeRequest.Filters.Add(nameFilter); var describeResponse = new DescribeSecurityGroupsResponse(); describeResponse = ec2.DescribeSecurityGroups(describeRequest); if (describeResponse.SecurityGroups.Count > 0) { //return describeResponse.SecurityGroups[0]; MySG = describeResponse.SecurityGroups[0]; MySG = AddSGIPrermissions(ec2, MySG); return(MySG); } var createRequest = new CreateSecurityGroupRequest(); createRequest.GroupName = secGroupName; createRequest.VpcId = vpc; createRequest.Description = "My sample security group for EC2-Classic"; var createResponse = new CreateSecurityGroupResponse(); //createResponse = CreateSecurityGroupResponse(createRequest); var Groups = new List <string>() { createResponse.GroupId }; createResponse = ec2.CreateSecurityGroup(createRequest); MySG = new SecurityGroup(); MySG.GroupId = createResponse.GroupId; MySG.VpcId = vpc; MySG = AddSGIPrermissions(ec2, MySG); return(MySG); // ec2.des }
public static CreateSecurityGroupResponse Unmarshall(UnmarshallerContext context) { CreateSecurityGroupResponse createSecurityGroupResponse = new CreateSecurityGroupResponse() { HttpResponse = context.HttpResponse, RequestId = context.StringValue("CreateSecurityGroup.RequestId"), SecurityGroupId = context.StringValue("CreateSecurityGroup.SecurityGroupId") }; return(createSecurityGroupResponse); }
public void TestCreateSecurityGroupResponse() { string json = @"{ ""metadata"": { ""guid"": ""1dbeeb23-0f06-4ec4-946d-cc1d7b04047a"", ""url"": ""/v2/security_groups/f49f4785-5217-4dab-b776-714a02515ef3"", ""created_at"": ""2016-09-02T11:52:09Z"", ""updated_at"": null }, ""entity"": { ""name"": ""my_super_sec_group"", ""rules"": [ { ""protocol"": ""icmp"", ""destination"": ""0.0.0.0/0"", ""type"": 0, ""code"": 1 }, { ""protocol"": ""tcp"", ""destination"": ""0.0.0.0/0"", ""ports"": ""2048-3000"", ""log"": true }, { ""protocol"": ""udp"", ""destination"": ""0.0.0.0/0"", ""ports"": ""53, 5353"" }, { ""protocol"": ""all"", ""destination"": ""0.0.0.0/0"", ""description"": ""This rule allows access to all ips and protocols"" } ], ""running_default"": false, ""staging_default"": false, ""spaces_url"": ""/v2/security_groups/f49f4785-5217-4dab-b776-714a02515ef3/spaces"" } }"; CreateSecurityGroupResponse obj = Utilities.DeserializeJson <CreateSecurityGroupResponse>(json); Assert.AreEqual("1dbeeb23-0f06-4ec4-946d-cc1d7b04047a", TestUtil.ToTestableString(obj.EntityMetadata.Guid), true); Assert.AreEqual("/v2/security_groups/f49f4785-5217-4dab-b776-714a02515ef3", TestUtil.ToTestableString(obj.EntityMetadata.Url), true); Assert.AreEqual("2016-09-02T11:52:09Z", TestUtil.ToTestableString(obj.EntityMetadata.CreatedAt), true); Assert.AreEqual("", TestUtil.ToTestableString(obj.EntityMetadata.UpdatedAt), true); Assert.AreEqual("my_super_sec_group", TestUtil.ToTestableString(obj.Name), true); Assert.AreEqual("false", TestUtil.ToTestableString(obj.RunningDefault), true); Assert.AreEqual("false", TestUtil.ToTestableString(obj.StagingDefault), true); Assert.AreEqual("/v2/security_groups/f49f4785-5217-4dab-b776-714a02515ef3/spaces", TestUtil.ToTestableString(obj.SpacesUrl), true); }
public void TestCreateSecurityGroupResponse() { string json = @"{ ""metadata"": { ""guid"": ""8b30c621-401c-4d4a-9d98-f12ebff95d33"", ""url"": ""/v2/security_groups/8b30c621-401c-4d4a-9d98-f12ebff95d33"", ""created_at"": ""2016-02-09T10:21:57Z"", ""updated_at"": null }, ""entity"": { ""name"": ""my_super_sec_group"", ""rules"": [ { ""protocol"": ""icmp"", ""destination"": ""0.0.0.0/0"", ""type"": 0, ""code"": 1 }, { ""protocol"": ""tcp"", ""destination"": ""0.0.0.0/0"", ""ports"": ""2048-3000"", ""log"": true }, { ""protocol"": ""udp"", ""destination"": ""0.0.0.0/0"", ""ports"": ""53, 5353"" }, { ""protocol"": ""all"", ""destination"": ""0.0.0.0/0"" } ], ""running_default"": false, ""staging_default"": false, ""spaces_url"": ""/v2/security_groups/8b30c621-401c-4d4a-9d98-f12ebff95d33/spaces"" } }"; CreateSecurityGroupResponse obj = Utilities.DeserializeJson <CreateSecurityGroupResponse>(json); Assert.AreEqual("8b30c621-401c-4d4a-9d98-f12ebff95d33", TestUtil.ToTestableString(obj.EntityMetadata.Guid), true); Assert.AreEqual("/v2/security_groups/8b30c621-401c-4d4a-9d98-f12ebff95d33", TestUtil.ToTestableString(obj.EntityMetadata.Url), true); Assert.AreEqual("2016-02-09T10:21:57Z", TestUtil.ToTestableString(obj.EntityMetadata.CreatedAt), true); Assert.AreEqual("", TestUtil.ToTestableString(obj.EntityMetadata.UpdatedAt), true); Assert.AreEqual("my_super_sec_group", TestUtil.ToTestableString(obj.Name), true); Assert.AreEqual("false", TestUtil.ToTestableString(obj.RunningDefault), true); Assert.AreEqual("false", TestUtil.ToTestableString(obj.StagingDefault), true); Assert.AreEqual("/v2/security_groups/8b30c621-401c-4d4a-9d98-f12ebff95d33/spaces", TestUtil.ToTestableString(obj.SpacesUrl), true); }
public void TestCreateSecurityGroupResponse() { string json = @"{ ""metadata"": { ""guid"": ""0a129533-0482-4504-a78b-275f5916f7b1"", ""url"": ""/v2/security_groups/0a129533-0482-4504-a78b-275f5916f7b1"", ""created_at"": ""2015-04-16T12:04:17+00:00"", ""updated_at"": null }, ""entity"": { ""name"": ""my_super_sec_group"", ""rules"": [ { ""protocol"": ""icmp"", ""destination"": ""0.0.0.0/0"", ""type"": 0, ""code"": 1 }, { ""protocol"": ""tcp"", ""destination"": ""0.0.0.0/0"", ""ports"": ""2048-3000"", ""log"": true }, { ""protocol"": ""udp"", ""destination"": ""0.0.0.0/0"", ""ports"": ""53, 5353"" }, { ""protocol"": ""all"", ""destination"": ""0.0.0.0/0"" } ], ""running_default"": false, ""staging_default"": false, ""spaces_url"": ""/v2/security_groups/0a129533-0482-4504-a78b-275f5916f7b1/spaces"" } }"; CreateSecurityGroupResponse obj = Utilities.DeserializeJson <CreateSecurityGroupResponse>(json); Assert.AreEqual("0a129533-0482-4504-a78b-275f5916f7b1", TestUtil.ToTestableString(obj.EntityMetadata.Guid), true); Assert.AreEqual("/v2/security_groups/0a129533-0482-4504-a78b-275f5916f7b1", TestUtil.ToTestableString(obj.EntityMetadata.Url), true); Assert.AreEqual("2015-04-16T12:04:17+00:00", TestUtil.ToTestableString(obj.EntityMetadata.CreatedAt), true); Assert.AreEqual("", TestUtil.ToTestableString(obj.EntityMetadata.UpdatedAt), true); Assert.AreEqual("my_super_sec_group", TestUtil.ToTestableString(obj.Name), true); Assert.AreEqual("false", TestUtil.ToTestableString(obj.RunningDefault), true); Assert.AreEqual("false", TestUtil.ToTestableString(obj.StagingDefault), true); Assert.AreEqual("/v2/security_groups/0a129533-0482-4504-a78b-275f5916f7b1/spaces", TestUtil.ToTestableString(obj.SpacesUrl), true); }
public override AmazonWebServiceResponse Unmarshall(XmlUnmarshallerContext context) { CreateSecurityGroupResponse response = new CreateSecurityGroupResponse(); int targetDepth = 2; while (context.Read()) { if (context.IsStartElement || context.IsAttribute) { if (context.TestExpression("groupId", targetDepth)) { response.GroupId = StringUnmarshaller.GetInstance().Unmarshall(context); continue; } } } return(response); }