1. مهمان گرامی، جهت ارسال پست، دانلود و سایر امکانات ویژه کاربران عضو، ثبت نام کنید.
    بستن اطلاعیه

آموزش پیاده سازی امنیت در سایت – ASP.NET

شروع موضوع توسط AftabGardoon ‏8/2/19 در انجمن ASP.NET

Tags:
  1. مدیر بازنشسته☕

    تاریخ عضویت:
    ‏15/8/17
    ارسال ها:
    5,336
    تشکر شده:
    42,669
    امتیاز دستاورد:
    113
    User های اپلیکیشن توسط برنامه نویس ایجاد می شوند. شاید لازم باشد به بازدید کننده ی سایت اجازه دهید یک حساب کاربری برای خود ایجاد کند. برای این منظور کافی است یک لینک زیر کنترل LoginView درج کنید که در صورت کلیک کاربر روی آن به صفحه ی CreateAccount.aspx لینک می شود.


    یک کنترل CreateUserWizard به صفحه ی create account اضافه کنید. Property (خاصیت) ContinueDestinationPageUrl این کنترل را روی Welcome.aspx تنظیم کنید.

    [​IMG]
     
  2. مدیر بازنشسته☕

    تاریخ عضویت:
    ‏15/8/17
    ارسال ها:
    5,336
    تشکر شده:
    42,669
    امتیاز دستاورد:
    113
    صفحه ی Login را ایجاد کنید. یک کنترل login روی صفحه قرار دهید. کنترل LoginStatus به صورت خودکار به Login.aspx لینک می شود. جهت تغییر دادن این حالت پیش فرض، لازم است اصلاحات زیر را در فایل web.config اعمال کنید. برای مثال چنانچه می خواهید صفحه ی login خود را signup.aspx نام گذاری کنید، باید کدهای زیر را به بخش < authentication > فایل web.config اضافه کنید:

    کد:
    < configuration >
      < system.web >
        < authentication mode="Forms" >
          < forms loginUrl ="signup.aspx" defaultUrl = "“Welcome.aspx”" / >
        < /authentication >
      < /system.web >
    < /configuration >
     
  3. مدیر بازنشسته☕

    تاریخ عضویت:
    ‏15/8/17
    ارسال ها:
    5,336
    تشکر شده:
    42,669
    امتیاز دستاورد:
    113
    گاهی کاربرها رمز عبور خود را فراموش می کنند. کنترل PasswordRecovery به کاربر امکان می دهد به حساب کاربری خود دسترسی پیدا کند.


    ابتدا روی کنترل Login کلیک کنید، سپس smart tag آن را باز کرده و گزینه ی 'Convert to Template' را انتخاب کنید. با دستکاری رابط کاربری (UI)، به صورت سفارشی یک کنترل hyperlink زیر دکمه ی login قرار دهید که باید در صورت کلیک کاربر روی آن به PassWordRecovery.aspx لینک شود.

    [​IMG]
     
  4. مدیر بازنشسته☕

    تاریخ عضویت:
    ‏15/8/17
    ارسال ها:
    5,336
    تشکر شده:
    42,669
    امتیاز دستاورد:
    113
    حال یک کنترل PasswordRecovery روی صفحه password recovery قرار دهید. این کنترل برای ارسال رمز عبور به کاربر نیاز به یک email server دارد.


    [​IMG]
    (در صفحه ی Welcome.aspx) یک لینک به ChangePassword.aspx در template LoggedIn کنترلLoginView اضافه کنید.


    [​IMG]
    یک کنترل ChangePassword روی صفحه ی change password قرار دهید. این کنترل همان طور که در تصویر زیر مشاهده می کنید دارای دو view می باشد:


    [​IMG]
    اکنون برنامه را اجرا کرده و در این حین عملیات امنیتی که صورت می گیرد مشاهده کنید.
     
  5. مدیر بازنشسته☕

    تاریخ عضویت:
    ‏15/8/17
    ارسال ها:
    5,336
    تشکر شده:
    42,669
    امتیاز دستاورد:
    113
    به منظور ایجاد role، به Web Application Administration Tools بازگشته و روی تب Security کلیک کنید. با کلیک روی 'Create Roles'، تعدادی role برای application خود ایجاد کنید.


    [​IMG]
    روی لینک 'Manage Users' کلیک کرده و role ها را به user های مربوطه تخصیص دهید.


    [​IMG]
     
  6. مدیر بازنشسته☕

    تاریخ عضویت:
    ‏15/8/17
    ارسال ها:
    5,336
    تشکر شده:
    42,669
    امتیاز دستاورد:
    113
    IIS Authentication (اعتبار سنجی و سرویس های اطلاعات اینترنتی): SSL
    SSL سرنام Secure Socket Layer می باشد. SSL پروتکلی است که اتصال امن را تظمین می کند.


    با استفاده از SSL مرورگر تمامی داده های ارسال شده به server را رمزگذاری کرده و کلیه ی اطلاعاتی که از سرور می آید را رمز گشایی می کند.همزمان سرور کلیه ی داده های ارسال شده به مرورگر و دریافت شده از آن را رمز گذاری و رمزگشایی می کند.


    URL یک اتصال امن به جای HTTP با HTTPS آغاز می شود. مرورگری که از اتصال امن استفاده می کند، یک قفل کوچ بر روی پنجره ی خود نمایش می دهد. هنگامی که مرورگر سعی می کند طی یک اتصال ایمن و با استفاده از پروتکل SSL با server ارتباط برقرار کند، سرور با ارسال digital certificate (گواهی دیجیتال) خود را احراز هویت و اعتبار سنجی می کند.


    جهت استفاده از SSL، باید یک گواهی دیجیتال امن از مرجع صدور گواهی دیجیتال (Certification Authority) خریداری کرده و آن را روی سرور وب خود نصب کنید. زیر برخی از مرجع صدور گواهی دیجیتال معروف و قابل اطمینان را مشاهده می کنید:



    SSL به صورت پیش فرض در تمامی مرورگرها و سرورهای اصلی وجود دارد. به منظور فعال سازی آن، کافی است digital certificate (گواهی دیجیتال) را نصب کنید. strengthگواهی دیجیتال های مختلف بر طول کلید تولید شده به هنگام رمزگذاری (encryption) بستگی دارد، به گونه ای که هرچه طول کلید ایجاد شده بیشتر باشد، گواهی دیجیتال نیز امن تر بوده و در نتیجه اتصال ایمن تری برقرار خواهد شد.
     
  7. مدیر بازنشسته☕

    تاریخ عضویت:
    ‏15/8/17
    ارسال ها:
    5,336
    تشکر شده:
    42,669
    امتیاز دستاورد:
    113
    [​IMG]