PDA

View Full Version : سئوال در مورد تعیین سطح دسترسی



morteza_1234m
سه شنبه 29 بهمن 1387, 20:09 عصر
دوستان من برنامه ای دارم می نویسم که کاربر های مختلف در سطح برنامه سطح دسترسی خاصی به بانک اطلاعاتی دارند من این تعیین سطح دسترسی را چگونه ایجاد کنم

mohsen306
چهارشنبه 30 بهمن 1387, 01:16 صبح
باسلام:
من خودم این کارو می کنم که علاوه بر user و pass از فیلد سومی به عنوان سطح دسترسی استفاده می کنم ، هنگامی که هویت کاربر چک می کنم سطح دسترسی رو برسی می کنم و با توجه به نیاز هر سطح به هر کدوم از page ها که بخوام هدایت میکنم. مطمئن باش راه های بهتری هم هست اما راه راحت همینه.

موفق باشی:بامزه:

molana alavi
چهارشنبه 30 بهمن 1387, 01:20 صبح
خوب اول باید سطوح دسترسی مختلف رو تعریف کنی و مشخص کنی هر سطح دسترسی به چه امکانتای از برنامه شما می تونه دسترسی داشته باشه مثلا سطح دسترسی Admin به همه امکانات دسترسی داشته باشه بعدش برای هر فرد یه فیلد باید به بانک اطلاعاتیت اضافه کنی که مشخص کنه اون کاربر به کدوم سطح دسترسی تعلق داره اینطوری با باز کردن هر پنجره یا هر قسمت از برنامه ابتدا بررسی می کنی که اون کاربر در چه گروهی از سطح دسترسی قرار داره بعد با مراجعه به میزان دسترسی اون سطح دسترسی کنترل ها رو فعال یا غیر فعال می کنی

morteza_1234m
پنج شنبه 01 اسفند 1387, 16:49 عصر
موضوع اینه که من خودم میدونم که چگونه این ار را انجام بدم(الگوریتمش) ولی تو C# بلد نیستم اگه دوستان کمک کنند ممنون میشم

notelo
پنج شنبه 01 اسفند 1387, 19:24 عصر
سلام

موضوعی که شما می خواین بدست آوردن max یه عدد یا ... نیست که الگوریتمی ساده و قابل توضیح باشه. به نظر من شما یه سورس پیدا کنین خیلی راحتر می تونین یاد بگیرین

Mohammad.Saheb
پنج شنبه 01 اسفند 1387, 19:42 عصر
روش هاي مختلفي هست ولي چيزي كه من استفاده ميكنم

سيستم فرضي مشاور املاك
براي هر كاربر يه فيلد در جدول كاربران ما فيلدي بنام پرميژن داريم
براي اپراتو ميشه B يعني منوي base يا همون اطلاعات پايه و............
من تو برنامم يه mainMenu دارم 1-اطلاعات پايه 2-عمليات سيستم 3- مديريت
3 نوع هم كاربر دارم 1- اپراتور 2- مشاور 3- مدير

اپراتو فقط ميتونه به منو 1 دسترسي داشته باشه
موقع فرم لود



if (perms == "B")
Mnu_Main.Items["اطلاعات پايه"].Enabled = true;
و...................


اين فقط يه مثال بود
حالا ما ميتونيم بگيم دسترسي فقط خواندني داشته باشه يا ....................

ضمنا اگه دنبال كار حرفه اي هستي تو db ت به جدول جدا براي پرميژن داشته باش تا يك تك فيلد
اميدوارم بكارت بياد