PDA

View Full Version : سوال: پسورد گذاشتن روی دیتابیسی که در sql express 2008 ساخته شده



amir ali askari
یک شنبه 14 شهریور 1395, 22:17 عصر
سلام دوستان برای اینکه وقتی برنامم رو به دست کاربر نهایی میدم نمیخوام کسی دیگه بتونه از ساختار بانکم مطلع بشه برای این کار باید روی بانکم که با استفاده از sql Expressخودvs2010ساختم پسوورد بزارم اما نمیدونم چطوری ؟؟ میشه کمکم کنید؟:ناراحت:

mrprestige
دوشنبه 15 شهریور 1395, 20:14 عصر
سلام دوست من اگه درست متوجه شده باشم منظورت رو ، من بهت Eziriz .NET Reactor پیشنهاد میکنم که کلا پروژه شما رو Encrypt میکنه

daniyaltjm
دوشنبه 15 شهریور 1395, 22:37 عصر
سلام دوست من اگه درست متوجه شده باشم منظورت رو ، من بهت Eziriz .NET Reactor پیشنهاد میکنم که کلا پروژه شما رو Encrypt میکنه


فکر کنم منظور دوستمو این بود که روی بانک رمز بزاره که هر کس بخواد بانک رو اتچ کنه نتونه ساختار و جداول بانکش رو ببینه آیا با این برنامه ای که گفتید علاوه بر کد برنامه میشه روی بانک هم رمز گذاشت یا راه دیگری وجود دارد؟

mrprestige
سه شنبه 16 شهریور 1395, 17:31 عصر
مجددا سلام ، خب اگه صرفا فقط تمرکز روی Encrypt پایگاه داده هست ( نه با اون نرم افزار نمیشه SQL رو رمزنگاری کرد) برای رمزنگاری پایگاه SQL بنده روش TDE رو پیشنهاد میدم چرا که شما میتونید امنیت رو در کل سطح دیتابیس برقرار کنید یعنی اینکه که حتی اگر فایلهاتون جابجا بشن یا Backup داشته باشن باید Master Key و Certificate و کلیدی که Certificate شما با اون رمزنگاری شده رو داشته باشند تا بتونند از دیتابیس استفاده کنند در غیر اینصورت اون طرفی که میخواد غیرمجاز از دیتابیس استفاده کنه بدجور ضایع میشه :لبخندساده:. براتون برای اینکه حجم پست زیاد نشه توی یه فایل pdf (http://s7.picofile.com/file/8266485042/TDE.pdf.html) نحوه پیاده سازی اون رو توضیح دادم

daniyaltjm
سه شنبه 16 شهریور 1395, 17:57 عصر
مجددا سلام ، خب اگه صرفا فقط تمرکز روی Encrypt پایگاه داده هست ( نه با اون نرم افزار نمیشه SQL رو رمزنگاری کرد) برای رمزنگاری پایگاه SQL بنده روش TDE رو پیشنهاد میدم چرا که شما میتونید امنیت رو در کل سطح دیتابیس برقرار کنید یعنی اینکه که حتی اگر فایلهاتون جابجا بشن یا Backup داشته باشن باید Master Key و Certificate و کلیدی که Certificate شما با اون رمزنگاری شده رو داشته باشند تا بتونند از دیتابیس استفاده کنند در غیر اینصورت اون طرفی که میخواد غیرمجاز از دیتابیس استفاده کنه بدجور ضایع میشه :لبخندساده:. براتون برای اینکه حجم پست زیاد نشه توی یه فایل pdf (http://s7.picofile.com/file/8266485042/TDE.pdf.html) نحوه پیاده سازی اون رو توضیح دادم

خوب حالا که اطلاعات رمزنگاری شده، توی برنامه خودمون چطور باید با بانک ارتباط برقرار کرد ؟

mrprestige
سه شنبه 16 شهریور 1395, 19:12 عصر
بنده که عرض کردم "
باید Master Key و Certificate و کلیدی که Certificate شما با اون رمزنگاری شده رو داشته باشید " در اون صورت میتونید از دیتابیس استفاده کنید و ارتباط برقرار کنید مث حالت معمول که با پایگاه Connect میشید در غیر این صورت با یک سری داده های عجیب غریب و گنگ رو به رو میشید توی فایل مربوطه هم که فرستادم نحوه ایجادش رو توضیح دادم .

daniyaltjm
سه شنبه 16 شهریور 1395, 20:34 عصر
بنده که عرض کردم "
باید Master Key و Certificate و کلیدی که Certificate شما با اون رمزنگاری شده رو داشته باشید " در اون صورت میتونید از دیتابیس استفاده کنید و ارتباط برقرار کنید مث حالت معمول که با پایگاه Connect میشید در غیر این صورت با یک سری داده های عجیب غریب و گنگ رو به رو میشید توی فایل مربوطه هم که فرستادم نحوه ایجادش رو توضیح دادم .

ای کاش یک فیلم درست میکردید و این مراحل رو گرافیکی نمایش میدادین، و یک چیزی من توی یک جا خونده بودم که اصلا نمیشه روی فایل mdf رمز گذاشت!! مثل Access که میشه براش رمز بزاریم حالا شما با این روش که گفتین تمام فیلد های جدول اینکریپت میشه.

خوب مستر کی که رمزی هست که ما انتخاب میکنیم

سرتیفیکیت که روی بانک مستر گفتید چی هست؟

و توی این روش اون شخصی که فایل بانک دستشه حداقل میتونه جداول و ارتباطات بینشون رو ببینه؟ حتی اگه اطلاعات رمز شده رو ببینه؟

mrprestige
سه شنبه 16 شهریور 1395, 21:37 عصر
ای کاش یک فیلم درست میکردید و این مراحل رو گرافیکی نمایش میدادین، و یک چیزی من توی یک جا خونده بودم که اصلا نمیشه روی فایل mdf رمز گذاشت!! مثل Access که میشه براش رمز بزاریم حالا شما با این روش که گفتین تمام فیلد های جدول اینکریپت میشه.

خوب مستر کی که رمزی هست که ما انتخاب میکنیم

سرتیفیکیت که روی بانک مستر گفتید چی هست؟

و توی این روش اون شخصی که فایل بانک دستشه حداقل میتونه جداول و ارتباطات بینشون رو ببینه؟ حتی اگه اطلاعات رمز شده رو ببینه؟

در خصوص فرمایش اولتون باید بگم خیلی متاسفم از اینکه نمیتونم ویدئو آموزشی این قسمت رو براتون ضبط کنم ولی تا حدی که از دستم برمیومد فایل آموزشی رو براتون محیا کردم چون واقعا فرصت اندکی دارم و برای اینکه به بقیه کارها برسم مجبورم وقتم رو تقسیم کنم . در خصوص فرمایش دومتون بگم که Certificate ها یا همون گواهینامه که شامل یک کلید عمومی (Public Key) هست که اون رو به یک کاربر یا یک سرویس نسبت میدن که با استفاده از یک کلید خصوصی (Private Key) بصورت انحصاری قابل شناسایی هستن . در واقع بیان راحتر شما پایگاهتون رو یک قفل در نظر بگیرید و Certificate رو کلیدی در نظر بگیرید که برای این قفل هست . حالا میتونیم به اینطور بگیم که با استفاده از این تکنولوژی (TDE) وقتی فایل‌ها و یا حتی نسخه‌های پشتیبان بانک اطلاعاتی شما به هر صورت دچار سو استفاده قرار بگیره امکان دسترسی به اطلاعات آن تا زمان ارائه Certificateهای ذخیره شده در پایگاه داده Master وجود نخواهد داشت پس توی این جمله جواب سوال سومتون هم دادم .

امیدوارم پیروز و موفق باشید.