View Full Version : سوال: محدود كردن سطح دسترسي به برنامه ...؟
Afshin160
دوشنبه 07 مرداد 1387, 08:56 صبح
سلام به تمام دوستان برنامه نويس ...
دو تا سوال داشتم ...
1- برنامه هاي تحت شبكه داخلي به چه صورت نوشته مي شوند ...؟
آيا فقط ديتابيس را در سرور قرار ميدهند يا...
***ویرایش شده توسط مدیر***
اكثر برنامه هايم به صورت كلاينت بوده و تحت شبكه كار نكردم ... اگه refrence يا كتابي در اين رابطه معرفي كنيد ممنون مي شوم ...
پيشاپيش از شما عزيزان متشكرم
افشين160
reza6384
دوشنبه 07 مرداد 1387, 10:56 صبح
سلام به تمام دوستان برنامه نويس ...
دو تا سوال داشتم ...
1- برنامه هاي تحت شبكه داخلي به چه صورت نوشته مي شوند ...؟
آيا فقط ديتابيس را در سرور قرار ميدهند يا...
2- چگونه بايد سطح دسترسي را به كاربران مختلف تخصيص داد... آيا بايد تنها در خود برنامه
اين سطح را مشخص كرد...؟
اكثر برنامه هايم به صورت كلاينت بوده و تحت شبكه كار نكردم ... اگه refrence يا كتابي در اين رابطه معرفي كنيد ممنون مي شوم ...
پيشاپيش از شما عزيزان متشكرم
افشين160
برای اینکه دیتابیس تحت شبکه باشه باید از قسمت Security در Enterprise Manager بیاید یک Login تعریف کنید و این Login شامل یک Username و Password میشه. بعد از تعریف سطوح دسترسی این User رو به جدول ها تعیین می کنید که مثلا آیا اجازه Read , Write و.... دارند یا خیر.
و اما اگر بخواین که مثلا فقط کاربر خاصی از برنامه شما مجاز به دیدن بخش های خاصی از برنامه باشه ( مثل اصلاح فاکتور ، دیدن گزارشات و ...) باید این ها رو در خود برنامه تعیین کنید. مثلا می تونید یک UserType تعریف کنید از نوع Int و هنگام شروع شدن برنامه با توجه به اون برخی از منوها رو Disable کنید.
البته اینهایی که من گفتم تا حدی در سطح بالای تجرید هست و پیاده سازیش یه کم جزئیات بیشتری داره.
ali_md110
سه شنبه 08 مرداد 1387, 07:34 صبح
دوست عزیز بهترین روش در برنامه های تحت شبکه همون روشی که خود شما زکر کردی هستش فقفط بانک تو سرور قرار میگیره و اینترفیس یا برنامه تحت شبکه بر روی کلیه کلاینتها نصب میشه چون منابع سرور رو کمتر اشغال میکنه اگر شما اسکیول سرور رو بلد باشی و برنامه نویسی دیتابیس تحت دات نت دیگه مشکلی نداری فقط یه تنظیمات کوچکی توی شبکه نیاز داری
Meysamkh
سه شنبه 08 مرداد 1387, 15:22 عصر
توضیحات دوستان خوب و کامل بود ولی منم چند تا نکته رو یاداوری می کنم :
1.اول ببینید می خواین توی workgroup کار کنید یا domain ؟
2.باید بدونی و بتونی که دیتا بیست رو windows authentication یا sql authenticationی نصب کنی.
3.برای سطح دسترسی کاربران هم همون جوری که دوستان گفتند می تونی توی برنامت تعریف کنی که مثلا فلان کاربر چه فرمی براش enable و چه فرمی براش disable باشه.
sharifat
سه شنبه 19 بهمن 1389, 09:42 صبح
دوستان عزيز
ميشه درباره سطح دسترسي دادن بيشتر توضيح بديد؟؟؟
user ها كه توي بانك تعريف ميشن. چطور توي برنامه ،دسترسي ميشه داد
منظورم اينه كه اون جدولي كه واسه user ها تعريف ميشه بايد چطوري باشه؟؟؟
كلاً يه توضيح جامع تر. ممنون
shahab2025
سه شنبه 19 بهمن 1389, 12:57 عصر
توضیحات دوستان خوب و کامل بود ولی منم چند تا نکته رو یاداوری می کنم :
1.اول ببینید می خواین توی workgroup کار کنید یا domain ؟
2.باید بدونی و بتونی که دیتا بیست رو windows authentication یا sql authenticationی نصب کنی.
دوست من سلام
چرا مساله را پیچیده میکنی ؟
مورد 1 با تست sharing قابل حل است
مورد 2 نیز نصب دیتابیس اصلاً به اینکه sql حتما روی یک کامپیوتر خاص باشه یا روی سرور و اینکه با کدوم حالت بهش کانکت میشیم مربوط نمیشه . در این مورد هم SA مشکل گشاست
نمیگم اینا اصلا مهم نیست . میگم مساله را ساده کنیم تا این دوست سوال کننده راحت تر بفمند
sharifat
سه شنبه 19 بهمن 1389, 13:57 عصر
آقا پس يكي جواب من رو هم بده
خواهش ميكنم
shahab2025
سه شنبه 19 بهمن 1389, 14:03 عصر
دوستان عزيز
ميشه درباره سطح دسترسي دادن بيشتر توضيح بديد؟؟؟
user ها كه توي بانك تعريف ميشن. چطور توي برنامه ،دسترسي ميشه داد
منظورم اينه كه اون جدولي كه واسه user ها تعريف ميشه بايد چطوري باشه؟؟؟
كلاً يه توضيح جامع تر. ممنون
سلام
میتونی یک جدول داشته باشی که به ازای هر قسمت برنامه فیلدی عددی داشته باشه دسترسی کاربر به اون قسمت با یک عدد مشخص بشه مثلاً 1 یعنی دسترسی کامل - 2 فقط خواندن - 3 عدم دسترسی
بعدش هم با یک کنترلر میتونی توی هر بخش بفهمی که کدام دسترسی کاربر باید تغییر کنه
البته میتونی USER Control هم بنویسی که من در این زمینه تجربه ندارم و خوشحال میشم یاد بگیرم
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.