PDA

View Full Version : به رمز درآوردن رشته کانکشن در webconfig



BANKER
یک شنبه 08 مرداد 1391, 11:08 صبح
باسلام خدمت دوستان عزیز
من میخواستم این قسمت از کد را به حالت رمز در آورم که برای کسانی که احتمالا دسترسی به برنامه پیدا میکنند قابل تغییر یا مشاهده نباشد لطفا راهنمایی بفرمایید.
<appSettings>
<add key="Connection String" value="Data Source=.;Initial Catalog=login;Persist Security Info=True;User ID=Sa;Password=123"/>
</appSettings>

alonemm
یک شنبه 08 مرداد 1391, 11:48 صبح
باسلام:

دقت کنید که اگر منظور شما از شخصی که دسترسی به این فایل پیدا کنه اعضای هاستینگ هست باید بدونید که این افراد با لاگین کردن به DataBase Enjine با دسترسی مدیر ویندوز (Administrator) قادر هستن تمامی پایگاه داده شما رو در اختیار بگیرند.

1 راه میتونه این باشه که نام پایگاه داده و رمز رو از داخله برنامه یا لایه کار با پایگاه داده (DAL) به عنوان پارامتر وارد کنید.


آقای راد در پاسخ به این سوال :

برخی اطلاعات مهم هستند اما نیازی به رمزنگاری ندارند. مثل Connection String.
در این حالت برنامه نویس مطمئن هست که فقط خودش می تونه به این اطلاعات دسترسی داشته باشه نه شخص دیگری.
این اطلاعات بهتره در Web.Config ذخیره بشن.
سوال: در NET 2.0. امکان رمزنگاری (Encryption) محتویات فایل Web.Config وجود داره. آیا پیشنهاد میشه که از این امکان استفاده کنیم؟
پاسخ: نه برای هر نوع اطلاعاتی. به نظر من رمزنگاری Connection String کار بیهوده ای محسوب میشه. هیچ کس به جز شما و هاست به Web.Config دسترسی نداره.
نتیجه گیری اخلاقی: اگر فکر می کنید که احتمال ریختن سقف خونتون وجود داره، هیچ وقت در خونه نمونید! در غیر اینصورت به سقف خونتون اطمینان کنید.
یکی از مزایای مهم قرار دادن Connection String شما در Web.Config، استفاده از قابلیت Connection Pooling هست.
نتیجه گیری: Connection String رو همیشه بدون رمزنگاری در Web.Config قرار بدید.


موفق باشید.