get ip address client in wcf service

Hi, i'm going to explain, how to allow some specific IP address to access my WCF Services and in this example, we need a xml file where we define to IPAddress to allow some specific address otherwise deny.
 

Example:
 

 public IPAddressFilter
  {
        try
            {
                OperationContext context = OperationContext.Current;
                MessageProperties msgProperties = context.IncomingMessageProperties;
                RemoteEndpointMessageProperty endpointPropertes = msgProperties[RemoteEndpointMessageProperty.Name] as RemoteEndpointMessageProperty;
                string IPAddress = endpointPropertes.Address;

                    if (!GetIP_From_Config_File(IPAddress))
                    {
                        HttpResponseMessageProperty responseProperty = new HttpResponseMessageProperty();
                        responseProperty.StatusCode = (System.Net.HttpStatusCode)401;
                        messageProperties["httpResponse"] = responseProperty;
                        response = 0 / response;
                    }
               
            }
            catch
            {
                throw;
            }
  }



 

private Boolean GetIP_From_Config_File(string IPstr)
 {
         Boolean idTrue = false;
         try
            {
                XmlDocument xmlDoc = new XmlDocument();
                xmlDoc.Load(@"C:\Config.xml");
                XmlNodeList IpAddress = xmlDoc.GetElementsByTagName("IPAddress");
              
                string adrs = IpAddress[0].InnerText.Trim();
                string[] arrayIPadrs = adrs.Split(',');

                if (arrayIPadrs.Contains(IPstr))
                {
                    idTrue = true;
                }
            }
            catch
            {
               
                throw;
            }
            return idTrue;
 }


ANIL SINGH

Anil Singh is an author, tech blogger, and software programmer. Book writing, tech blogging is something do extra and Anil love doing it. For more detail, kindly refer to this link..

My Tech Blog - https://www.code-sample.com/
My Books - Book 1 and Book 2

www.code-sample.com/. Powered by Blogger.
^