منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
[سؤال] كيف احمي ملف bak - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم قواعد البيانات (http://vb4arb.com/vb/forumdisplay.php?fid=40)
+--- قسم : قسم أسئلة قواعد البيانات تحت بيئة الـ.NET (http://vb4arb.com/vb/forumdisplay.php?fid=41)
+--- الموضوع : [سؤال] كيف احمي ملف bak (/showthread.php?tid=1850)



كيف احمي ملف bak - ABO LYAAN - 08-02-14

السلام عليكم ورحمة الله وبركاته

اخواني الكرام

عملت مشروع في vb.net وعملت صلاحية عمل باك اب لقاعدة البيانات واسترجاعها من نفس البرنامج بصيغه bak ولكن يستطيع المستخدم بعد نسخ قاعدة البيانات ان يستوردها على اي سيرفر sql ويطلع على محتوياتها

ارغب في عمل حماية من الاطلاع على ملف النسخة الاحتياطية وشكرا


RE: كيف احمي ملف bak - matrixmas - 08-02-14

أخى يمكنك عمل حماية لقاعدة البيانات نفسها بحيث لا تعمل إلا فى جهازك (السيرفر) فقط حتى لو عملت اتاتس إلى جهاز أخر أو أخذت نسخة إحتياطية لا تعمل مطلقا


RE: كيف احمي ملف bak - tarek - 09-02-14

يا ريت نعرف الطريقة يا استاذ matrixmas


RE: كيف احمي ملف bak - ABO LYAAN - 09-02-14

شكرا لك اخي matrixmas
ولكن كيف الطريقة ؟


RE: كيف احمي ملف bak - matrixmas - 09-02-14

اخي الكريم
اعتزر عن التاخير ولكن ساقوم بارفاق الكود ولكني في العمل الان واكتب من جوالي
قم بالبحث عن طريقه حمايه قاعده البيانات بالحمايه القصوي للاخ ابو ايهاب علي ما اتذكر


RE: كيف احمي ملف bak - matrixmas - 09-02-14

وفرت قواعد البيانات SQL server 2008 طريقة جديدة لتشفير قواعد البيانات .

بهذه الطريقة يصبح بإمكانك ضمان أن قاعدة بياناتك أصبح آمنة جدا جدا ولن يستطيع أحد الوصول لها أو فتحها إلا أنت أو برنامجك .

حتى لو حاول أحدهم ربط Attach قاعدة بياناتك بسيرفر آخر يكون فيه هو المدير فإنه لن يستطيع أن يفتح تلك القاعدة أبدا .

وحتى لو حاول أحدهم فتح القاعدة ببرنامج محرر نصوص عادي فإنه لن يرى أي نصوص .


خطوات حماية قاعدة بياناتك بشكل آمن 100% :

- أنشيء مخدم SQL بنظام ثقة مختلط بين الويندوز وبين SQL Server .

- احذف جميع حسابات الدخول Logins ما عدا SA واحمه بكلمة مرور قوية جدا .

- يمكنك أيضا تغيير اسم SA إلى اسم آخر .

الآن لن يستطيع سواك الدخول إلى هذا المخدم .


- قم بعمل MASTER KEY بواسطة تعليمة sql التالية :

رمز برمجي:
USE master;
GO
CREATE MASTER KEY
ENCRYPTION BY PASSWORD = 'MyStr0ngP@ssw0rd2009';
GO
- قم بعمل شهادة مصدقة بواسطة التعليمة التالية :

رمز برمجي:
USE master;
GO
CREATE CERTIFICATE MasterCert
WITH SUBJECT = 'Cert used for TDE';
GO
- قم بحفظ الماستر كي في ملف خارجي وأبقه بعيدا عن المخدم فقد تحتاجه لاحقا .

رمز برمجي:
USE master;
GO
BACKUP CERTIFICATE MasterCert
TO FILE = 'D:\Backup\MasterCert.bak'
WITH PRIVATE KEY (
FILE = 'D:\Backup\MasterCert.pvk',
ENCRYPTION BY PASSWORD = 'MyB@ckUpP@ssw0rd');
GO
- أخيرا قم بتشفير قاعدة بياناتك بواسطة التعليمة التالية :
رمز برمجي:
USE YouDatabaseName;
GO
CREATE DATABASE ENCRYPTION KEY
WITH ALGORITHM = AES_128
ENCRYPTION BY SERVER CERTIFICATE MasterCert;
ALTER DATABASE YouDatabaseName
SET ENCRYPTION ON;
GO
أخيرا لا تنسى أبدا عمل نسخة احتياطية لقاعدة بياناتك قبل التشفير
في حال فشلت العملية من الأساس فإنك تستطيع استرجاع النسخة الأصلية .


بهذه الخطوات البسيطة تكون قد حميت قاعدة بياناتك من الولوج غير المسموح .

وكذلك من فتحها بواسطة مخدم آخر أو ربطها معه .


RE: كيف احمي ملف bak - ABO LYAAN - 09-02-14

شكرا لك اخي ولكن كيف يتم تنفيذ جمل sql اعلاه في قاعدة البيانات الخاصة بي


RE: كيف احمي ملف bak - matrixmas - 09-02-14

يمكنك فعل ذلك من
sql server management
ثم
New Query