السلام عليكم ورحمة الله وبركاته
الله لايهينكم
ابي كود لاضافة كلمة مرور على اي برنامج واهم شي فيه امكانيه تغيير كلمة المرور من قبل المستخدم
انتظركم يالربع لاتخذلوني
السلام عليكم ورحمة الله وبركاته
الله لايهينكم
ابي كود لاضافة كلمة مرور على اي برنامج واهم شي فيه امكانيه تغيير كلمة المرور من قبل المستخدم
انتظركم يالربع لاتخذلوني
السلام عليكم
انت عايز تعمل كلمه مرور هتحفظها فين
أكيد فى قاعده بيانات
يبقى لازم تحدد نوع قاعده البيانات وطريقه الربط وبعدين أحنا ممكن نساعدك فى الكود المطلوب
تم تعديل هذه المشاركة بواسطة GENIUS-IT في 15 يوليو 2006 في 02:25
Never Give Up You Are Programmer
Being Genius Is The Step Before Madness
Artificial Intelligence Is No Match For Natural Stupidity
اشكرك اخوي جينوس على الرد الفوري
وعلى محاولتك لمساعدتي
طيب اخي افرض اني حفظتها باقاعدة البيانات وخصصت لها حقل معين
لما يتم تغيير كلمة المرور كيف استبدل الحقل الاول
ارجو مساعدتي اخوي جنيوس انا بانتظارك
المطلوب وضع هذا الكود بداخل فورم الباسورد في اول البرنامج
الادوات المطلوبة على الفورم:
TextBox: txtPass
Command Button Command1
private sub Command1_Click()
if txtPass="himan" then 'فحص كلمة المرور المدخلة ومقارنتها بكلمة مرور البرنامج
msgbox "Access is accepted" 'تم السماح بالدخول لان كلمة المرور صحيحة
else
msgbox "Access is denied" 'ممنوع الدخول لخطأ كلمة المرور
Exit sub
end if
end sub
أخي اذا اردت ان تستفسر عن شيء اخر فالرجاء ارسال رسالة على
elsaqer11@hotmail.com
أو اضافتي على الماسنجر لاني لم افهم طلبك جيدا
وان كنت موجود حاليا حدد ماتريد بالظبط
لكي ارد عليك هنا ويستفيد الجميع
مشكور اخوي saqrco ماقصرت يالغالي
انا يالطيب اللي ابيه بالظبط :
لدي مشروع بسيط وهو عباره عن دفتر تلفونات خلصت منه ولله الحمد
واريد ان احميه بكلمة مرور يعني ان تكون كلمة المرور الافتراضيه (0000) المعتاد عليه
واريد ان يكون هناك امكانية لتغيير كلمة المرور
مالعمل ؟؟
انتظر ردك
هل تريد كلمة المرور لتدخل بها البرنامج في فورم خاصة ام ماذا ان كان كذلك اخبرني كي اعمملها لها الان
نعم اريدها في فورم خاص
انتظرك يالغالي
ال انت بتتكلم عنه دا تحديد الصلاحيات في قواعد البيانات
فلازم تحدد طريقه الربط علشان نعطيك الكود او مثال
والله الموفق
redahashem
رضا هاشم
اللهم اصلح امورالمسلمين
سبحان الله وبحمده سبحان الله العظيم
اللهم اهلك من سبب في فرقتنا وسفك دمائنا وزاد همنا وكربنا
saqrco كتب:هذا هو الكود الاساسيللأسف حدث خطأ في لصق الكود هنا
ولكن انظر الى المرفقات
انظر في المرفات لترى كود الفورم كامل
المرفقات *-)
شكرا اخي العزيز انا بعد استفدت من موضوعك
والسموحة على المداخلة:
لكن لم تضع طريقة كيفية يمكن تغير الرقم السري
بعد تنفيذ البرنامج
شاكرا لك
اخوي ماقصرت ولكن انا اريد امكانية تغيير كلمة المرور
فلو صدرت البرنامج بهذا الشكل بملف تنفيذي .exe فسوف تكون كلمة المرور ثابته وهي (0000 ) ولا يمكن تغييرها
لذاك اخي انا اريد ان يكون هناك امكانيه لتغيير كلمة المرور من قبل المستخدم وليس المبرمج
ياليت اخوي تكمل معروفك وتساعدني
السلام عليكم
لقد طلبت منك من قبل ان تحدد نوع القاعد وطريقه البرط
أخى ضاري
لا يمكننى مساعدتك ما لم اعلم طريقه الربط ارجو زكرها او أرفاق المثال للتعديل عليه
Never Give Up You Are Programmer
Being Genius Is The Step Before Madness
Artificial Intelligence Is No Match For Natural Stupidity
اخي جنيوس طلبي واضح ياليت تعطيني مثال جاهز مع قاعدة بيانات
صممها انت كما تريد واعطني ايها
او ساعدني بالشرح وانا اقوم بها
انا فقط اريد كلمة مرور او نموذج كلمة مرور مع امكانية تغيير كلمة المرور
شوف يا ضاري ..:)
والله شفت اسمك ذكرني بولد أختي :)
الله يذكره بالخير ..:)
شوف ي حبيبي ..:: هذا يعتمد على دوال الريجستري اذا تعرفهم .
GetSetting و SaveSetting ..
اذا تغرف تستخدمهم ولا قلي احط لك سورس كود للمشروع .. الان لأني فاضي :) .
وبدون قواعد بيانات ..:)
هلا وغلا اخوي ماجد اعتبرني ولد اختك *-*
ياليت تساعدني وتعطيني السورس لاني ماعرف استخدمهم
انتظرك ياخالي *-*
سم يا حبيبي :) ..
حمل المرفقاات ..
واي خدمة انا حاظر ..:)
علماً بان الرقم الافتراضي في البرنامج هو ( فراغ : يعني لا تكتب شي اضغط دخول على طول )
وبامكامك تغييرة من داخل ..:)
سي يو ليتر ...:)
السلام عليكم ورحمة الله وبركاته
اخي لقد تحدثت في هذا الموضوع منذ حوالي سنة تقريبا وقد أعددت مثال لهذا الغرض واليك الشرح الذي كتبته مع مثال جاهز
بسم الله الرحمن الرحيم
الفكرة بسيطة جدا وهي كلها عبارة عن وضع باسورد في قاعدة البيانات
طبعا الحكاية سهلة جدا اذا كنت سوف تضع مجرد باسورد في الكود
ولكن في الواقع هذا غير ممكن حيث ان المستخدم لا بد وأنه سوف يحتاج لتغيير
هذه الباسورد من وقت لآخر فما هو الحل ؟
الحل ببساطة شديدة هو انك تصنع حقل في قاعدة البيانات يحتوي على الباسورد
وفي كل مرة تحتاج لتغيير الباسورد تقوم بتغيير محتوى الحقل عن طريق برنامجك
1- بما انك وضعت الباسورد في قاعدة البيانات فالعقل يقول ان قاعدة البيانات لا بد أن تكون محمية بكلمة سر اخرى
والا سوف يتمكن أي شخص من معرفتها بمجرد انه يفتح قاعدة البيانات
2- قواعد بيانات أكسس من السهل جدا معرفة كلمة المرور الخاصة بها وهناك برامج جاهزة لعمل ذلك
==============
ولذلك يجب عليك ان تستخدم تقنية لتشفير كلمة المرور قبل حفظها في قاعدة البيانات ممكن تخترعها بنفسك او تستخدم ادوات جاهزة حسب رغبتك
ملحوظة :
لقد استخدم تقنية الـ DAO في هذا المثال وطبعا ليس هناك فرق كبير بينها وبين الـ ADO
==============
وأرجو معرفة رأيك واذا لم يكن يفي بالغرض فأخبرني وان شاء الله نعمل المطلوب
الى اللقاءpasswd.rar
JusT LeT YouR MinD WorK
وين رحت يا ضاري ..:)
مشى معك البرنامج ولا لا ؟:)
اخي العزيز
قم بوضع كلمتك الإفتراضية 0000 في قاعدة البيانات باليد عادي
وعند التغيير طبعا ده ليه زر خاص في المشروع بتاعك
في هذا الزر
قم بكتابة جملة استعلامية اللي هي Update
سيتغير على طول 0000 الى اي كلمة المستخدم يدخلها
Mohamed Ali Salim
0.1..0...4....7.....6......2.......7........4.........8
أنا لدي سؤال الان ؟
لماذا الكل يعتمد على قواعد البيانات في هذا المجال ؟؟:)
بامكان الشخص ان يدخل لقاعدة البيانات وياخذ كلمة السر :)
اما دوال الريجستري فلا يمكن له ابداً :) ..
السلام عليكم ورحمة الله وبركاته
اخي ليس الاعتماد على قاعدة بيانات ولا شئ ولكن هو مجرد توضيح فكرة ليس اكثر قالطرق كثيرة
ولا يعني ذلك انه ممكن اخذها من قاعدة البيانات لان قاعدة البيانات يجب حمايتها والا اذا تم الدخول اليها فما فائدة الباسورد للبرنامج اصلا ؟؟
اما الريجستري فالوصول اليها سهل جدا
فالطرق كثيرة فمن الممكن حفظها في ملف notpad واخفاؤه في مكان مجهول
وفي كل الاحوال والطرق كما ذكرت في الشرح يجب استخدام اي تقنية لتشفير كلمة المرور والا فان الحماية تكون ضعيفة
اتمنى تكون فهمت قصدي :)
===========
الى اللقاء
JusT LeT YouR MinD WorK
السلام عليكم
الحكاية يا جدعان بسيطة جدا
انا زي ما قلت لكم في الأول
في الجدول مثلا اسمه user الحقل اللى اسمه Password
هانكتب 0000 الكلمة الإفتراضية
ماشي ؟؟
وبعدين نيجي بقى في الزر بتاع تسجيل الدخول
المفروض انه هايفحص اذا كان الكلمة اللي كتبها المستخدم في مكان كلمة المرور صحيحة ام لا
اي تساوي 0000 ام لا
هانكتب كدة
-----------------------------------------------------------------------
SQL = "select * from user where Password = '" & Text1.Text & "' "
Re.Open SQL, Connection, adOpenDynamic, adLockReadOnly
If Re.EOF And Re.BOF Then
MsgBox "Invalid Password", vbCritical, "Error"
Exit Sub
Else
Unload Me
form2.Show
End If
---------------------------------------------------
,وبكدة اذا كان المستخدم كتب فعلا 0000 البرنامج هايشوف 0000 موجودة عنده في قاعدة البيانات في الجدول user في الحقل Password طبعا هايلاقيها
هايدخل على البرنامج بنجاح
اما اذا لم يكتب 0000 وليكن مثلا كتب اي شئ اخر 1254 البرنامج هايروح يدور على الرقم ده ومش هايلاقيه طبعا
هايطلعله رسالة خطا اللى احنا كتبناها بإدينا
بس كدة
اما بالنسبة لتغير الكلمة فأمرها برضوا سهل جدا
تعالى عند الزر الخاص بتغير كلمة المرور
طبعا الزر ده لازم يكون جو البرنامج
يعني بعد ما المستخدم يسجل الدخول فعلا
ده نوع من الشياكة بس مش أكثر
يعني انت ممكن تحطه في اي حته
المهم
هاتضع مربع نص واحد وزرار امر
هاتكتب في الزر الكلام ده
----------------------------------------------------
SQL = "update user set password = '" & Text1.Text &"' "
Re.Open SQL, Connection, adOpenDynamic, adLockReadOnly
----------------------------------------------------------------------------
وبكدة انت شلت كلمة السر القديمة اللي هي 0000 من القاعدة وغيرتها اللى الكلمة اللي انت كتبتها في المربع النصي
وشكرا
Mohamed Ali Salim
0.1..0...4....7.....6......2.......7........4.........8
هلا خالي ماجد اسف على التأخير
طريقتك هي المطلوبة بالتمام وهذا ماردت الوصول اليه
فجزاك الله خير يالغالي ماقصرت ويعطيك الف عافيه
اما ياخوان طريقة تخزينه بقاعدة البيانات فهذي غير ناجحه لانه مثل ماذكرتم يمكن معرفتها
عن طريق الدخول على القاعدة
فاعتقد ان طريقة خالي ماجد *- * هي افضل والمناسبة تمام
عموما الشكر للجميع وجزا الله خير لكل من ادلا بدلوه وباذن الله نواصل النقاش والحلول بهذا الموضوع
ومن لدية ملاحظات لايبخل علينا حتى نصل الى الطريقه النموذجيه
شكرا للجمييييييييييع
اقتباساما الريجستري فالوصول اليها سهل جدا
ممكن عزيزي توضح هذه النقطه :) ..
ومنكم نستفيد ..
السلام عليكم ورحمة الله وبركاته
اخي العزيز ماجد
أولا بالنسبة لطريقة صديقنا العزيز MohamedAliSalim وارجو الا يتضايق مني
فهي لا تصلح ابدا للاستخدام في هذا الغرض ... لماذا ؟
لأنه لو تعدد المستخدمين فمن الممكن فقط الدخول للبرنامج عن طريق التخمين ومن ثم الوصول الى اي كلمة من المخزن في قاعدة البيانات
هذا غير انه لم يربط بين كلمة المرور واسم المستخدم
ومن ناحية اخرى اعتمد على تخزين كلمة المرور في قاعدة البيانات وبالتالي اي شخص يمكنه فتح قاعدة البيانات سيكون بامكانه رؤية كلمة المرور وطبعا سيأخذها الى البرنامج ويجعله يعمل بشكل طبيعي فكان لابد أن يذكر طريقة من طرق حماية قاعدة البيانات
اما عن تخزين كلمة المرور في الريجستري فانه يمكن الوصول اليها بمجرد البحث في الريجستري مع قليل من الخبرة في التعامل معه
اذا ما الحل ؟؟
الحل من وجهة نظري هو كمان ذكرت استخدام تقنية معينة في تشفير كلمة المرور ووضعها في اي مكان تريده
بحيث عندما نقوم بتخزين كلمة المرور يتم تشفيرها اولا ثم تخزينها وعند دخول البرنامج يتم تشفيرها مرة اخرى وتتم عملية مقارنة بين كلمتي المرور المخزنة والمدخلة وبالتالي النتيجة ستحكم بدخول البرنامج ام لا
-----------
اما عن المثال الذي وضعته في ردي السابق فهو يوضح كيفية وضع كلمة المرور مع امكانية تغييرها فقط وليس مع استخدام التشفير ولذلك الموضوع يتطلب منك بعض البحث
وان شاء الله بعد ان انتهي من البرنامج الذي أصممه حاليا سأضع طريقة جيدة لحماية البرنامج مع استخدام تقنيات تشفير مثل blue fish & DES and MD5
وهي كلها معروفة ومشهورة
تمنياتي بالتوفيق
===================
الى اللقاء
JusT LeT YouR MinD WorK
هذا الموضوع مغلق.
المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية
جارٍ التحقق من المتواجدين…