PDA

View Full Version : سوال: ارتباط همزمان چند کاربر با دیتابیس



boveiryghasem
شنبه 21 مرداد 1402, 12:48 عصر
سلام

توی ارتباط با دیتابیس (SQL Server) بصورت همزمان، بهتره برای هر کاربر توی دیتابیس هم User تعریف بشه (که بشه بهتر مدیریتش کرد کاربر رو) یا اینکه یه جدول بسازم همه کاربرها رو داشته باشه و برای ورود ببینم اون کاربر تو جدول هست یا نه؟

:متفکر:

پرستو پارسایی
شنبه 21 مرداد 1402, 19:28 عصر
برای مدیریت دسترسی کاربران به دیتابیس SQL Server، بهتر است از سیستم مدیریت کاربران داخلی SQL Server یا احراز هویت خارجی استفاده کنید. در این روش‌ها، شما می‌توانید برای هر کاربر یک حساب کاربری جداگانه ایجاد کنید و دسترسی هر کاربر را به طور مستقل تنظیم کنید.


اگر از سیستم مدیریت کاربران داخلی SQL Server استفاده می‌کنید، می‌توانید برای هر کاربر یک حساب کاربری جداگانه ایجاد کنید و مجوزها و دسترسی‌های مورد نیاز را به این حساب کاربری اختصاص دهید. این روش به شما امکان می‌دهد که به طور دقیق کنترل کنید که هر کاربر چه دسترسی‌هایی به دیتابیس داشته باشد.



در مورد انتخاب بین ایجاد یک حساب کاربری جداگانه برای هر کاربر و استفاده از یک جدول کاربران، هر دو روش ممکن است و به نیازها و پیچیدگی‌های مورد نظر شما بستگی دارد. برخی از مزایا و معایب :


1. ایجاد حساب کاربری جداگانه برای هر کاربر:

- مزایا:

- کنترل دقیقتر دسترسی هر کاربر به دیتابیس.
- امکان تنظیم سطوح دسترسی مختلف برای هر کاربر.
- قابلیت تعقیب و ردیابی عملکرد هر کاربر در دیتابیس.
- امکان تغییر و مدیریت پسورد و مشخصات کاربری برای هر کاربر به طور مستقل.

- معایب:

- نیاز به مدیریت جداگانه حساب کاربری برای هر کاربر.
- احتیاج به مدیریت و بروزرسانی حساب کاربری ها.


2. استفاده از یک جدول کاربران:

- مزایا:

- ساده‌ترین روش برای مدیریت کاربران.

- کاهش زمان و تلاش مورد نیاز برای ایجاد و مدیریت حساب کاربری برای هر کاربر.

- معایب:

- کنترل دسترسی دقیقتر به دیتابیس ممکن نیست.
- عدم امکان تنظیم سطوح دسترسی متفاوت برای هر کاربر.
- مدیریت پسورد و مشخص

boveiryghasem
یک شنبه 22 مرداد 1402, 13:10 عصر
سپاس بابت پاسخی که دادید، توی برنامه ای که از قبل نوشتم یه جدولی دارم که لیست همه کاربرها و پسوردشون رو نگه میدارم که برای ورود از همون جدول تاییده میگیرم، اما چند وقتی هست که موقع ورود کاربرهای رو بیرون میندازه البته تعداد کاربرها زیاد شده و دیتابیس هم یکم سنگین شده (از یک کاربر ثابت برای Connection String ها استفاده میکنم).
حالا میخاستم ببینم که اگر راه بهتری هست اونو استفاده کنم مثل همینی که شما لطف کردید توضیح دادید.
پس نتیجه این شد که من میرم توی SQL Server برای هر کاربر یه DB User میسازم که هم بشه درست تر مدیریتش کرد هم کمک کنه که مشکلات فعلی رو رفع کنه.