ورود

View Full Version : سوال در مورد نحوه پیاده سازی سطوح دسترسی



myazdani
چهارشنبه 08 شهریور 1391, 12:08 عصر
سلام

دوستان من یه سیستم دبیرخانه دارم طراحی می کنم که دو جور سطوح دسترسی می خوام داشته باشه . یکی بر اساس طبقه بندی نامه (عادی ، محرمانه و.....) . دیگری بر اساس مجوزهای دسترسی(اضافه کردن نامه ، ویرایش و ......).

اومدم دو تا جدول تعریف کردم برا اینکار و می خوام بر اساس مجوزهایی که در هر جدول به هر کاربر اختصاص داده میشه یه عدد دو دویی اختصاص بدم.
مثلا امکان ایجاد نامه عدد 1 ویرایش نامه عدد2 جست و جو عدد 4 و ..... حاصل جمع اینها میشه امکاناتی که کاربر میتونه داشته باشه.

حالا موندم این عدد حاصل جمع رو برا هم جدول امکانات هم جدول طبقه بندی کجا ذخیره کنم!

بعدا دو تا عددی که به این شکل به دست اومد برای دسترسی به پایگاه داده استفاده کنم.

دوستان اگه راه حل بهتری هم هست لطفا راهنمایی کنید.

متشکرم

baktash.n81@gmail.com
چهارشنبه 08 شهریور 1391, 15:44 عصر
سلام

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

مثالا در مورد مثالی که زدید

ما توی جدول دسترسی ها این رکورد ها را خواهیم داشت

1 ایجاد نامه عادی
2 ایجاد نامه محرمانه
3 ویرایش نامه عادی
4 ویرایش نامه محرمانه

جدول کاربران

1 User1
2 User2

جدول ارتباطی

UserID / PermissionID

1 - 1
2 - 1
4 - 1
1 - 2
3 - 2
, ....

myazdani
پنج شنبه 20 مهر 1391, 11:28 صبح
سلام

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

مثالا در مورد مثالی که زدید

ما توی جدول دسترسی ها این رکورد ها را خواهیم داشت

1 ایجاد نامه عادی
2 ایجاد نامه محرمانه
3 ویرایش نامه عادی
4 ویرایش نامه محرمانه

جدول کاربران

1 User1
2 User2

جدول ارتباطی

UserID / PermissionID

1 - 1
2 - 1
4 - 1
1 - 2
3 - 2
, ....

متشکرم این بهترین راهه
ولی رابط کاربری شو چطوری پیاده سازی کنم

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

از همه دوستان ممنونم