آموزش رمز نگاری کانکشن استرینگ به صورت خود کار در Asp.Net
0 0

آموزش رمز نگاری کانکشن استرینگ به صورت خود کار در Asp.Net


آموزش رمز نگاری کانکشن استرینگ به صورت خود کار در Asp.Net

در این پست قصد داریم تا نحوه رمز نگاری رشته اتصال به دیتابیس را توضیح دهیم.

چرا باید کانکشن استرینگ را رمز نگاری کنیم؟

جهت بالا بردن امنیت سایت از دست هکرها، چرا که اگر کسی نام دیتابیس و نام کاربری متصل به دیتابیس را بداند با روش های می توان دیتابیس وب سایت را پاک کرد.

روشی که ما توضیح می دهیم به صورت خودکار عمل رمز نگاری و رمز گشایی را انجام می دهد اما روش های دیگر نیز وجود دارد.

برای رمز نگاری کانکشن استرینگ در Asp.Net ابتدا Package Manager Console را از منوی tools و  NuGet Package Manager باز کنید و دستور Install-Package WebActivatorEx را وارد کنید و کلید اینتر را فشار دهید. تا توجه داشته باشید که باید به اینترنت متصل باشید.

سپس یک کلاس با نام AutoEncryptConnectionStrings ایجاد کنید و کدهای زیر را داخل آن کپی کنید.

using System.Configuration;
using System.Web;
using System.Web.Configuration;

[assembly: WebActivatorEx.PostApplicationStartMethod(typeof(AutoEncryptConnectionStrings), "AutoEncrypt")]

public class AutoEncryptConnectionStrings
{
    public static void AutoEncrypt()
    {
        // don't encrypt if debug=true in the web.config
        if (HttpContext.Current.IsDebuggingEnabled) return;

        var configSection = GetConfigurationSection();

        if (configSection.SectionInformation.IsProtected) return;

        configSection.SectionInformation.ProtectSection("DataProtectionConfigurationProvider");
        configSection.SectionInformation.ForceSave = true;

        configSection.CurrentConfiguration.Save();
    }

    public static void Decrypt()
    {
        var configSection = GetConfigurationSection();

        if (!configSection.SectionInformation.IsProtected) return;

        configSection.SectionInformation.UnprotectSection();
        configSection.SectionInformation.ForceSave = true;

        configSection.CurrentConfiguration.Save();
    }

    private static ConfigurationSection GetConfigurationSection()
    {
        Configuration configuration = WebConfigurationManager.OpenWebConfiguration("~");

        var configSection = configuration.GetSection("connectionStrings");
        if (configSection.ElementInformation.IsLocked || configSection.SectionInformation.IsLocked) return null;

        return configSection;
    }
}

حال به فایل Web.Config بروید debug را از true به fasle تغییر دهید

<compilation debug="false" targetFramework="4.5.1">

نکته:

هنگامی که وب سایت خود را در سرور واقعی قرار می دهید debug را از true به fasle تغییر دهید تا خطاها نمایش داده نشود.

اگر وب سایت خود را اجرا کنید و به فایل web.config بروید خواهید دید که رشته اتصال رمز نگاری شده است.

دانلود

نویسنده حسین فتحی
گروه مطلب Asp.Net
نوع مطلب سورس کد و آموزش
تاریخ انتشار ۲۶ آذر ۱۳۹۳
منبع ایران گنج
تعداد نظرات ۰
قیمت کاربران VIP
توضیح توجه:
  • زمانی که روی لینک دانلود کلیک می کنید لینک دانلود به مدت 24 ساعت معتبر خواهد بود
  • لینک های دانلود دوره های آموزشی تا پایان دوره قابل دانلود می باشد.
  • برای خارج کردن فایل ها از حالت فشرده از ورژن جدید نرم افزار winrar استفاده کنید.
  • برای خارج کردن فایل ها از حالت فشرده لینک های دانلودی که چندین قسمت می باشند فقط قسمت اول را از حالت فشرده خارج کنید.
  • لطفا توضیحات نوشته شده برای مطالب را با دقت بخوانید.
  • برای نمایش فیلم ها می توانید از نرم افزار هایی مانند Km Player , VLC Player یا Media Player Classic استفاده کنید.

نظر / سوال

Captcha

این صفحه را می‌پسندم