public async Task <bool> PostAsync(IpModel model) { try { var jsonData = JsonConvert.SerializeObject(model).ToLowerInvariant(); var url = await GetIFTTTMakerUrlAsync(); if (string.IsNullOrEmpty(url)) { return(false); } using (var jsonContent = new StringContent(jsonData, Encoding.UTF8, "application/json")) using (var response = await m_HttpClient.PostAsync(url, jsonContent)) { response.EnsureSuccessStatusCode(); return(true); } } catch (HttpRequestException httpRequestException) { Log.Error($"Failed to post {model.Value1} to IFTTT '{httpRequestException.Message}'", httpRequestException); } catch (Exception exception) { Log.Error($"Failed to post {model.Value1} to IFTTT '{exception.Message}'", exception); } return(false); }
public static void ModifyIpModel(IpModel p) { _ipModelService.Update(new ControllerCenter.Model.IpModel() { IpName = p.IpName }); }
public ActionResult Edit(IpModel model) { try { if (ModelState.IsValid) { var result = _service.Edit(model.Id, new IpAddressElement() { Address = model.IpAddress, Denied = model.IsDenied }); if (result) { return(RedirectToAction("IPs")); } } } catch (Exception ex) { _logger.Log(LogLevel.Error, ex); } ViewBag.ErrorMessage = "Възникна грешка"; return(View(model)); }
public static void DelIpModel(IpModel p) { _ipModelService.Delete(new ControllerCenter.Model.IpModel() { IpName = p.IpName }); }
public static void AddIpModel(IpModel p) { _ipModelService.Add(new ControllerCenter.Model.IpModel() { IpName = p.IpName }); }
public IActionResult GetMyIp() { IpModel ipModel = new IpModel() { IpAddress = httpContextAccessor.HttpContext.Connection.RemoteIpAddress.ToString() }; return(View(ipModel)); }
/// <summary> /// 编辑结束触发时间 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void dgvIp_CellEndEdit(object sender, DataGridViewCellEventArgs e) { List <IpModel> list = new List <IpModel>(); foreach (DataGridViewRow row in dgvIp.Rows) { if (row.Cells["IPAddress"].Value != null) { if (!string.IsNullOrWhiteSpace(row.Cells["IPAddress"].Value.ToString())) { IpModel IpModel = new IpModel(); IpModel.IPAddress = row.Cells["IPAddress"].Value.ToString(); IpModel.BZ = row.Cells["BZ"].Value == null ? "" : row.Cells["BZ"].Value.ToString(); list.Add(IpModel); } } } dgvIp.EndEdit(); saveXml(list); //InitIp(); }
public IpModel GetIpContract(string userId, string password, string sirketkodu) { var ipmodel = new IpModel(); try { ipmodel = _dbAccess.QueryItem <IpModel>("PROC_GETIP", new List <MySqlParameter> { new MySqlParameter("P_SIRKETKODU", sirketkodu) }); if (ipmodel.DbName == null) { ipmodel.Statu = Model.Statu.fail; ipmodel.Message = "Geçersiz Hukuk Kodu"; return(ipmodel); } ipmodel.SirketKodu = sirketkodu; ipmodel.Operation = "GetIpContract"; var response = hsClient.AuthenticateUser(ipmodel.DbName, ipmodel.Ip, Convert.ToInt32(userId), password); ipmodel.Message = response.Messagek__BackingField; if ((int)response.Statuk__BackingField == (int)Model.Statu.fail) { ipmodel.Statu = Model.Statu.fail; } else { ipmodel.Statu = Model.Statu.success; ipmodel.userid = response.UserIdk__BackingField; } } catch (Exception ex) { ipmodel.Statu = Model.Statu.fail; ipmodel.Message = "Geçersiz kullanıcı adı veya şifre"; } return(ipmodel); }
/// <summary> /// Gets the datatable for the grid /// </summary> /// <param name="inputString">Json input containing all the info about vms</param> /// <returns></returns> private DataTable GetVmData(string inputString) { try { //parse json input into vm model var values = VmssModel.FromJson(inputString); DataTable table = new DataTable(); table.Columns.Add("Id", typeof(string)); table.Columns.Add("Instance Id", typeof(string)); table.Columns.Add("Name", typeof(string)); table.Columns.Add("Status", typeof(string)); table.Columns.Add("Ip", typeof(string)); //table.Columns.Add("Status", typeof(string)); foreach (Value vm in values.Value) { VmInstanceModel v = GetVm(vm.InstanceId.ToString()); PublicIpAddressConfiguration publicIpConfig = vm.Properties.NetworkProfileConfiguration.NetworkInterfaceConfigurations[0].Properties.IpConfigurations[0].Properties.PublicIpAddressConfiguration; string ipName = ""; if (publicIpConfig != null) { IpModel ip = GetIp(publicIpConfig.Name); ipName = ip.Properties.IpAddress; } string powerState = v.Statuses[1].Code.Replace("PowerState/", string.Empty); table.Rows.Add(vm.Id, vm.InstanceId, vm.Name, powerState, ipName); } ; return(table); } catch (Exception ex) { throw ex; } }
public async Task <IActionResult> Post(IpModel model) { if (model == null) { return(BadRequest(new { Success = false, Message = "Invalid model." })); } if (!Request.Headers.ContainsKey("Api-Secret")) { return(BadRequest(new { success = false, message = "Missing Secret header" })); } var values = Request.Headers["Api-Secret"]; var apiSecret = Environment.GetEnvironmentVariable("AWSHELPER_API_SECRET"); if (values.FirstOrDefault(x => x == apiSecret) == null) { return(Unauthorized(new { success = false, message = "Invalid secret header" })); } if (string.IsNullOrEmpty(model.Name) || string.IsNullOrWhiteSpace(model.Name)) { return(BadRequest(new { Success = false, Message = "Invalid name" })); } var namePrefix = Environment.GetEnvironmentVariable("AWSHELPER_NAME_PREFIX"); var groupId = Environment.GetEnvironmentVariable("AWSHELPER_GROUP_ID"); var accessId = Environment.GetEnvironmentVariable("AWSHELPER_ACCESS_ID"); var accessSecret = Environment.GetEnvironmentVariable("AWSHELPER_ACCESS_SECRET"); var endpoint = RegionEndpoint.GetBySystemName(Environment.GetEnvironmentVariable("AWSHELPER_REGION")); var client = new AmazonEC2Client(accessId, accessSecret, endpoint); var req = new DescribeSecurityGroupsRequest(); req.GroupIds.Add(groupId); var request = new UpdateSecurityGroupRuleDescriptionsIngressRequest { GroupId = groupId }; try { var secGroupRequest = new DescribeSecurityGroupsRequest(); secGroupRequest.GroupIds.Add(groupId); var get = await client.DescribeSecurityGroupsAsync(secGroupRequest); var securityGroup = get.SecurityGroups.FirstOrDefault(); if (securityGroup == null) { return(BadRequest(new { Success = false, Message = "Security group not found." })); } var description = $"{namePrefix}{model.Name}"; var ipRangeListRemoved = new List <IpRange>(); var ipRangeListAdded = new List <IpRange>(); foreach (var permission in securityGroup.IpPermissions) { foreach (var ipRange in permission.Ipv4Ranges) { if (description.Equals(ipRange.Description) && permission.ToPort == model.Port) { ipRangeListRemoved.Add(ipRange); } } permission.Ipv4Ranges.RemoveAll(x => ipRangeListRemoved.Contains(x)); } if (ipRangeListRemoved.Any()) { var revokeRequest = new RevokeSecurityGroupIngressRequest(); revokeRequest.GroupId = groupId; revokeRequest.IpPermissions.Add(new IpPermission { FromPort = model.Port, IpProtocol = model.Protocol, ToPort = model.Port, Ipv4Ranges = new List <IpRange>(ipRangeListRemoved) }); await client.RevokeSecurityGroupIngressAsync(revokeRequest); } var authorizeRequest = new AuthorizeSecurityGroupIngressRequest(); authorizeRequest.GroupId = groupId; var authorizeIpRange = new IpRange { CidrIp = $"{model.Ip}/32", Description = description }; authorizeRequest.IpPermissions.Add(new IpPermission { FromPort = model.Port, IpProtocol = model.Protocol, ToPort = model.Port, Ipv4Ranges = new List <IpRange> { authorizeIpRange } }); var authorizeResult = await client.AuthorizeSecurityGroupIngressAsync(authorizeRequest); return(Ok(new { Success = true, Message = "Action completed." })); } catch (Exception ex) { return(BadRequest(new { Success = false, Message = ex.Message })); } }