PDA

View Full Version : دریافت رمز عبور برای یک برنامه کاربردی در دلفی



irani
پنج شنبه 17 مهر 1382, 16:35 عصر
با سلام
یه سیستم نوشتم که یک سری ورود اطلاعات و گزارشگیری داره.اطلاعات اون رو هم با ساختن یه دیتابیس از طریق اینتر بیس دلفی به اون وصل میشم. رمزعبور هم از sysdba and masterkey استفاده میکنم . حالا اگر بخوام که برای دسترسی کاربران مختلف داشته باشم که هرکدوم با رمز خودشون وارد بشن و به بخشهای خاصی مثلا فقط به ورود اطلاعات یا فقط به بخش گزارشگیری و گزارش خاصی بتونن دسترسی داشته باشن چه کاری باید انجام بدم . اگر یه برنامه نمونه که دسترسی در ابتدای ورود برای کاربران مختلف داشته باشه و دسترسی به منوی برنامه کاربردی من رو بتونه محدود کنه ارایه کنید ممنون میشم.
با تشکر فراوان

SReza1
پنج شنبه 17 مهر 1382, 17:27 عصر
من نظرم اینه که یک جدول داشته باشی تمام کاربران اونجا باشند با نام کاربری و رمز و سطوح دسترسی!! در پشتبرنامه همه با login admin وارد میشند ولی از طریق برنامه میتونی دسترسی ها را تعریف کنی!! :oops:

JavanSoft
جمعه 18 مهر 1382, 00:14 صبح
معمولا این کار از طریق Data Provider انجام می شود . من در مورد InterBase هیچ تجربه ای ندارم اما درمورد SQL Server می توان براحتی امکان Insert , Edit و غیره را از یک کاربر گرفت یا به آن عطاکرد (بقول آقای اینپرایز "گاهی معنی کلمه خنده دار میشه")

اما شما براحتی می توانید با پیدا کردن کاربر Login شده در Windows در برنامه فقط برخی امکانات را در اختیار آن قرار دهید .

کدی که می تواند نام User را در اختیارتان قراردهد الان یادم نیست ولی اگر بخواهید می توانم پیدا کنم

SReza1
جمعه 18 مهر 1382, 08:50 صبح
به نظر من نباید database رو به کاربران ویندوز محدود کرد چون هر بار که میخواهی با یک نام کاربری جدید کار کنی باید windows loggof شه!!! و اینکه انعطاف پذیری بسیار کم میشه!!
تازه نمی تونی interface رو به راحتی تغییر بدی!! مثلا یک دکمه را فعال کنی یا خیر!!
در ضمن نمیتونی دسترسی به reportهایی رو که با دلفی انجام دادی دسته بندی کنی!!
تازه کلی باید username داشته باشد در windows که شاید بعضی از کاربران صرفا میخواهند با نرم‌افزار کار کنند

SReza1
جمعه 18 مهر 1382, 08:53 صبح
در ضمن بعضی موقع ها لازمه که شما خودت از طریق نرم‌افزار login کنی!! که من نمی دونم غیر از loggoff ویندوز چه کار میشه کرد!! چون شما password ویندوز رو نداری

JavanSoft
جمعه 18 مهر 1382, 12:40 عصر
راه حل تمامی مسائلی که فرمودید در تقلید از SqlServer است ...
1) چنانچه 1 برنامه کوچک دارید ...شما می توانید دسترسی به منابع را بر اساس Login Windows یا ر اساس Login برنامه خودتان تعریف کنید
2) در برنامه های بزرگتر از خود امکاتاتی که SqlServer در اختیارتان می گذارد استفاده کنید

irani
شنبه 19 مهر 1382, 13:15 عصر
باسلم وتشکر حضور دوستان
از توضیحات شما متشکرم و خواهشمندم در صورت امکان قطعه کدی بصورت دمو که بتواند خواسته های فوق را برآورده کند برای اینجانب ارسال فرمایند
nec2004@yahoo.com
باتشکر

SReza1
شنبه 19 مهر 1382, 23:46 عصر
:shock:

Inprise
دوشنبه 21 مهر 1382, 13:01 عصر
یه سیستم نوشتم که یک سری ورود اطلاعات و گزارشگیری داره.اطلاعات اون رو هم با ساختن یه دیتابیس از طریق اینتر بیس دلفی به اون وصل میشم. رمزعبور هم از sysdba and masterkey استفاده میکنم . حالا اگر بخوام که برای دسترسی کاربران مختلف داشته باشم که هرکدوم با رمز خودشون وارد بشن و به بخشهای خاصی مثلا فقط به ورود اطلاعات یا فقط به بخش گزارشگیری و گزارش خاصی بتونن دسترسی داشته باشن چه کاری باید انجام بدم


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

توصیه میکنم برای چنین کاربردهائی از MySql استفاده کنید که از لحاظ سبکی و انتقال پذیری با اینتربیس قابل مقایسه و دارای سطوح امنیتی مناسبی است .

موفق باشید

irani
سه شنبه 22 مهر 1382, 17:09 عصر
Sreza1 چشات چرا اینجوری شد. مشکلی پیش اومده؟

irani
سه شنبه 22 مهر 1382, 17:11 عصر
اینپرایز عزیز از راهنمایی شما متشکرم.

jirjirakk
دوشنبه 28 مهر 1382, 11:40 صبح
من مای اس کیو ال رو سیستمم نصب هستش با پی اچ پی هم به خوبی کار میکنه اما با دلفی نمیدونم چی جوری بهش کانکت کنم.
- باید درایوری حاص نصب کنم یا خود دلفی میتونه به اون کانکت کنه :?:

Inprise
دوشنبه 28 مهر 1382, 17:25 عصر
الف) از طریق ODBC باید درایور مربوطه یعنی MyODBC نصب بشه
ب) کتابخانه های متعددی برای دسترسی مستقیم وجود داره که میتونه کمک کنه