<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:pingback="http://madskills.com/public/xml/rss/module/pingback/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0">
  <channel>
    <title>SharpLife.NET</title>
    <link>http://sharplife.net/</link>
    <description>A sharp way to know more // Mahdi Taghizadeh's Daily Web Keystrokes.</description>
    <language>en-us</language>
    <copyright>Mahdi Taghizadeh</copyright>
    <lastBuildDate>Sat, 05 Jul 2008 13:09:18 GMT</lastBuildDate>
    <generator>newtelligence dasBlog 2.0.7226.0</generator>
    <managingEditor>mahdi@sharplife.net</managingEditor>
    <webMaster>mahdi@sharplife.net</webMaster>
    <item>
      <trackback:ping>http://sharplife.net/Trackback.aspx?guid=f3d47401-5e43-4fa5-98f3-e86f8c3e313c</trackback:ping>
      <pingback:server>http://sharplife.net/pingback.aspx</pingback:server>
      <pingback:target>http://sharplife.net/PermaLink,guid,f3d47401-5e43-4fa5-98f3-e86f8c3e313c.aspx</pingback:target>
      <dc:creator>Your DisplayName here!</dc:creator>
      <wfw:comment>http://sharplife.net/CommentView,guid,f3d47401-5e43-4fa5-98f3-e86f8c3e313c.aspx</wfw:comment>
      <wfw:commentRss>http://sharplife.net/SyndicationService.asmx/GetEntryCommentsRss?guid=f3d47401-5e43-4fa5-98f3-e86f8c3e313c</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
        </p>
        <p>
One of the basic but important security issues in web development that you should
pay attention to is SQL Injection. Recently HP released a free tool called <strong>Scrawlr</strong> to
test such vulnerabilities. 
</p>
        <p>
This tool checks your pages using a simple crawler or Google query and find any SQL
Injection problems. This tool can only check issues on GET parameters.
</p>
        <p>
You can check up to 1500 URL in each web site using this free tool.
</p>
        <p>
          <strong>Download: <a href="https://download.spidynamics.com/Products/scrawlr/" target="_blank">https://download.spidynamics.com/Products/scrawlr/</a></strong>
        </p>
        <img width="0" height="0" src="http://sharplife.net/aggbug.ashx?id=f3d47401-5e43-4fa5-98f3-e86f8c3e313c" />
      </body>
      <title>Find Your Web site SQL Injection Vulnerabilities Using Scrawlr</title>
      <guid isPermaLink="false">http://sharplife.net/PermaLink,guid,f3d47401-5e43-4fa5-98f3-e86f8c3e313c.aspx</guid>
      <link>http://sharplife.net/2008/07/05/FindYourWebSiteSQLInjectionVulnerabilitiesUsingScrawlr.aspx</link>
      <pubDate>Sat, 05 Jul 2008 13:09:18 GMT</pubDate>
      <description>&lt;p&gt;
&lt;/p&gt;
&lt;p&gt;
One of the basic but important security issues in web development that you should
pay attention to is SQL Injection. Recently HP released a free tool called &lt;strong&gt;Scrawlr&lt;/strong&gt; to
test such vulnerabilities. 
&lt;/p&gt;
&lt;p&gt;
This tool checks your pages using a simple crawler or Google query and find any SQL
Injection problems. This tool can only check issues on GET parameters.
&lt;/p&gt;
&lt;p&gt;
You can check up to 1500 URL in each web site using this free tool.
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;Download: &lt;a href="https://download.spidynamics.com/Products/scrawlr/" target="_blank"&gt;https://download.spidynamics.com/Products/scrawlr/&lt;/a&gt;&lt;/strong&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://sharplife.net/aggbug.ashx?id=f3d47401-5e43-4fa5-98f3-e86f8c3e313c" /&gt;</description>
      <comments>http://sharplife.net/CommentView,guid,f3d47401-5e43-4fa5-98f3-e86f8c3e313c.aspx</comments>
      <category>Download</category>
      <category>Security</category>
      <category>Software</category>
      <category>Tools</category>
    </item>
    <item>
      <trackback:ping>http://sharplife.net/Trackback.aspx?guid=6e0d352d-bc23-40fe-af0b-fe4c17115c6c</trackback:ping>
      <pingback:server>http://sharplife.net/pingback.aspx</pingback:server>
      <pingback:target>http://sharplife.net/PermaLink,guid,6e0d352d-bc23-40fe-af0b-fe4c17115c6c.aspx</pingback:target>
      <dc:creator>Your DisplayName here!</dc:creator>
      <wfw:comment>http://sharplife.net/CommentView,guid,6e0d352d-bc23-40fe-af0b-fe4c17115c6c.aspx</wfw:comment>
      <wfw:commentRss>http://sharplife.net/SyndicationService.asmx/GetEntryCommentsRss?guid=6e0d352d-bc23-40fe-af0b-fe4c17115c6c</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
It’s so easy to use powerful ASP.NET Membership, Role and Profile provider in a Windows
or Console application. Only one key point remains here; you should add an app.config
file to your Console or Windows application and include these nodes in that:
</p>
        <pre class="csharpcode">
          <span class="kwrd">&lt;?</span>
          <span class="html">xml</span>
          <span class="attr">version</span>
          <span class="kwrd">='1.0'</span>
          <span class="attr">encoding</span>
          <span class="kwrd">='utf-8'</span>?<span class="kwrd">&gt;</span><span class="kwrd">&lt;</span><span class="html">configuration</span><span class="kwrd">&gt;</span><span class="kwrd">&lt;</span><span class="html">connectionStrings</span><span class="kwrd">&gt;</span><span class="kwrd">&lt;</span><span class="html">add</span><span class="attr">name</span><span class="kwrd">="SQLConnString"</span><span class="attr">connectionString</span><span class="kwrd">="SERVER=(local);DATABASE=SampleApp;UID=sa;PWD=123"</span><span class="kwrd">/&gt;</span><span class="kwrd">&lt;/</span><span class="html">connectionStrings</span><span class="kwrd">&gt;</span><span class="kwrd">&lt;</span><span class="html">system.web</span><span class="kwrd">&gt;</span><span class="kwrd">&lt;</span><span class="html">membership</span><span class="attr">defaultProvider</span><span class="kwrd">="SampleAppMembershipProvider"</span><span class="kwrd">&gt;</span><span class="kwrd">&lt;</span><span class="html">providers</span><span class="kwrd">&gt;</span><span class="kwrd">&lt;</span><span class="html">add</span><span class="attr">name</span><span class="kwrd">="SampleAppMembershipProvider"</span><span class="attr">connectionStringName</span><span class="kwrd">="SQLConnString"</span><span class="attr">applicationName</span><span class="kwrd">="SampleAppMembership"</span><span class="attr">enablePasswordReset</span><span class="kwrd">="true"</span><span class="attr">enablePasswordRetrieval</span><span class="kwrd">="false"</span><span class="attr">passwordFormat</span><span class="kwrd">="Hashed"</span><span class="attr">maxInvalidPasswordAttempts</span><span class="kwrd">="100"</span><span class="attr">minRequiredPasswordLength</span><span class="kwrd">="5"</span><span class="attr">minRequiredNonalphanumericCharacters</span><span class="kwrd">="0"</span><span class="attr">requiresQuestionAndAnswer</span><span class="kwrd">="false"</span><span class="attr">requiresUniqueEmail</span><span class="kwrd">="true"</span><span class="attr">passwordAttemptWindow</span><span class="kwrd">="5"</span><span class="attr">passwordStrengthRegularExpression</span><span class="kwrd">=""</span><span class="attr">type</span><span class="kwrd">="System.Web.Security.SqlMembershipProvider"</span><span class="kwrd">/&gt;</span><span class="kwrd">&lt;/</span><span class="html">providers</span><span class="kwrd">&gt;</span><span class="kwrd">&lt;/</span><span class="html">membership</span><span class="kwrd">&gt;</span><span class="kwrd">&lt;</span><span class="html">profile</span><span class="attr">defaultProvider</span><span class="kwrd">="SampleAppProfileProvider"</span><span class="kwrd">&gt;</span><span class="kwrd">&lt;</span><span class="html">providers</span><span class="kwrd">&gt;</span><span class="kwrd">&lt;</span><span class="html">add</span><span class="attr">name</span><span class="kwrd">="SampleAppProfileProvider"</span><span class="attr">type</span><span class="kwrd">="System.Web.Profile.SqlProfileProvider"</span><span class="attr">connectionStringName</span><span class="kwrd">="SQLConnString"</span><span class="kwrd">/&gt;</span><span class="kwrd">&lt;/</span><span class="html">providers</span><span class="kwrd">&gt;</span><span class="kwrd">&lt;</span><span class="html">properties</span><span class="kwrd">&gt;</span><span class="kwrd">&lt;</span><span class="html">add</span><span class="attr">name</span><span class="kwrd">="FirstName"</span><span class="attr">type</span><span class="kwrd">="System.String"</span><span class="kwrd">/&gt;</span><span class="kwrd">&lt;</span><span class="html">add</span><span class="attr">name</span><span class="kwrd">="LastName"</span><span class="attr">type</span><span class="kwrd">="System.String"</span><span class="kwrd">/&gt;</span><span class="kwrd">&lt;</span><span class="html">add</span><span class="attr">name</span><span class="kwrd">="Email"</span><span class="attr">type</span><span class="kwrd">="System.String"</span><span class="kwrd">/&gt;</span><span class="kwrd">&lt;</span><span class="html">add</span><span class="attr">name</span><span class="kwrd">="Website"</span><span class="attr">type</span><span class="kwrd">="System.String"</span><span class="kwrd">/&gt;</span><span class="kwrd">&lt;</span><span class="html">add</span><span class="attr">name</span><span class="kwrd">="Address"</span><span class="attr">type</span><span class="kwrd">="System.String"</span><span class="kwrd">/&gt;</span><span class="kwrd">&lt;</span><span class="html">add</span><span class="attr">name</span><span class="kwrd">="Note"</span><span class="attr">type</span><span class="kwrd">="System.String"</span><span class="kwrd">/&gt;</span><span class="kwrd">&lt;</span><span class="html">add</span><span class="attr">name</span><span class="kwrd">="Phone"</span><span class="attr">type</span><span class="kwrd">="System.String"</span><span class="kwrd">/&gt;</span><span class="kwrd">&lt;</span><span class="html">add</span><span class="attr">name</span><span class="kwrd">="Fax"</span><span class="attr">type</span><span class="kwrd">="System.String"</span><span class="kwrd">/&gt;</span><span class="kwrd">&lt;</span><span class="html">add</span><span class="attr">name</span><span class="kwrd">="Feature"</span><span class="attr">type</span><span class="kwrd">="System.Int32"</span><span class="kwrd">/&gt;</span><span class="kwrd">&lt;/</span><span class="html">properties</span><span class="kwrd">&gt;</span><span class="kwrd">&lt;/</span><span class="html">profile</span><span class="kwrd">&gt;</span><span class="kwrd">&lt;</span><span class="html">roleManager</span><span class="attr">enabled</span><span class="kwrd">="true"</span><span class="attr">cacheRolesInCookie</span><span class="kwrd">="true"</span><span class="attr">defaultProvider</span><span class="kwrd">="SampleAppSqlRoleProvider"</span><br /><span class="attr">cookieName</span><span class="kwrd">=".ASPXSampleAppROLES"</span><span class="attr">cookiePath</span><span class="kwrd">="/"</span><span class="attr">cookieTimeout</span><span class="kwrd">="30"</span><span class="attr">cookieRequireSSL</span><span class="kwrd">="false"</span><br /><span class="attr">cookieSlidingExpiration</span><span class="kwrd">="true"</span><span class="attr">createPersistentCookie</span><span class="kwrd">="false"</span><span class="attr">cookieProtection</span><span class="kwrd">="All"</span><span class="kwrd">&gt;</span><span class="kwrd">&lt;</span><span class="html">providers</span><span class="kwrd">&gt;</span><span class="kwrd">&lt;</span><span class="html">clear</span><span class="kwrd">/&gt;</span><span class="kwrd">&lt;</span><span class="html">add</span><span class="attr">name</span><span class="kwrd">="SampleAppSqlRoleProvider"</span><span class="attr">type</span><span class="kwrd">="System.Web.Security.SqlRoleProvider, 
<br />
System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"</span><br /><span class="attr">connectionStringName</span><span class="kwrd">="SQLConnString"</span><span class="attr">applicationName</span><span class="kwrd">="SampleAppRoles"</span><span class="kwrd">/&gt;</span><span class="kwrd">&lt;/</span><span class="html">providers</span><span class="kwrd">&gt;</span><span class="kwrd">&lt;/</span><span class="html">roleManager</span><span class="kwrd">&gt;</span><span class="kwrd">&lt;/</span><span class="html">system.web</span><span class="kwrd">&gt;</span><span class="kwrd">&lt;/</span><span class="html">configuration</span><span class="kwrd">&gt;</span></pre>
        <pre class="csharpcode">
          <span class="kwrd">
          </span>
        </pre>
        <style type="text/css">



.csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, "Courier New", courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}
.csharpcode .lnum { color: #606060; }</style>
        <img width="0" height="0" src="http://sharplife.net/aggbug.ashx?id=6e0d352d-bc23-40fe-af0b-fe4c17115c6c" />
      </body>
      <title>How to use ASP.NET Membership in a Console Application</title>
      <guid isPermaLink="false">http://sharplife.net/PermaLink,guid,6e0d352d-bc23-40fe-af0b-fe4c17115c6c.aspx</guid>
      <link>http://sharplife.net/2008/07/01/HowToUseASPNETMembershipInAConsoleApplication.aspx</link>
      <pubDate>Tue, 01 Jul 2008 12:54:35 GMT</pubDate>
      <description>&lt;p&gt;
It’s so easy to use powerful ASP.NET Membership, Role and Profile provider in a Windows
or Console application. Only one key point remains here; you should add an app.config
file to your Console or Windows application and include these nodes in that:
&lt;/p&gt;
&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;&amp;lt;?&lt;/span&gt;&lt;span class="html"&gt;xml&lt;/span&gt; &lt;span class="attr"&gt;version&lt;/span&gt;&lt;span class="kwrd"&gt;='1.0'&lt;/span&gt; &lt;span class="attr"&gt;encoding&lt;/span&gt;&lt;span class="kwrd"&gt;='utf-8'&lt;/span&gt;?&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt; &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;configuration&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt; &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;connectionStrings&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt; &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;add&lt;/span&gt; &lt;span class="attr"&gt;name&lt;/span&gt;&lt;span class="kwrd"&gt;="SQLConnString"&lt;/span&gt; &lt;span class="attr"&gt;connectionString&lt;/span&gt;&lt;span class="kwrd"&gt;="SERVER=(local);DATABASE=SampleApp;UID=sa;PWD=123"&lt;/span&gt;&lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt; &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;connectionStrings&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt; &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;system.web&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt; &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;membership&lt;/span&gt; &lt;span class="attr"&gt;defaultProvider&lt;/span&gt;&lt;span class="kwrd"&gt;="SampleAppMembershipProvider"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt; &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;providers&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt; &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;add&lt;/span&gt; &lt;span class="attr"&gt;name&lt;/span&gt;&lt;span class="kwrd"&gt;="SampleAppMembershipProvider"&lt;/span&gt; &lt;span class="attr"&gt;connectionStringName&lt;/span&gt;&lt;span class="kwrd"&gt;="SQLConnString"&lt;/span&gt; &lt;span class="attr"&gt;applicationName&lt;/span&gt;&lt;span class="kwrd"&gt;="SampleAppMembership"&lt;/span&gt; &lt;span class="attr"&gt;enablePasswordReset&lt;/span&gt;&lt;span class="kwrd"&gt;="true"&lt;/span&gt; &lt;span class="attr"&gt;enablePasswordRetrieval&lt;/span&gt;&lt;span class="kwrd"&gt;="false"&lt;/span&gt; &lt;span class="attr"&gt;passwordFormat&lt;/span&gt;&lt;span class="kwrd"&gt;="Hashed"&lt;/span&gt; &lt;span class="attr"&gt;maxInvalidPasswordAttempts&lt;/span&gt;&lt;span class="kwrd"&gt;="100"&lt;/span&gt; &lt;span class="attr"&gt;minRequiredPasswordLength&lt;/span&gt;&lt;span class="kwrd"&gt;="5"&lt;/span&gt; &lt;span class="attr"&gt;minRequiredNonalphanumericCharacters&lt;/span&gt;&lt;span class="kwrd"&gt;="0"&lt;/span&gt; &lt;span class="attr"&gt;requiresQuestionAndAnswer&lt;/span&gt;&lt;span class="kwrd"&gt;="false"&lt;/span&gt; &lt;span class="attr"&gt;requiresUniqueEmail&lt;/span&gt;&lt;span class="kwrd"&gt;="true"&lt;/span&gt; &lt;span class="attr"&gt;passwordAttemptWindow&lt;/span&gt;&lt;span class="kwrd"&gt;="5"&lt;/span&gt; &lt;span class="attr"&gt;passwordStrengthRegularExpression&lt;/span&gt;&lt;span class="kwrd"&gt;=""&lt;/span&gt; &lt;span class="attr"&gt;type&lt;/span&gt;&lt;span class="kwrd"&gt;="System.Web.Security.SqlMembershipProvider"&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt; &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;providers&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt; &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;membership&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt; &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;profile&lt;/span&gt; &lt;span class="attr"&gt;defaultProvider&lt;/span&gt;&lt;span class="kwrd"&gt;="SampleAppProfileProvider"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt; &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;providers&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt; &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;add&lt;/span&gt; &lt;span class="attr"&gt;name&lt;/span&gt;&lt;span class="kwrd"&gt;="SampleAppProfileProvider"&lt;/span&gt; &lt;span class="attr"&gt;type&lt;/span&gt;&lt;span class="kwrd"&gt;="System.Web.Profile.SqlProfileProvider"&lt;/span&gt; &lt;span class="attr"&gt;connectionStringName&lt;/span&gt;&lt;span class="kwrd"&gt;="SQLConnString"&lt;/span&gt;&lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt; &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;providers&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt; &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;properties&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt; &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;add&lt;/span&gt; &lt;span class="attr"&gt;name&lt;/span&gt;&lt;span class="kwrd"&gt;="FirstName"&lt;/span&gt; &lt;span class="attr"&gt;type&lt;/span&gt;&lt;span class="kwrd"&gt;="System.String"&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt; &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;add&lt;/span&gt; &lt;span class="attr"&gt;name&lt;/span&gt;&lt;span class="kwrd"&gt;="LastName"&lt;/span&gt; &lt;span class="attr"&gt;type&lt;/span&gt;&lt;span class="kwrd"&gt;="System.String"&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt; &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;add&lt;/span&gt; &lt;span class="attr"&gt;name&lt;/span&gt;&lt;span class="kwrd"&gt;="Email"&lt;/span&gt; &lt;span class="attr"&gt;type&lt;/span&gt;&lt;span class="kwrd"&gt;="System.String"&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt; &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;add&lt;/span&gt; &lt;span class="attr"&gt;name&lt;/span&gt;&lt;span class="kwrd"&gt;="Website"&lt;/span&gt; &lt;span class="attr"&gt;type&lt;/span&gt;&lt;span class="kwrd"&gt;="System.String"&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt; &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;add&lt;/span&gt; &lt;span class="attr"&gt;name&lt;/span&gt;&lt;span class="kwrd"&gt;="Address"&lt;/span&gt; &lt;span class="attr"&gt;type&lt;/span&gt;&lt;span class="kwrd"&gt;="System.String"&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt; &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;add&lt;/span&gt; &lt;span class="attr"&gt;name&lt;/span&gt;&lt;span class="kwrd"&gt;="Note"&lt;/span&gt; &lt;span class="attr"&gt;type&lt;/span&gt;&lt;span class="kwrd"&gt;="System.String"&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt; &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;add&lt;/span&gt; &lt;span class="attr"&gt;name&lt;/span&gt;&lt;span class="kwrd"&gt;="Phone"&lt;/span&gt; &lt;span class="attr"&gt;type&lt;/span&gt;&lt;span class="kwrd"&gt;="System.String"&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt; &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;add&lt;/span&gt; &lt;span class="attr"&gt;name&lt;/span&gt;&lt;span class="kwrd"&gt;="Fax"&lt;/span&gt; &lt;span class="attr"&gt;type&lt;/span&gt;&lt;span class="kwrd"&gt;="System.String"&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt; &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;add&lt;/span&gt; &lt;span class="attr"&gt;name&lt;/span&gt;&lt;span class="kwrd"&gt;="Feature"&lt;/span&gt; &lt;span class="attr"&gt;type&lt;/span&gt;&lt;span class="kwrd"&gt;="System.Int32"&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt; &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;properties&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt; &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;profile&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt; &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;roleManager&lt;/span&gt; &lt;span class="attr"&gt;enabled&lt;/span&gt;&lt;span class="kwrd"&gt;="true"&lt;/span&gt; &lt;span class="attr"&gt;cacheRolesInCookie&lt;/span&gt;&lt;span class="kwrd"&gt;="true"&lt;/span&gt; &lt;span class="attr"&gt;defaultProvider&lt;/span&gt;&lt;span class="kwrd"&gt;="SampleAppSqlRoleProvider"&lt;/span&gt; 
&lt;br&gt;
&lt;span class="attr"&gt;cookieName&lt;/span&gt;&lt;span class="kwrd"&gt;=".ASPXSampleAppROLES"&lt;/span&gt; &lt;span class="attr"&gt;cookiePath&lt;/span&gt;&lt;span class="kwrd"&gt;="/"&lt;/span&gt; &lt;span class="attr"&gt;cookieTimeout&lt;/span&gt;&lt;span class="kwrd"&gt;="30"&lt;/span&gt; &lt;span class="attr"&gt;cookieRequireSSL&lt;/span&gt;&lt;span class="kwrd"&gt;="false"&lt;/span&gt; 
&lt;br&gt;
&lt;span class="attr"&gt;cookieSlidingExpiration&lt;/span&gt;&lt;span class="kwrd"&gt;="true"&lt;/span&gt; &lt;span class="attr"&gt;createPersistentCookie&lt;/span&gt;&lt;span class="kwrd"&gt;="false"&lt;/span&gt; &lt;span class="attr"&gt;cookieProtection&lt;/span&gt;&lt;span class="kwrd"&gt;="All"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt; &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;providers&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt; &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;clear&lt;/span&gt;&lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt; &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;add&lt;/span&gt; &lt;span class="attr"&gt;name&lt;/span&gt;&lt;span class="kwrd"&gt;="SampleAppSqlRoleProvider"&lt;/span&gt; &lt;span class="attr"&gt;type&lt;/span&gt;&lt;span class="kwrd"&gt;="System.Web.Security.SqlRoleProvider, 
&lt;br&gt;
System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"&lt;/span&gt; 
&lt;br&gt;
&lt;span class="attr"&gt;connectionStringName&lt;/span&gt;&lt;span class="kwrd"&gt;="SQLConnString"&lt;/span&gt; &lt;span class="attr"&gt;applicationName&lt;/span&gt;&lt;span class="kwrd"&gt;="SampleAppRoles"&lt;/span&gt;&lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt; &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;providers&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt; &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;roleManager&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt; &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;system.web&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt; &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;configuration&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;style type="text/css"&gt;



.csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, "Courier New", courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}
.csharpcode .lnum { color: #606060; }&lt;/style&gt;
&lt;img width="0" height="0" src="http://sharplife.net/aggbug.ashx?id=6e0d352d-bc23-40fe-af0b-fe4c17115c6c" /&gt;</description>
      <comments>http://sharplife.net/CommentView,guid,6e0d352d-bc23-40fe-af0b-fe4c17115c6c.aspx</comments>
      <category>.NET General</category>
      <category>ASP.NET</category>
      <category>Security</category>
    </item>
    <item>
      <trackback:ping>http://sharplife.net/Trackback.aspx?guid=3817a39c-1f92-43e6-8bb2-db673e2883e3</trackback:ping>
      <pingback:server>http://sharplife.net/pingback.aspx</pingback:server>
      <pingback:target>http://sharplife.net/PermaLink,guid,3817a39c-1f92-43e6-8bb2-db673e2883e3.aspx</pingback:target>
      <dc:creator>Your DisplayName here!</dc:creator>
      <wfw:comment>http://sharplife.net/CommentView,guid,3817a39c-1f92-43e6-8bb2-db673e2883e3.aspx</wfw:comment>
      <wfw:commentRss>http://sharplife.net/SyndicationService.asmx/GetEntryCommentsRss?guid=3817a39c-1f92-43e6-8bb2-db673e2883e3</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">Hi!<br /><br />
It's a long time since I've decided not to post simple day-to-day not useful posts
on Sharplife.NET; meanwhile this damn busy life doesn't allow me to post large technical
posts about .NET, so if you are interested to follow some links and tiny posts you
can follow me on <a href="http://twitter.com/mahdi">Twitter</a>, <a href="http://mahdi.jaiku.com">Jaiku</a>, <a href="http://www.plurk.com/user/mahdi">Plurk</a> or <a href="http://pownce.com/mahdit/">Pownce</a>.<br /><br />
I'll try to write some technical stuff periodically.<br /><br />
Don't forget to take a look at <a href="http://www.tabassom.com">tabassom.com</a> ;-)<br /><p></p><img width="0" height="0" src="http://sharplife.net/aggbug.ashx?id=3817a39c-1f92-43e6-8bb2-db673e2883e3" /></body>
      <title>Follow my tiny posts on twitter too!</title>
      <guid isPermaLink="false">http://sharplife.net/PermaLink,guid,3817a39c-1f92-43e6-8bb2-db673e2883e3.aspx</guid>
      <link>http://sharplife.net/2008/06/25/FollowMyTinyPostsOnTwitterToo.aspx</link>
      <pubDate>Wed, 25 Jun 2008 12:51:54 GMT</pubDate>
      <description>Hi!&lt;br&gt;
&lt;br&gt;
It's a long time since I've decided not to post simple day-to-day not useful posts
on Sharplife.NET; meanwhile this damn busy life doesn't allow me to post large technical
posts about .NET, so if you are interested to follow some links and tiny posts you
can follow me on &lt;a href="http://twitter.com/mahdi"&gt;Twitter&lt;/a&gt;, &lt;a href="http://mahdi.jaiku.com"&gt;Jaiku&lt;/a&gt;, &lt;a href="http://www.plurk.com/user/mahdi"&gt;Plurk&lt;/a&gt; or &lt;a href="http://pownce.com/mahdit/"&gt;Pownce&lt;/a&gt;.&lt;br&gt;
&lt;br&gt;
I'll try to write some technical stuff periodically.&lt;br&gt;
&lt;br&gt;
Don't forget to take a look at &lt;a href="http://www.tabassom.com"&gt;tabassom.com&lt;/a&gt; ;-)&lt;br&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://sharplife.net/aggbug.ashx?id=3817a39c-1f92-43e6-8bb2-db673e2883e3" /&gt;</description>
      <comments>http://sharplife.net/CommentView,guid,3817a39c-1f92-43e6-8bb2-db673e2883e3.aspx</comments>
      <category>General</category>
      <category>Personal</category>
      <category>SharpLife.NET</category>
    </item>
    <item>
      <trackback:ping>http://sharplife.net/Trackback.aspx?guid=07b35887-12d5-4df8-8879-014f221c92a7</trackback:ping>
      <pingback:server>http://sharplife.net/pingback.aspx</pingback:server>
      <pingback:target>http://sharplife.net/PermaLink,guid,07b35887-12d5-4df8-8879-014f221c92a7.aspx</pingback:target>
      <dc:creator>Your DisplayName here!</dc:creator>
      <wfw:comment>http://sharplife.net/CommentView,guid,07b35887-12d5-4df8-8879-014f221c92a7.aspx</wfw:comment>
      <wfw:commentRss>http://sharplife.net/SyndicationService.asmx/GetEntryCommentsRss?guid=07b35887-12d5-4df8-8879-014f221c92a7</wfw:commentRss>
      <slash:comments>1</slash:comments>
      <body xmlns="http://www.w3.org/1999/xhtml">Iranian <a href="http://www.arianmusic.com">Arian
Music Band</a> and famous Irish singer, <a href="http://www.cdeb.com">Chris De Burgh</a>,
are working on a joint song. According to Mohsen Rajabpour, managing director of Arian
Band "A Medlody for Peace" is the name of this song and with the theme of love and
respect to human beliefs, and soon will be presented inside and outside the<font style="font-size: 9pt;"><font face="Tahoma" size="2"><span dir="ltr"> country.<br /><br />
This new song will be shipped with 4th Arian album in the next few months.<br /></span></font></font><p></p><img width="0" height="0" src="http://sharplife.net/aggbug.ashx?id=07b35887-12d5-4df8-8879-014f221c92a7" /></body>
      <title>Joint Song by Arian Music Band and Chris De Burgh</title>
      <guid isPermaLink="false">http://sharplife.net/PermaLink,guid,07b35887-12d5-4df8-8879-014f221c92a7.aspx</guid>
      <link>http://sharplife.net/2007/11/30/JointSongByArianMusicBandAndChrisDeBurgh.aspx</link>
      <pubDate>Fri, 30 Nov 2007 12:44:31 GMT</pubDate>
      <description>Iranian &lt;a href="http://www.arianmusic.com"&gt;Arian Music Band&lt;/a&gt; and famous Irish
singer, &lt;a href="http://www.cdeb.com"&gt;Chris De Burgh&lt;/a&gt;, are working on a joint song.
According to Mohsen Rajabpour, managing director of Arian Band "A Medlody for Peace"
is the name of this song and with the theme of love and respect to human beliefs,
and soon will be presented inside and outside the&lt;font style="font-size: 9pt;"&gt;&lt;font face="Tahoma" size="2"&gt;&lt;span dir="ltr"&gt; country.&lt;br&gt;
&lt;br&gt;
This new song will be shipped with 4th Arian album in the next few months.&lt;br&gt;
&lt;/span&gt;&lt;/font&gt;&lt;/font&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://sharplife.net/aggbug.ashx?id=07b35887-12d5-4df8-8879-014f221c92a7" /&gt;</description>
      <comments>http://sharplife.net/CommentView,guid,07b35887-12d5-4df8-8879-014f221c92a7.aspx</comments>
      <category>Iran</category>
      <category>Music</category>
    </item>
    <item>
      <trackback:ping>http://sharplife.net/Trackback.aspx?guid=7d2db63c-4824-4312-9187-0060770d40e6</trackback:ping>
      <pingback:server>http://sharplife.net/pingback.aspx</pingback:server>
      <pingback:target>http://sharplife.net/PermaLink,guid,7d2db63c-4824-4312-9187-0060770d40e6.aspx</pingback:target>
      <dc:creator>Your DisplayName here!</dc:creator>
      <wfw:comment>http://sharplife.net/CommentView,guid,7d2db63c-4824-4312-9187-0060770d40e6.aspx</wfw:comment>
      <wfw:commentRss>http://sharplife.net/SyndicationService.asmx/GetEntryCommentsRss?guid=7d2db63c-4824-4312-9187-0060770d40e6</wfw:commentRss>
      <slash:comments>3</slash:comments>
      <body xmlns="http://www.w3.org/1999/xhtml">A few days ago, I found some free time
to study some articles and documentation about <a href="http://www.nettiers.com/">.netTiers</a>.
I tested it on some of my previous projects and result was great. Professional software
architecture in generated code, smart code generation based on database tables and
columns, ease of use, etc. are amazing features of this open source template for <a href="http://www.codesmithtools.com/">CodeSmith</a>.<br /><br />
.netTiers official website has a <a href="http://docs.nettiers.com/">documenation</a> you
can read online but how I searched, I couldn't find any offline version of this documentation
to download. So I saved all documentation sections as HTML files and also created
PDF version of each page. You can download this documentation in a compress file <a temp_href="http://sharplife.net/Files/netTiers 2.2.0 Documentation - 2 Nov 2007.rar" href="http://sharplife.net/Files/netTiers%202.2.0%20Documentation%20-%202%20Nov%202007.rar">here</a> (3.7
MB).<br /><p></p><img width="0" height="0" src="http://sharplife.net/aggbug.ashx?id=7d2db63c-4824-4312-9187-0060770d40e6" /></body>
      <title>Download .netTiers Documentation</title>
      <guid isPermaLink="false">http://sharplife.net/PermaLink,guid,7d2db63c-4824-4312-9187-0060770d40e6.aspx</guid>
      <link>http://sharplife.net/2007/11/05/DownloadNetTiersDocumentation.aspx</link>
      <pubDate>Mon, 05 Nov 2007 10:18:19 GMT</pubDate>
      <description>A few days ago, I found some free time to study some articles and documentation about &lt;a href="http://www.nettiers.com/"&gt;.netTiers&lt;/a&gt;.
I tested it on some of my previous projects and result was great. Professional software
architecture in generated code, smart code generation based on database tables and
columns, ease of use, etc. are amazing features of this open source template for &lt;a href="http://www.codesmithtools.com/"&gt;CodeSmith&lt;/a&gt;.&lt;br&gt;
&lt;br&gt;
.netTiers official website has a &lt;a href="http://docs.nettiers.com/"&gt;documenation&lt;/a&gt; you
can read online but how I searched, I couldn't find any offline version of this documentation
to download. So I saved all documentation sections as HTML files and also created
PDF version of each page. You can download this documentation in a compress file &lt;a temp_href="http://sharplife.net/Files/netTiers 2.2.0 Documentation - 2 Nov 2007.rar" href="http://sharplife.net/Files/netTiers%202.2.0%20Documentation%20-%202%20Nov%202007.rar"&gt;here&lt;/a&gt; (3.7
MB).&lt;br&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://sharplife.net/aggbug.ashx?id=7d2db63c-4824-4312-9187-0060770d40e6" /&gt;</description>
      <comments>http://sharplife.net/CommentView,guid,7d2db63c-4824-4312-9187-0060770d40e6.aspx</comments>
      <category>.NET General</category>
      <category>C#</category>
      <category>Download</category>
      <category>Tools</category>
    </item>
    <item>
      <trackback:ping>http://sharplife.net/Trackback.aspx?guid=a0d27f55-b33f-40d9-9c73-fd86f2871b68</trackback:ping>
      <pingback:server>http://sharplife.net/pingback.aspx</pingback:server>
      <pingback:target>http://sharplife.net/PermaLink,guid,a0d27f55-b33f-40d9-9c73-fd86f2871b68.aspx</pingback:target>
      <dc:creator>Your DisplayName here!</dc:creator>
      <wfw:comment>http://sharplife.net/CommentView,guid,a0d27f55-b33f-40d9-9c73-fd86f2871b68.aspx</wfw:comment>
      <wfw:commentRss>http://sharplife.net/SyndicationService.asmx/GetEntryCommentsRss?guid=a0d27f55-b33f-40d9-9c73-fd86f2871b68</wfw:commentRss>
      <slash:comments>19</slash:comments>
      <body xmlns="http://www.w3.org/1999/xhtml">I have 9 Jaiku invitations left. Everyone
who wants to receive one, please leave his/her name and email address in comment of
THIS post.<br /><br />
Forget to say I'm at <a href="http://mahdi.jaiku.com">mahdi.jaiku.com</a>!<br /><br /><b><br /><font color="#ff0000">UPDATE:</font></b>I sent all 9 invitations and I don't have
anymore left.<br /><p></p><img width="0" height="0" src="http://sharplife.net/aggbug.ashx?id=a0d27f55-b33f-40d9-9c73-fd86f2871b68" /></body>
      <title>Jaiku Invitations</title>
      <guid isPermaLink="false">http://sharplife.net/PermaLink,guid,a0d27f55-b33f-40d9-9c73-fd86f2871b68.aspx</guid>
      <link>http://sharplife.net/2007/10/31/JaikuInvitations.aspx</link>
      <pubDate>Wed, 31 Oct 2007 13:48:02 GMT</pubDate>
      <description>I have 9 Jaiku invitations left. Everyone who wants to receive one, please leave his/her name and email address in comment of THIS post.&lt;br&gt;
&lt;br&gt;
Forget to say I'm at &lt;a href="http://mahdi.jaiku.com"&gt;mahdi.jaiku.com&lt;/a&gt;!&lt;br&gt;
&lt;br&gt;
&lt;b&gt;
&lt;br&gt;
&lt;font color="#ff0000"&gt;UPDATE:&lt;/font&gt; &lt;/b&gt;I sent all 9 invitations and I don't have
anymore left.&lt;br&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://sharplife.net/aggbug.ashx?id=a0d27f55-b33f-40d9-9c73-fd86f2871b68" /&gt;</description>
      <comments>http://sharplife.net/CommentView,guid,a0d27f55-b33f-40d9-9c73-fd86f2871b68.aspx</comments>
      <category>General</category>
    </item>
    <item>
      <trackback:ping>http://sharplife.net/Trackback.aspx?guid=178a128c-dfe4-4a65-bd62-c2b32cde2bf5</trackback:ping>
      <pingback:server>http://sharplife.net/pingback.aspx</pingback:server>
      <pingback:target>http://sharplife.net/PermaLink,guid,178a128c-dfe4-4a65-bd62-c2b32cde2bf5.aspx</pingback:target>
      <dc:creator>Your DisplayName here!</dc:creator>
      <wfw:comment>http://sharplife.net/CommentView,guid,178a128c-dfe4-4a65-bd62-c2b32cde2bf5.aspx</wfw:comment>
      <wfw:commentRss>http://sharplife.net/SyndicationService.asmx/GetEntryCommentsRss?guid=178a128c-dfe4-4a65-bd62-c2b32cde2bf5</wfw:commentRss>
      <slash:comments>5</slash:comments>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
Recently (and specially after Web 2.0 revolution) many websites started to use more
complicated CAPTCHA solutions on their websites in order to prevent spam and bot attacks.
There are many free solutions and tools for users and developers to implement CAPTCHA
technology in their applications. There are also many ASP.NET controls and components
for this approach but many of them are so simple to hijack or don't offer features
that these days we see on professional websites (some features like reload function,
voice, etc.). 
<br /></p>
        <p>
A few days ago I found a link to <a href="http://recaptcha.net/" target="_blank">reCAPTCHA</a> on
Yahoo!. reCAPTCHA is a free (but professional) tool for basic users and also developers.
To use this service you should first signup, receive an API Key for your website (you
can receive as many as you need) and use one of easy-to-install plugnins provided.
And good news for ASP.NET developers is that you can <a href="http://recaptcha.googlecode.com/files/recaptcha-dotnet.zip">download</a><script type="text/javascript" src="http://api.recaptcha.net/js/recaptcha_ajax.js"></script>
and use a server side control and enjoy reCAPTCHA with two lines of code! The API
Key guarantees your website and prevents attackers collect answers from visitors and
use them. There are three different themes to choose. 
<br /></p>
        <p>
If you want to use reCAPTCHA on a Web 2.0 website you can use AJAX API just by adding
this line of code to you html or webform file: I strongly suggest you download and
test this tool in your web applications.
</p>
        <p>
          <br />
        </p>
        <p>
          <strong>Quick Links:</strong>
          <a href="http://recaptcha.net/" target="_blank">reCAPTCHA.net</a> | <a href="http://recaptcha.net/learnmore.html" target="_blank">Live
Demo</a> | <a href="http://recaptcha.net/whyrecaptcha.html" target="_blank">Why reCAPTCHA</a> | <a href="https://admin.recaptcha.net/recaptcha/createsite/" target="_blank">Signup</a> | <a href="http://recaptcha.googlecode.com/files/recaptcha-dotnet.zip">reCAPTCHA.NET
Control</a> | <a href="http://mailhide.recaptcha.net/" target="_blank">Email Protection
With reCAPTCHA</a></p>
        <img width="0" height="0" src="http://sharplife.net/aggbug.ashx?id=178a128c-dfe4-4a65-bd62-c2b32cde2bf5" />
      </body>
      <title>reCAPTCHA: Free CAPTCHA Solution For Your Website</title>
      <guid isPermaLink="false">http://sharplife.net/PermaLink,guid,178a128c-dfe4-4a65-bd62-c2b32cde2bf5.aspx</guid>
      <link>http://sharplife.net/2007/10/15/reCAPTCHAFreeCAPTCHASolutionForYourWebsite.aspx</link>
      <pubDate>Mon, 15 Oct 2007 12:07:04 GMT</pubDate>
      <description>&lt;p&gt;
Recently (and specially after Web 2.0 revolution) many websites started to use more
complicated CAPTCHA solutions on their websites in order to prevent spam and bot attacks.
There are many free solutions and tools for users and developers to implement CAPTCHA
technology in their applications. There are also many ASP.NET controls and components
for this approach but many of them are so simple to hijack or don't offer features
that these days we see on professional websites (some features like reload function,
voice, etc.). 
&lt;br&gt;
&lt;/p&gt;
&lt;p&gt;
A few days ago I found a link to &lt;a href="http://recaptcha.net/" target="_blank"&gt;reCAPTCHA&lt;/a&gt; on
Yahoo!. reCAPTCHA is a free (but professional) tool for basic users and also developers.
To use this service you should first signup, receive an API Key for your website (you
can receive as many as you need) and use one of easy-to-install plugnins provided.
And good news for ASP.NET developers is that you can &lt;a href="http://recaptcha.googlecode.com/files/recaptcha-dotnet.zip"&gt;download&lt;/a&gt;&lt;script type="text/javascript" src="http://api.recaptcha.net/js/recaptcha_ajax.js"&gt;&lt;/script&gt;
and use a server side control and enjoy reCAPTCHA with two lines of code! The API
Key guarantees your website and prevents attackers collect answers from visitors and
use them. There are three different themes to choose. 
&lt;br&gt;
&lt;/p&gt;
&lt;p&gt;
If you want to use reCAPTCHA on a Web 2.0 website you can use AJAX API just by adding
this line of code to you html or webform file: I strongly suggest you download and
test this tool in your web applications.
&lt;/p&gt;
&lt;p&gt;
&lt;br&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;Quick Links:&lt;/strong&gt; &lt;a href="http://recaptcha.net/" target="_blank"&gt;reCAPTCHA.net&lt;/a&gt; | &lt;a href="http://recaptcha.net/learnmore.html" target="_blank"&gt;Live
Demo&lt;/a&gt; | &lt;a href="http://recaptcha.net/whyrecaptcha.html" target="_blank"&gt;Why reCAPTCHA&lt;/a&gt; | &lt;a href="https://admin.recaptcha.net/recaptcha/createsite/" target="_blank"&gt;Signup&lt;/a&gt; | &lt;a href="http://recaptcha.googlecode.com/files/recaptcha-dotnet.zip"&gt;reCAPTCHA.NET
Control&lt;/a&gt; | &lt;a href="http://mailhide.recaptcha.net/" target="_blank"&gt;Email Protection
With reCAPTCHA&lt;/a&gt; 
&lt;/p&gt;
&lt;img width="0" height="0" src="http://sharplife.net/aggbug.ashx?id=178a128c-dfe4-4a65-bd62-c2b32cde2bf5" /&gt;</description>
      <comments>http://sharplife.net/CommentView,guid,178a128c-dfe4-4a65-bd62-c2b32cde2bf5.aspx</comments>
      <category>.NET General</category>
      <category>AJAX</category>
      <category>Security</category>
      <category>Web</category>
      <category>Web 2.0</category>
      <category>Web Services</category>
    </item>
    <item>
      <trackback:ping>http://sharplife.net/Trackback.aspx?guid=6a7f644e-271e-4742-8897-d3745c579303</trackback:ping>
      <pingback:server>http://sharplife.net/pingback.aspx</pingback:server>
      <pingback:target>http://sharplife.net/PermaLink,guid,6a7f644e-271e-4742-8897-d3745c579303.aspx</pingback:target>
      <dc:creator>Your DisplayName here!</dc:creator>
      <wfw:comment>http://sharplife.net/CommentView,guid,6a7f644e-271e-4742-8897-d3745c579303.aspx</wfw:comment>
      <wfw:commentRss>http://sharplife.net/SyndicationService.asmx/GetEntryCommentsRss?guid=6a7f644e-271e-4742-8897-d3745c579303</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <a href="http://weblogs.asp.net/omarzabir">Omar
Al Zabir</a> has recently <a href="http://weblogs.asp.net/omarzabir/archive/2007/10/02/10-cool-web-development-related-articles-in-2007.aspx">listed</a> 10
cool articles about ASP.NET, AJAX, ... which he has published this year. From my personal
view these articles are interesting:<br /><br /><ul><li><a href="http://msmvps.com/blogs/omar/archive/2007/03/25/cleanup-inactive-anonymous-users-from-asp-net-membership-tables.aspx" mce_href="http://msmvps.com/blogs/omar/archive/2007/03/25/cleanup-inactive-anonymous-users-from-asp-net-membership-tables.aspx">Cleanup
inactive anonymous users from ASP.NET Membership Tables</a></li><li><a href="http://msmvps.com/blogs/omar/archive/2007/03/24/prevent-denial-of-service-dos-attacks-in-your-web-application.aspx" mce_href="http://msmvps.com/blogs/omar/archive/2007/03/24/prevent-denial-of-service-dos-attacks-in-your-web-application.aspx">Prevent
Denial of Service (DOS) attacks in your web application</a></li><li><a href="http://www.codeproject.com/install/13disasters.asp" mce_href="http://www.codeproject.com/install/13disasters.asp">13
disasters for production website and their solutions</a></li></ul><p></p><img width="0" height="0" src="http://sharplife.net/aggbug.ashx?id=6a7f644e-271e-4742-8897-d3745c579303" /></body>
      <title>Some ASP.NET Articles</title>
      <guid isPermaLink="false">http://sharplife.net/PermaLink,guid,6a7f644e-271e-4742-8897-d3745c579303.aspx</guid>
      <link>http://sharplife.net/2007/10/03/SomeASPNETArticles.aspx</link>
      <pubDate>Wed, 03 Oct 2007 10:37:27 GMT</pubDate>
      <description>&lt;a href="http://weblogs.asp.net/omarzabir"&gt;Omar Al Zabir&lt;/a&gt; has recently &lt;a href="http://weblogs.asp.net/omarzabir/archive/2007/10/02/10-cool-web-development-related-articles-in-2007.aspx"&gt;listed&lt;/a&gt; 10
cool articles about ASP.NET, AJAX, ... which he has published this year. From my personal
view these articles are interesting:&lt;br&gt;
&lt;br&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;a href="http://msmvps.com/blogs/omar/archive/2007/03/25/cleanup-inactive-anonymous-users-from-asp-net-membership-tables.aspx" mce_href="http://msmvps.com/blogs/omar/archive/2007/03/25/cleanup-inactive-anonymous-users-from-asp-net-membership-tables.aspx"&gt;Cleanup
inactive anonymous users from ASP.NET Membership Tables&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href="http://msmvps.com/blogs/omar/archive/2007/03/24/prevent-denial-of-service-dos-attacks-in-your-web-application.aspx" mce_href="http://msmvps.com/blogs/omar/archive/2007/03/24/prevent-denial-of-service-dos-attacks-in-your-web-application.aspx"&gt;Prevent
Denial of Service (DOS) attacks in your web application&lt;/a&gt; 
&lt;/li&gt;
&lt;li&gt;
&lt;a href="http://www.codeproject.com/install/13disasters.asp" mce_href="http://www.codeproject.com/install/13disasters.asp"&gt;13
disasters for production website and their solutions&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://sharplife.net/aggbug.ashx?id=6a7f644e-271e-4742-8897-d3745c579303" /&gt;</description>
      <comments>http://sharplife.net/CommentView,guid,6a7f644e-271e-4742-8897-d3745c579303.aspx</comments>
      <category>.NET General</category>
      <category>AJAX</category>
      <category>ASP.NET</category>
      <category>Security</category>
      <category>Web</category>
      <category>Web 2.0</category>
      <category>Web Development</category>
    </item>
    <item>
      <trackback:ping>http://sharplife.net/Trackback.aspx?guid=65fabca0-f961-44a8-a2c7-29466920ada3</trackback:ping>
      <pingback:server>http://sharplife.net/pingback.aspx</pingback:server>
      <pingback:target>http://sharplife.net/PermaLink,guid,65fabca0-f961-44a8-a2c7-29466920ada3.aspx</pingback:target>
      <dc:creator>Your DisplayName here!</dc:creator>
      <wfw:comment>http://sharplife.net/CommentView,guid,65fabca0-f961-44a8-a2c7-29466920ada3.aspx</wfw:comment>
      <wfw:commentRss>http://sharplife.net/SyndicationService.asmx/GetEntryCommentsRss?guid=65fabca0-f961-44a8-a2c7-29466920ada3</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <a href="http://www.dotnetblogengine.net">BlogEngine.NET
1.2</a> released. As you may know it's a free blog tool written in C# and ASP.NET
2.0 and they added many features to this release which you can see <a href="http://www.dotnetblogengine.net/post/Release-of-BlogEngineNET-12.aspx">here</a>.<br /><br />
In this release BlogEngine supports 26 language packages including Persian language
which I had translated its resources for them.<br /><br />
Although, I don't use BlogEngine at present (and I'm using dasBlog), I'm thinking
about migration to BlogEngine because of more features. In this version BlogEngline
also supports <a href="http://blogml.org/">BlogML</a> for import/export (Thanks <a href="http://nayyeri.net">Keyvan</a>!).<br /><br />
More on BlogEngline.NET: <a href="http://www.codeplex.com/blogengine/Release/ProjectReleases.aspx">Download
Latest Release</a> | <a href="http://www.dotnetblogengine.net/wiki/">Documents</a> | <a href="http://www.discountasp.net/go/go.aspx?i=3884">Hosters
that offer BlogEngine.NET</a> | <a href="http://www.dotnetblogengine.net/page/features.aspx">Complete
Features List</a> | <a href="http://www.dotnetblogengine.net/page/videos.aspx">Some
Videos</a>.<br /><p></p><img width="0" height="0" src="http://sharplife.net/aggbug.ashx?id=65fabca0-f961-44a8-a2c7-29466920ada3" /></body>
      <title>BlogEngine.NET 1.2 Released</title>
      <guid isPermaLink="false">http://sharplife.net/PermaLink,guid,65fabca0-f961-44a8-a2c7-29466920ada3.aspx</guid>
      <link>http://sharplife.net/2007/10/01/BlogEngineNET12Released.aspx</link>
      <pubDate>Mon, 01 Oct 2007 10:24:27 GMT</pubDate>
      <description>&lt;a href="http://www.dotnetblogengine.net"&gt;BlogEngine.NET 1.2&lt;/a&gt; released. As you
may know it's a free blog tool written in C# and ASP.NET 2.0 and they added many features
to this release which you can see &lt;a href="http://www.dotnetblogengine.net/post/Release-of-BlogEngineNET-12.aspx"&gt;here&lt;/a&gt;.&lt;br&gt;
&lt;br&gt;
In this release BlogEngine supports 26 language packages including Persian language
which I had translated its resources for them.&lt;br&gt;
&lt;br&gt;
Although, I don't use BlogEngine at present (and I'm using dasBlog), I'm thinking
about migration to BlogEngine because of more features. In this version BlogEngline
also supports &lt;a href="http://blogml.org/"&gt;BlogML&lt;/a&gt; for import/export (Thanks &lt;a href="http://nayyeri.net"&gt;Keyvan&lt;/a&gt;!).&lt;br&gt;
&lt;br&gt;
More on BlogEngline.NET: &lt;a href="http://www.codeplex.com/blogengine/Release/ProjectReleases.aspx"&gt;Download
Latest Release&lt;/a&gt; | &lt;a href="http://www.dotnetblogengine.net/wiki/"&gt;Documents&lt;/a&gt; | &lt;a href="http://www.discountasp.net/go/go.aspx?i=3884"&gt;Hosters
that offer BlogEngine.NET&lt;/a&gt; | &lt;a href="http://www.dotnetblogengine.net/page/features.aspx"&gt;Complete
Features List&lt;/a&gt; | &lt;a href="http://www.dotnetblogengine.net/page/videos.aspx"&gt;Some
Videos&lt;/a&gt;.&lt;br&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://sharplife.net/aggbug.ashx?id=65fabca0-f961-44a8-a2c7-29466920ada3" /&gt;</description>
      <comments>http://sharplife.net/CommentView,guid,65fabca0-f961-44a8-a2c7-29466920ada3.aspx</comments>
      <category>.NET General</category>
      <category>ASP.NET</category>
      <category>Download</category>
    </item>
    <item>
      <trackback:ping>http://sharplife.net/Trackback.aspx?guid=dc485144-79d5-462c-8f4b-d997c3b7a174</trackback:ping>
      <pingback:server>http://sharplife.net/pingback.aspx</pingback:server>
      <pingback:target>http://sharplife.net/PermaLink,guid,dc485144-79d5-462c-8f4b-d997c3b7a174.aspx</pingback:target>
      <dc:creator>Your DisplayName here!</dc:creator>
      <wfw:comment>http://sharplife.net/CommentView,guid,dc485144-79d5-462c-8f4b-d997c3b7a174.aspx</wfw:comment>
      <wfw:commentRss>http://sharplife.net/SyndicationService.asmx/GetEntryCommentsRss?guid=dc485144-79d5-462c-8f4b-d997c3b7a174</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
Sometimes it happend that you want to search for something on the web and don't find
your desired results in your favorite search engine, you may decide to try another
search engine to find the answer. Here's a better and easier way for such times!
</p>
        <p>
          <a href="http://www.metacrawler.com/">metacrawler.com</a> is a website which enjoys
metasearch technology to gather best results from various search engines including
Google, Yahoo! Search, MSN Search, Ask Jeeves, About, MIVA, LookSmart and more.
</p>
        <p>
You can see all results from all search engines together or select a search engine
and see its results only.
</p>
        <img width="0" height="0" src="http://sharplife.net/aggbug.ashx?id=dc485144-79d5-462c-8f4b-d997c3b7a174" />
      </body>
      <title>metacrawler.com: Search The Search Engines!</title>
      <guid isPermaLink="false">http://sharplife.net/PermaLink,guid,dc485144-79d5-462c-8f4b-d997c3b7a174.aspx</guid>
      <link>http://sharplife.net/2007/09/27/metacrawlercomSearchTheSearchEngines.aspx</link>
      <pubDate>Thu, 27 Sep 2007 08:05:25 GMT</pubDate>
      <description>&lt;p&gt;
Sometimes it happend that you want to search for something on the web and don't find
your desired results in your favorite search engine, you may decide to try another
search engine to find the&amp;nbsp;answer. Here's a better and easier way for such times!
&lt;/p&gt;
&lt;p&gt;
&lt;a href="http://www.metacrawler.com/"&gt;metacrawler.com&lt;/a&gt; is a website which enjoys
metasearch technology to gather best results from various search engines including
Google, Yahoo! Search, MSN Search, Ask Jeeves, About, MIVA, LookSmart and more.
&lt;/p&gt;
&lt;p&gt;
You can see all results from all search engines together or select a search engine
and see its results only.
&lt;/p&gt;
&lt;img width="0" height="0" src="http://sharplife.net/aggbug.ashx?id=dc485144-79d5-462c-8f4b-d997c3b7a174" /&gt;</description>
      <comments>http://sharplife.net/CommentView,guid,dc485144-79d5-462c-8f4b-d997c3b7a174.aspx</comments>
      <category>Web</category>
    </item>
  </channel>
</rss>