fekre-bekr,learning,source,سورس,سورس رایگان,آموزش,اخبار,فناوری اطلاعات,mvc,.net,ساری,آموزشگاه,asp.net,c#.net,programing,c++,vb,آموزش برنامه نویسی,دانلود

اشتراک در سایت


مطالب تصادفی
اخبار و مقالات در فکر بکر آموزش ایجاد breadcrumb با استفاده از sitemap در MVC

در این آموزش با استفاده از نقشه سایت به ایجاد و پیاده سازی breadcrumb می پردازیم. ...


اخبار و مقالات در فکر بکر آموزش ساخت صفحه Page Not Found (404) در Aspnet core

در این بخش به اموزش نحوه مدیریت خطا و هدایت کاربر به صفحه Page Not Found (404) در Aspnet core می پردازیم. یکی از مشکلات مهمی ک ...


اخبار و مقالات در فکر بکر فایل pdf آموزش کامپوننت Backgroundworker برای برنامه نویسی بصورت همزمان

با استفاده از کامپوننت BackgroundWorker شما میتوانید به برنامه نویسی و اجرای کارهای زمانبر در یک Thread دیگر و بصورت موازی بپرداز ...


اخبار و مقالات در فکر بکر آموزش dependency injection در Asp.net core 2

تزریق وابستگی یکی از مباحث مبهم برای برنامه نویسانی که به تازگی با این عنوان آشنا شده اند می باشد.اما باید در نظر داشته باشید که ...


اخبار و مقالات در فکر بکر حل تمرین مسائل برنامه نویسی از بخش کلاسها در سی شارپ

در این برنامه به طراحی کلاس دانش آموز با سازنده های مختلف میپردازیم. لطفا به ادامه مطلب توجه نمایید ...


اخبار و مقالات در فکر بکر سورس برنامه پردازش تصویر در #C

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


اخبار و مقالات در فکر بکر آشنایی با Asp.net mvc6 بصورت پروژه عملی #1

با سلام در این مقاله میخواهیم mvc6 را با یک پروژه عملی آموزش دهیم بنابراین بدون مقدمه کار را شروع میکنیم لطفا به ادامه مطلب توجه ...


اخبار و مقالات در فکر بکر حل تمرین مسائل برنامه نویسی از بخش فایلها در سی شارپ

در این برنامه به حل مساله کتاب جهت ذخیره در فایل متنی با استفاده از کادر محاوره ای savefileDialog می پردازیم . لطفا به ادامه مطل ...


اخبار و مقالات در فکر بکر حل تمرین مسائل برنامه نویسی از بخش رویدادهای کیبورد (Windows Form) در سی شارپ

در این برنامه سوال مرتبط با تایپ حروف و نمایش آن در کنترل لیبل با توجه به رویدادهای صفحه کلید حل شده است لطفا به ادامه مطلب مراجع ...


اخبار و مقالات در فکر بکر استفاده از AutoMapper در C #

با سلام – در این مقاله قصد دارم کلاس کاربردی AutoMapper را به شما کاربران فکر بکر معرفی کنم. ...


اخبار و مقالات در فکر بکر سورس برنامه notepad در سی شارپ

در این برنامه سورس notepad در c# را بصورت رایگان برای شما کاربران عزیز در فکر بکر جهت دانلود قرار دادیم ...


اخبار و مقالات در فکر بکر حل تمرین مسائل برنامه نویسی از بخش آرایه ها در سی شارپ(مالیات)

جهت مشاهده سوال ودانلود سورس آن لطفا به ادامه مطلب توجه نمایید. ...


اخبار و مقالات در فکر بکر حل تمرین مسائل برنامه نویسی از بخش کنترل ها (Windows Form) در سی شارپ

جهت مشاهده سوال و دانلود سورس آن لطفا به ادامه مطلب توجه نمایید. ...


اخبار و مقالات در فکر بکر آموزش ایجاد برنامه چت دوطرفه با استفاده از Socket در سی شارپ

در این برنامه با استفاده از Socket و پروتکل UDP دو برنامه جهت ارسال و دریافت پیام بصورت دوطرفه ایجاد میکنیم. لطفا به ادامه مطلب ت ...


پیوندها
5 (1)

در این مقاله به آموزش و پیاده سازی سفارشی سیستم احراز هویت کاربران خواهیم پرداخت. معمولا در حالت عادی هر سایت حداقل شامل مدیر سیستم ، کاربران ثبت نام شده و مهمان وجود دارد که برای هر یک از آنها دسرسیهای خاصی در سطح برنامه وجود خواهد داشت لذا در این آموزش مدیریت دسرسی هر یک از کاربران در سیستم را آموزش خواهیم داد.
گروه : Asp.net MVC
تاریخ انتشار: 1395/06/30

فکر بکر

معمولا در حالت عادی هر سایت حداقل شامل مدیر سیستم ، کاربران ثبت نام شده و مهمان وجود  دارد  که برای هر یک از آنها دسرسیهای خاصی در سطح برنامه وجود خواهد داشت لذا در این آموزش مدیریت دسرسی هر یک از کاربران در سیستم را آموزش خواهیم داد.

ابتدا یک پروژه از نوع empty mvc ایجاد نمایید و سپس مراحل زیر را انجام دهید.

empty mvc

بر روی controller کلیک راست کنید و سپس یک کنترلر بنام Home ایجاد نمایید و اکشن  index و ویوی متناظر با آن را بصورت دلخواه ایجاد نمایید. در واقع این کنترلر برای دسرسی نیاز به احراز هویت نخواهد داشت.

create controller

اکنون وقت آن رسیده است که دسرسی به صفحات کاربران ثبت نام شده مانند ویرایش پروفایل و همچنین صفحات مدیر سیستم مانند پنل ادمین را مدیریت نماییم.
در این بخش صفحات مختص کاربران ثبت نام شده و مدیر سیستم را توسط Area از سطح برنامه تفکیک میکنیم.
بر روی نام پروژه کلیک راست نمایید سپس گزینه Add و سپس Area را انتخاب نمایید و در صفحه باز شده نام Admin را درج کنید.

create Area

اکنون به Solution برنامه دقت کنید . پوشه های Area  و Admin  به برنامه اضافه شده است. در واقع محتویات پوشه Admin مختص مدیر سیستم می باشد. همین مراحل را برای ایجاد  Area با نام Users انجام دهید. در پایان Solution برنامه به شکل زیر خواهد بود.

solution

درون پوشه Admin بر روی پوشه Controller آن کلیک راست نمایید و یک کنترلراز نوع Empty با نام فرضی myAdmin که برای مدیریت صفحات سایت بکار میرود ایجاد نمایید.
سپس یک اکشن با نام index و ویوی آنرا با محتویات دلخواه ایجاد نمایید.
مراحل فوق را جهت اضافه نمودن کنترلر به درون پوشه Users انجام دهید و نام کنترلر را myUsers بنامید.
اکنون در صورتیکه برنامه را اجرا کنید و وارد مسیر http://localhost:portNumber/Admin/myAdmin/Index ویا http://localhost: :portNumber /Admin/myAdmin/Index شوید صفحات آن بدون هیچ مشکلی به همه کاربران نمایش داده خواهد شد بنابراین باید از دسرسی این صفحات به کاربران مهمان جلوگیری کنیم.
برای اینکار دستورات زیر را درون فایل webconfig برنامه در انتهای تگ configuration البته قبل از بسته شدن تگ مربوطه درج نمایید.

  <location path="admin">
    <system.web>
      <authorization>
        <allow roles="admin" />
        <deny users="*" />
      </authorization>
    </system.web>
  </location>

  <location path="users">
    <system.web>
      <authorization>
        <deny users="?" />
      </authorization>
    </system.web>
  </location>

 

 

دستور location pathدر واقع جهت مدیریت یک Area می باشد.

دستور  <allow roles="admin" /> به معنای ورود کاربران با نقش admin به این صفحه میباشد و در خط بعدی دستور <deny users="*" /> درج  شده و معنای جلوگیری از ورود همه کاربران به این قسمت می باشد و وقتی این دو دستور با همان ترتیب بصورت یکجا نوشته شوند به معنای ورود افراد، فقط با نقش admin خواهد بود.

دستور <deny users="?" /> به معنای جلوگیری از ورود کاربران لاگین نشده به این قسمت میباشد.

اکنون بر نامه را اجرا نمایید و وارد صفحات index  برای Admin یا  Users شوید. خواهید دید که با خطای Access is denied مواجه خواهید شد اما بدون هیچ مشکلی به ویوی index از کنترلری که در روت پروژه قرار دارد دسرسی خواهید داشت.

access is dinied output

در بخش بعدی به ادامه آموزش خواهیم پرداخت

شما اولین نفری باشید که نظر میدهید

T8pyJD

وارد کردن فقط حروف فارسی و جلوگیری از ورود حروف فارسی در تکست باکس با استفاده از JQuery -------- سورس استفاده از کامپوننت Roxy File manager در Asp.net core -------- آموزش ساخت صفحه Page Not Found (404) در Aspnet core -------- آموزش ایجاد Tag Helper سفارشی در Asp.net core -------- آموزش نحوه ایجاد Model برای دیتابیس موجود در Entity Framework Core -------- آموزش نحوه Upload و Download در Asp.net core 2 -------- آموزش dependency injection در Asp.net core 2 -------- آموزش تحت شبکه کردن برنامه های مبتنی بر c# در sql server -------- آموزش استفاده از Bundler & Minifier در Asp.Net Core -------- مروری بر Identity در Asp.net core2.1 (بخش دوم) -------- مروری بر Identity در Asp.net core2.1 (بخش اول) -------- آموزش مبحث Single Responsibility Principle (SRP) از بخش اصول طراحی شی گرا (SOLID) -------- آموزش publish کردن برنامه های Asp.net core بر روی سرور iis -------- پیاده سازی مسیریابی با استفاده از الگوریتم پیمایش اول سطح یا جستجوی اول سطح (BFS) در سی شارپ -------- آشنایی با SignalR در Asp.net core -------- آموزش استفاده از کلاس SeedData در Asp.net Core -------- قالب سایت فروشگاهی -------- آموزش ایجاد برنامه نصب (setup) قسمت سوم -------- آموزش ایجاد برنامه نصب (setup) قسمت دوم -------- آموزش ایجاد برنامه نصب (setup) قسمت اول -------- آموزش عملیات CRUD با استفاده از Ragor Pages در Asp.net Core2.0 -------- آموزش ثبت تصویر توسط دوربین در برنامه نویسی اندروید به زبان c#.net -------- حل مساله n وزیر با استفاده از الگوریتم ژنتیک و بصورت گرافیکی -------- آموزش نمایش تصویر loading در سمت client جهت بارگزاری صفحات با حجم زیاد از سرور در asp.net mvc -------- آموزش اعتبار سنجی غیر همزمان(AsyncValidation) با استفاده از جاوااسکریپت در Asp.net mvc -------- آموزش ایجاد breadcrumb با استفاده از sitemap در MVC -------- آموزش ایجاد برنامه چت دوطرفه با استفاده از Socket در سی شارپ -------- آموزش ارسال و دریافت فایل در برنامه تحت شبکه با استفاده ار سوکت (Socket) -------- آموزش رسم نمودار در Asp.net -------- آموزش ایجاد مگا منو -------- آموزش استفاده از Grid mvc در Asp.net mvc -------- پیاده سازی سیستم احراز هویت کاربران در Asp.net MVC (بخش چهارم) -------- پیاده سازی سیستم احراز هویت کاربران در Asp.net MVC (بخش سوم) -------- پیاده سازی سیستم احراز هویت کاربران در Asp.net MVC (بخش دوم) -------- پیاده سازی سیستم احراز هویت کاربران در Asp.net MVC (بخش اول) -------- بررسی نکات امنیتی در آپلود تصاویر -------- آموزش async - await در یک مثال عملی -------- قالب پنل ادمین -------- آموزش Repository pattern در Asp.net MVC -------- آموزش Serialize و Deserialize اطلاعات در قالب Json به زبان C#.net --------

ابتدای صفحه