PDA

View Full Version : مشکل در ایجاد سطح دسترسی داینامیک



rayangostar_co
چهارشنبه 14 مرداد 1394, 01:27 صبح
با سلام خدمت اساتید محترم
یه سیستم تحت وب و در نظر بگیرید که شامل تعدادی صفحات که هر کدام شامل کنترل هایی مانند (buttons, links, menu) می باشند.
من یه سیستم سطح دسترسی برای صفحات و میخوام اعمال کنم که هر کاربر دارای یک مجموعه از مجوزهای فردی می باشد.
به عنوان مثال یه page یا همون View به عنوان EditCar رو در نظر بگیرید که شامل دکمه های "جدید"، "حذف" و "بازگشت" است.
کاربر X فقط باید دسترسی به دکمه بازگست رو داشته باشه و بتونه فقط این دکمه رو ببینه!

مباحث Mvc.net و موضوع Authorize رو مطالعه کردم و آشنایی دارم.
میخوام این سطح دسترسی ها بر اساس نقش باشه.
از Asp.net Identity 2 استفاده کردم بنابراین جداول User - Role - و UserRole موجوده .

سفارشی سازی Authorize و هم مطالعه نمودم ولی نمیدونم تو View چطور میتونم سطح دسترسی رو برای نمایش یا عدم نمایش یک دکمه انجام بدم
ممنون میشم اگه دید کاملی و راه حل جامعی رو از این مسئله عنوان بفرمائید.

hakim22
چهارشنبه 14 مرداد 1394, 08:07 صبح
اگر از Identity استفاده میکنید در ویو میتوانید از کد زیر استفاده کنید :


@if (User.IsInRole())
{
کد شما
}


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

salar IT man
چهارشنبه 14 مرداد 1394, 12:18 عصر
با سلام خدمت اساتید محترم
یه سیستم تحت وب و در نظر بگیرید که شامل تعدادی صفحات که هر کدام شامل کنترل هایی مانند (buttons, links, menu) می باشند.
من یه سیستم سطح دسترسی برای صفحات و میخوام اعمال کنم که هر کاربر دارای یک مجموعه از مجوزهای فردی می باشد.
به عنوان مثال یه page یا همون View به عنوان EditCar رو در نظر بگیرید که شامل دکمه های "جدید"، "حذف" و "بازگشت" است.
کاربر X فقط باید دسترسی به دکمه بازگست رو داشته باشه و بتونه فقط این دکمه رو ببینه!

مباحث Mvc.net و موضوع Authorize رو مطالعه کردم و آشنایی دارم.
میخوام این سطح دسترسی ها بر اساس نقش باشه.
از Asp.net Identity 2 استفاده کردم بنابراین جداول User - Role - و UserRole موجوده .

سفارشی سازی Authorize و هم مطالعه نمودم ولی نمیدونم تو View چطور میتونم سطح دسترسی رو برای نمایش یا عدم نمایش یک دکمه انجام بدم
ممنون میشم اگه دید کاملی و راه حل جامعی رو از این مسئله عنوان بفرمائید.


برای پیاده سازی دسترسی داینامیک به پروژه زیر مراجعه کنید.
http://www.dotnettips.info/projects/details/23
و در نهایت چیزی که دوستمان گفتند صحیح است .

rayangostar_co
چهارشنبه 14 مرداد 1394, 13:01 عصر
با تشکر از پاسخگویی شما.

ببینید من نمیتونم از User.IsInRole استفاده کنم
چون نقش ها به صورت داینامیک هست که توسط کاربر مدیر سایت وارد میشه. و مشخص نیست که چه عنوانی برای نام نقش انتخاب میشه!!!!

ali_72
چهارشنبه 14 مرداد 1394, 14:16 عصر
سلام دوست عزیز
تاپیک های مشابه زیادی در همین سایت وجود دارد

rayangostar_co
چهارشنبه 14 مرداد 1394, 14:48 عصر
سلام دوست عزیز
تاپیک های مشابه زیادی در همین سایت وجود دارد


ممنون میشم چند تا از این تاپیک هارو اینجا معرفی کنید

salar IT man
پنج شنبه 15 مرداد 1394, 00:31 صبح
با تشکر از پاسخگویی شما.

ببینید من نمیتونم از User.IsInRole استفاده کنم
چون نقش ها به صورت داینامیک هست که توسط کاربر مدیر سایت وارد میشه. و مشخص نیست که چه عنوانی برای نام نقش انتخاب میشه!!!!

http://dotnetexpert.ir/Blog/1394/1/17/%D8%AA%D9%88%D8%B3%D8%B9%D9%87-%D9%85%D8%AF%D9%84-aspnet-identity-20

ali_72
پنج شنبه 15 مرداد 1394, 10:33 صبح
ممنون میشم چند تا از این تاپیک هارو اینجا معرفی کنید

http://barnamenevis.org/showthread.php?495765-%D8%B3%D8%B7%D8%AD-%D8%AF%D8%B3%D8%AA%D8%B1%D8%B3%DB%8C-%D9%BE%D9%88%DB%8C%D8%A7&p=2215571#post2215571