Panelen



Forumnavigering
Senast inloggade
RSS
Sponsorer

Forum > ASP.NET 1.x och 2.x > Generella frågor

Banna IP i ASP.NET

Roosweb
Roosweb

Gradering

#7374

Hej på er!

Hade en snabb fråga bara, vad skulle ni säga är enklaste sättet att stoppa ett IP nummer från att komma in på ens sida, det gäller bara ett enda IP och behöver en så enkel kodsnutt som möjligt, är jag ute o cyklar om jag säger att jag har för migatt man kan definera detta IP nummer i web.config filen?

 

Mvh Roosweb

Redigerad av Shadi
Anledning: Bytte till .NET forum

Med Vänliga Hälsningar - Robert Roos - Roosweb.se
Taggar: asp.net, web.config,
ID: #7374 | Skapades: 2008-04-08 08:58:06 | Tråden har 7 svar och har lästs 420 gånger.

voigtan
voigtan

Gradering

#7376

I din config:

<appSettings>
    <add key="BannedIp" value="1.1.1.1"/>
</appSettings>

och i din asp.net kod(c#):

AppSettingsReader appsettingsreader = new AppSettingsReader();
string bannedIp = appsettingsreader.GetValue("BannedIp", "System.String".GetType()).ToString();

if(bannedIp == Request.UserHostAddress())
{
    //You are banned fool!
}

borde fungera?

Hur man ställer en fråga: http://support.microsoft.com/kb/q555375
ID: #7376 | Skapades: 2008-04-08 09:16:34

Roosweb
Roosweb

Gradering

#11082

Okej ja det bör fungera, men nu är det ett tag sen jag höll på med ASP.NET, någon som vet hur man kan implementera den här koden i DotNEtBlogEngine? :)

Med Vänliga Hälsningar - Robert Roos - Roosweb.se
ID: #11082 | Skapades: 2008-08-06 14:54:02

LP_MAXI
LP_MAXI

Gradering

#11084

Kan du inte lägga koden som skall ligga i din web.config där och sedan den andra koden som du fick av voigtan i page_load i default.aspx.cs?

http://www.lpmaxi.se/
Taggar: web.config,
ID: #11084 | Skapades: 2008-08-06 15:11:03

Roosweb
Roosweb

Gradering

#11091

Okej får det inte att fungera riktigt:

#region Using
using System;
using System.Globalization;
using BlogEngine.Core;

#endregion

public partial class _default : BlogEngine.Core.Web.Controls.BlogBasePage
{
  protected void Page_Load(object sender, EventArgs e)
  {
    if (Page.IsCallback)
      return;

    if (Request.RawUrl.ToLowerInvariant().Contains("/category/"))
    {
      DisplayCategories();
    }
    else if (Request.RawUrl.ToLowerInvariant().Contains("/author/"))
    {
      DisplayAuthors();
    }
    else if (Request.RawUrl.ToLowerInvariant().Contains("?tag="))
    {
      DisplayTags();
    }
    else if (Request.QueryString["year"] != null || Request.QueryString["date"] != null)
    {
      DisplayDateRange();
    }
    else if (Request.QueryString.Count == 0 || !string.IsNullOrEmpty(Request.QueryString["page"]))
    {
      PostList1.Posts = Post.Posts;
      Page.Title = BlogSettings.Instance.Name + " - " + BlogSettings.Instance.Description;
    }
    else if (!string.IsNullOrEmpty(Request.QueryString["q"]))
    {
      DisplaySearch();
    }

    base.AddMetaTag("description", BlogSettings.Instance.Description);
    base.AddMetaTag("author", BlogSettings.Instance.AuthorName);
    AddMetaKeywords();
    base.AddMicroSummary(string.Empty);
  }

  /// <summary>
  /// Adds the post's tags as meta keywords.
  /// </summary>
  private void AddMetaKeywords()
  {
    if (CategoryDictionary.Instance.Count > 0)
    {
      string[] categories = new string[CategoryDictionary.Instance.Count];
      CategoryDictionary.Instance.Values.CopyTo(categories, 0);
      base.AddMetaTag("keywords", string.Join(",", categories));
    }
  }

  private void DisplaySearch()
  {
    bool includeComments = Request.QueryString["comment"] != null;
    PostList1.Posts = Search.Hits(Post.Posts, Request.QueryString["q"], includeComments);
    Page.Title = "Search result for '" + Server.HtmlEncode(Request.QueryString["q"]) + "'";
    AddMetaTag("description", BlogSettings.Instance.Description);
  }

  private void DisplayCategories()
  {
    if (!String.IsNullOrEmpty(Request.QueryString["id"]))
    {
      Guid categoryId = new Guid(Request.QueryString["id"]);
      PostList1.Posts = Post.GetPostsByCategory(categoryId);
      Page.Title = BlogSettings.Instance.Name + " - " + CategoryDictionary.Instance[categoryId];
    }
  }

  private void DisplayAuthors()
  {
    if (!string.IsNullOrEmpty(Request.QueryString["name"]))
    {
      PostList1.Posts = Post.GetPostsByAuthor(Request.QueryString["name"]); ;
      Title = BlogSettings.Instance.Name + " - All posts by " + Request.QueryString["name"];
    }
  }

  private void DisplayTags()
  {
    if (!string.IsNullOrEmpty(Request.QueryString["tag"]))
    {
      PostList1.Posts = Post.GetPostsByTag(Request.QueryString["tag"].Substring(1)); ;
      base.Title = BlogSettings.Instance.Name + " - All posts tagged '" + Request.QueryString["tag"].Substring(1) + "'";
      base.AddMetaTag("description", BlogSettings.Instance.Description);
    }
  }

  private void DisplayDateRange()
  {
    if (!string.IsNullOrEmpty(Request.QueryString["year"]) && !string.IsNullOrEmpty(Request.QueryString["month"]))
    {
      DateTime dateFrom = DateTime.Parse(Request.QueryString["year"] + "-" + Request.QueryString["month"] + "-01", CultureInfo.InvariantCulture);
      DateTime dateTo = dateFrom.AddMonths(1).AddMilliseconds(-1);
      PostList1.Posts = Post.GetPostsByDate(dateFrom, dateTo);
      Title = BlogSettings.Instance.Name + " - " + dateFrom.ToString("MMMM yyyy");
    }
    else if (!string.IsNullOrEmpty(Request.QueryString["date"]))
    {
      DateTime date = DateTime.Parse(Request.QueryString["date"], CultureInfo.InvariantCulture);
      PostList1.Posts = Post.GetPostsByDate(date, date);
      Title = BlogSettings.Instance.Name + " - " + date.ToString("MMMM d. yyyy");
    }
    else if (!string.IsNullOrEmpty(Request.QueryString["calendar"]))
    {
      calendar.Visible = true;
      PostList1.Visible = false;
    }
  }

}

Detta är koden jag har nu, men vet inte riktigt vart jag ska lägga in den bit kod som kollar om IP:t är blockerat =/

Med Vänliga Hälsningar - Robert Roos - Roosweb.se
ID: #11091 | Skapades: 2008-08-06 18:01:13

voigtan
voigtan

Gradering

#11092

Lägg koden i början av din load event: protected void Page_Load(object sender, EventArgs e)

Hur man ställer en fråga: http://support.microsoft.com/kb/q555375
ID: #11092 | Skapades: 2008-08-06 18:03:02

Roosweb
Roosweb

Gradering

#11093

Menar du såhär så går det inte utan får error:

 
 

public partial class _default : BlogEngine.Core.Web.Controls.BlogBasePage
{
  protected void Page_Load(object sender, EventArgs e)
  {

      AppSettingsReader appsettingsreader = new AppSettingsReader();
      string bannedIp = appsettingsreader.GetValue("BannedIp", "System.String".GetType()).ToString();

      if (bannedIp == Request.UserHostAddress())
      {
          //You are banned fool!
      }



    if (Page.IsCallback)
      return;


    if (Request.RawUrl.ToLowerInvariant().Contains("/category/"))
    {
      DisplayCategories();
    }
    else if (Request.RawUrl.ToLowerInvariant().Contains("/author/"))
    {
      DisplayAuthors();
    }


 


 

 

 



Redigerad av Roosweb
Anledning:

Med Vänliga Hälsningar - Robert Roos - Roosweb.se
ID: #11093 | Skapades: 2008-08-06 18:19:25

LP_MAXI
LP_MAXI

Gradering

#11094

Vad får du för felmeddelande?

http://www.lpmaxi.se/
ID: #11094 | Skapades: 2008-08-06 18:42:35
© Copyright 2007-2009 Shadi Domat | Version 3.0 | Sidkarta | Policy