PDA

View Full Version : سوال: سطح دسترسی برای کاربران و مدیران سایت ASP.net WebForm CSharp



zhdeh1
یک شنبه 22 مرداد 1396, 05:09 صبح
سلام دوستان این اولین پیام من هست.
امیدوارم که حالتون خوب باشه.
یه سال کوچیک دارم:
موضوع سوال: forms authentication user identity
چطور میشه سطح دسترسی برای کاربران ثبت نام کرده در سایت و مدیران در صفحه ادمین ایجاد کرد؟
یک دیتابیس و دو تا جدول دارم
جدول مدیران که 5 رول دارد .
یک= سوپر ادمین دو= ادمین سه= مدیر داخلی چهار= مدیر ویرایش پنج=مدیر اعضاء
---------------------------------------------------------------------------------------------------------------------------
جدول کاربران که در حقیقت یک حالت وضعیت دارد .
صفر= غیرفعال یک= فعال
کاربرهایی که توی سایت ثبت نام کردن هیچ گونه رولی ندارند و میخوام مجاز به دیدن تمام صفحات غیر از بخش ادمین باشند.
حالا اگر مایید از فیلد وضعیت بعنوان رول دسترسی استفاده کنید. یا روش دیگری برای این کار در نظر بگیرید.
میهمان ها و افرادی که ثبت نام نکردند به همه صفحات دسترسی داشته باشند غیر از بخش ادمین و یک صفحه خاص(مثلا ارسال تیکت) در روت سایت .
---------------------------------------------------------------------------------------------------------------------------
میشه لطف کنید و از روش Custom استفاده کنید + دو تا web.confg و Authentication mode=Forms
لطفا از asp.net web site administration tool استفاده نکنید. تعداد زیادی فیلد و کاربر و relationship دارم
-----------------راستی من از ADO.NET Entity 6 EF Designer from database. استفاده کردم
من این پروژه رو اول با PHP نوشتم و حالا تصمیم دارم با سی شارپ دوباره نویسیش کنم.
این پروژه ASP.net Webform سی شارپ هست و MVC نیست.
ممنون :لبخندساده:
امید وارم کسی پیدا شه و ساه و راحت راهنمایی کنه. تو تاپیک های مختلف گشتم ولی نتیجه نگرفتم.

kheyrollahi
سه شنبه 24 مرداد 1396, 17:12 عصر
با سلام.
من هم دقیقا الان درگیر همین قسمت هستم. لطفا اگه ار روش Custom راه حلی میدونه راهنمایی کنه. لطفا از asp.net web site administration tool استفاده نکنید
با تشکر :لبخندساده:

من 3 تا جدول دارم. جدول user، جدول role، جدول rolemap. جدول user که اطلاعات کاربرها است، جدول role نقش ها رو تعریف میکنم، و جدول maprole که id کاربر و id نقشی که بهش اختصاص دادم رو توش نگهدری میکنم و با 2 تا gridview به نام های membership و role مدیریتشون میکنم. توی این روش هر تعداد role که بخواهم میتونم ایجاد کنم و به هر کاربر role مربوطه رو اختصاص بدم.

حالا مشکل من اینه بعد از این مرحله دسترسی به صفحات رو بسته به نوع این role ها چطور محدود کنم. به عبارت دیگه در ادامه چه کارهایی مونده که باید انجام بدم؟

zhdeh1
چهارشنبه 22 شهریور 1396, 01:17 صبح
سلام دوستان
راه حل رو پیدا کردم
روش اول : همین پایین نوشتم ---- روش دوم : استفاده از رول و سطح دسترسی
روشی که من استفاده کردم این بود که دو پروژه در Solution Explorer اضافه کردن و برای هر کدوم یک فایل کانفیگ و احراز هویت ساختم

146325
146324

146326

مرحله آخر هم استفاده از احراز هویت بر اساس بررسی مقادیر یک فرم


protected void Page_Load(object sender, EventArgs e)
{


}


protected void Login1_Authenticate(object sender, AuthenticateEventArgs e)
{
if (Login1.UserName == "user")
{
System.Web.Security.FormsAuthentication.RedirectFr omLoginPage(Login1.UserName, false);
}
}

abolfazlahmadi
چهارشنبه 22 شهریور 1396, 07:55 صبح
سلام دوستان گرامی

بنده برای سطح دسترسی اومدم یه جدول ساختم ادرس صفحاتی که میخوام براشون سطح دسترسی تعریف کنم داخلشون ذخیره میکنم ئ یه جدول هم دارم برای کاربرا و یه جدول هم دارم که ایدی کاربر و صفحه داخلش دخیره میشه بعد از لوگین چک میکنم ایا کاربر وارد شده به صفحه مربوطه دسترسی دارد یا نه ولی ادمین سایت به کل پنل مدیریت دسترسی دارد
برای نمونه میتونید از لینک زیر بازدید کنید و در قسمت کاربران سیستم مشاهده کنید

لوکین (http://demo.cmsarya.ir)

bahar1823
سه شنبه 23 آبان 1396, 20:00 عصر
گروه تلگرام برنامه نویسی سی شارپ
https://t.me/joinchat/B7OnWg5sk-j_e3J9wXhq6w