الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

كيفية عمل SQL Server DataBase Encryption

مغلقمُجاب
بدأه Develooper في 3 فبراير 2013 · 4 رد · 4,136 مشاهدة · في قواعد بيانات Microsoft SQL Server
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم 

بحثت كثير عن عمل Encryption  لقاعدة بيانات SQL Server 

ولكن  وجدت عمل تشفير للحقل ووجدت ايضا تشفير عن طريق lescens

وما عرفتش ازاى اقدر انفذ الكود 

بالمختصر انا عامل قاعدة بيانات على سيرفير مش عايز اى حد يقدر ياخدها ويعمل ليها رفع على سيرفر اخر 

وطبعا لو هى متشفره مش هيقدر يفتحها غير الى عمل التشفير طبعا لو هى اكسس بقدر استخدم كود التشفير الخاص بدوت نت 

لكن عند استخدامه مع SQL Server يقولى ان قاعدة البيانات مستخدمه

 

ولكم جزيل الشكر 

لك الحمدُ ،،، على - مَا مضى . .

وَ لكَ الحمدُ ،،، على مَا أنا ، به الآن . .
وَ لكَ الحمدُ ،،، على - مَا سيأتي . .
وَ لكَ الحمدُ ،،، على كُلِ حال . .
الحمد لله على نعمة الاسلام و كفى بها نعمة

#2

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

 

في طرق كثير أخي الكريم .. إليك أبسطها و أسرعها إذا كنت تريد تجنب فهم مفاتيح التشفير المتناظرة و غير المتناظرة ..

 

الطريقة هي التشفير بواسطة عبارة تمررها لدالة تشفير تتولى الموضوع و تعيد لك خرج من نوع Varbinary و يمكنك فك التشفير أيضاً بسهولة , إليك مثال:

 

 

 

 
Declare


@text Nvarchar(200) = N'أي نص تريد تشفيره'
Declare


@key Nvarchar(100) = 'My key'
-- Encrypting
Declare


@EncryptedResult Varbinary(max) = EncryptByPassPhrase(@key, @text)
Select


@EncryptedResult
 
-- Decrypting
Select


Cast( DecryptByPassPhrase(@key, @EncryptedResult) as Nvarchar(200) )

 

أرجو الفائدة

دروس و كتب مفيدة----------------------كتيب الإجرائيات المخزنةتعرف على اللغة Transact SQL <<-->> كتيب عن تنصيب قواعد البيانات Sql Server باللغة العربية كتيب عن إنشاء قواعد البيانات في SQL Server باللغة العربية <<-->> درس مع الأمثلة عن المؤشرات و التعامل معها في الـ T-SQLالعبارات الشرطية و الحلقات في T-SQL <<-->> شرح لبعض الـ Extended Stored Procedure استخدام مكتبات الـ Dot Net الخاصة بك في الـ Sql Server 2005 <<-->> التعامل مع المصفوفات من خلال الـ T-SQLتعابير الجداول الشائعة في SQL Server 2005 <<-->>الاتصال بالأداة SQL Server Management Studioحلول سريعة و لمحات برمجية --------------------------------التصدير إلى إكسل : طريقة أولى : طريقة بسطر واحد من الكود <<-->> طريقة ثانية : طريقة تحتاج إنشاء إجرائية مخزنةً تجهيز بيانات جدول بالصيغة XML تمهيداً لحفظها كملف <<-->> تصدير البيانات إلى ملفات نصية برمجياً إغلاق جميع الإتصالات المفتوحة بقاعدة بيانات محددة .. تمهيداً لاسترجاعها أو حذفها <<-->> الاستعلام بناء على وقت مخزن بالصيغة العربية ضمن حقل نصي ..حذف السجلات المتكررة و إبقاء عدد محدد منها في جدول.. <<-->> أسرع طريقة لحذف سجلات جدول كيف احصل على اسم جهازي والباسوورد باستخدام T-SQL <<-->> حشر أنواع الصور المختلفة في حقل من نوع Image باستخدام إجرائية مخزنة .كيف تعرف أنواع الصور المخزنة في حقل من نوع Image .. <<-->> إجرائيات مخزنة ببارامترات ديناميكية مفيدة جداً للاستعلامات استخدام رقم الحقل بدلاً من الإسم في عبارات الإستعلام <<-->> من هو أضخم الجداول في قاعدة بياناتي ؟معرفة زمن تنفيذ الإجرائيات ( لتختار الطريقة الأسرع بين إجرائياتك المخزنة ) <<-->> التعامل مع الـ Rules برمجياً الحصول على آخر صف في الجدول <<-->> قراءة ملفات XML باستخدام T-SQL برمجياً (مثال مرفق)سحب بيانات ملف إكسل إلى الـ SQL Server <<-->> تشفير النسخة الاحتياطية بكلمة مرور <<-->> التخلص من البيانات المكررة <<-->> حل مشكلة التاريخ الهجريDifferential Backup بالتعريف---------- لا إله إلا الله .. محمد رسول الله

أخوكم في الله..  Imad Ozone

#3

السلام عليكم 

مشكور اخى على الرد بس ده تشفير نص ولكن انا عايز اقوم بعمل تشفير لقاعدة البيانات كلها 

Database.MDF

يعنى عندى قاعدة بيانات على السيرفير عايز اعمل ليها حماية ان محدش يقدر ياخدها نسخ ويرفها على سيرفير او جهاز اخر يعنى ميقدرش يشغلها غير الى شفرها 

مثلا بالكود نقدر نشفر قاعدة بيانات اكسيس

 

 

-- Encrypting

 

        Dim f1 As New FileInfo(Application.StartupPath & "\DBE.mdb")
        TextBox14.Text = f1.ToString
        Dim fs As New FileStream(TextBox14.Text, FileMode.Open, FileAccess.ReadWrite)
        Dim x As Byte() = New Byte(9) {}
        Dim y As Byte() = New Byte(9) {}
        fs.Seek(0, SeekOrigin.Begin)
        fs.Read(x, 0, 10)
        fs.Seek(-10, SeekOrigin.[End])
        fs.Read(y, 0, 10)
        fs.Seek(0, SeekOrigin.Begin)
        fs.Write(y, 0, 10)
        fs.Seek(-10, SeekOrigin.[End])
        fs.Write(x, 0, 10)
        fs.Close()

 

-- Decrypting

 

        Dim f1 As New FileInfo(Application.StartupPath & "\DBE.mdb")
        TextBox14.Text = f1.ToString
        Dim fs As New FileStream(TextBox14.Text, FileMode.Open, FileAccess.ReadWrite)
        Dim x As Byte() = New Byte(9) {}
        Dim y As Byte() = New Byte(9) {}
        fs.Seek(0, SeekOrigin.Begin)
        fs.Read(x, 0, 10)
        fs.Seek(-10, SeekOrigin.[End])
        fs.Read(y, 0, 10)
        fs.Seek(0, SeekOrigin.Begin)
        fs.Write(y, 0, 10)
        fs.Seek(-10, SeekOrigin.[End])
        fs.Write(x, 0, 10)
        fs.Close()
------------
لكن مع قاعدة بيانات 
SQl Server 
بيرفض التشفير وتظهر رساله ان قاعدة البيانات مستخدمة 
وبحثت لاقت طرق لحماية قاعدة البيانات 
SQl Server 
وتشفيرها ولكن ارجو الافاده لانى موصلتش للمطلوب 

لك الحمدُ ،،، على - مَا مضى . .

وَ لكَ الحمدُ ،،، على مَا أنا ، به الآن . .
وَ لكَ الحمدُ ،،، على - مَا سيأتي . .
وَ لكَ الحمدُ ،،، على كُلِ حال . .
الحمد لله على نعمة الاسلام و كفى بها نعمة

#4 أفضل إجابة

أخي الفاضل

الاكسس شيء و SQL Server شيء آخر

تظهر لك رسالة بان قاعدة البيانات مستخدمة لان SQL Service مازال يعمل وقاعده البيانات Attached داخل SQL Instance لذلك الاسلوب الذي تتبعة مع الاكسس لا يصلح مع SQL Server

والاصلح لحل هذه المسألة أن يكون حساب الكنترول بانل الخاص بالسيرفر يكون معك لوحدك ولا يطلع عليه اي شخص هذا في حالة ان قاعده البيانات علي ويب

أما اذا كانت قاعده البيانات علي سيرفر محلي فيجب عمل windows log on ولا يعرفة الا الــ administrator والمصرح له فقط الدخول علي هذه الماكينة او السيرفر ولا يجوز لاي شخص الدخول علي هذا الجهاز وان حكم الامر ولابد من دخول المستخدمين علي هذه الماكينة فيكون لهم صلاحية عدم العبث في نظام التشغيل او SQL Service و SA password عن طريق windows Group policy غلق منافذ USB والــ Share و CD Room  و كل ما يتعلق بنقل ملفات قاعده البيانات من علي السيرفر وان شاء الله بعدها تكوت القاعده في أمان

تم تعديل هذه المشاركة بواسطة محمد فؤاد تركي في 5 فبراير 2013 في 19:19

certifiedj.jpg

 

 

Image Hosted by ImageShack.us
#5

تمام اخى محمد 

مشكور على التوضيح 

لك الحمدُ ،،، على - مَا مضى . .

وَ لكَ الحمدُ ،،، على مَا أنا ، به الآن . .
وَ لكَ الحمدُ ،،، على - مَا سيأتي . .
وَ لكَ الحمدُ ،،، على كُلِ حال . .
الحمد لله على نعمة الاسلام و كفى بها نعمة

هذا الموضوع مغلق.

مواضيع مشابهة