dd13901390 قام بنشر يناير 4 قام بنشر يناير 4 اولا اشكر من قام على هذا البرنامج المستخدمين فقط اريد ان اضيف عليه اختيار النماذج للصلاحيات ولم استطع لعم الفائدة للجميع الرجاء المساعدة في ذلك مع اظهار اسماء النماذج كلها في القائمة المنسدلة user :aa باسورد 123 قالب جاهز لنموذج تسجيل الدخول وتغيير كلمة المرور والصلاحيات.zipFetching info...
kkhalifa1960 قام بنشر يناير 5 قام بنشر يناير 5 أستاذ @dd13901390 العنوان غير مناسب لطلبك . عدل العنوان من فضلك . أما عن جلب اسماء النماذج بالقائمة المنسدلة :- تفضل بالمرفق . قالب جاهز لنموذج تسجيل الدخول وتغيير كلمة المرور والصلاحيات-1.rarFetching info...
dd13901390 قام بنشر يناير 5 الكاتب قام بنشر يناير 5 الف شكر اخوي kkhalifa1960 بس اخوي ما حصلت الاجابة ابغى من اختيار النماذج اعطى صلاحيات عليها مثلا شاشة تعديل الرقم السري اذا لم اعطيه صلاحية لا يفتح له شاشة الصلاحيات تظهر رسالة ليس لديك صلاحية هذا قصدي ولك جزيل الشكر
hanan_ms قام بنشر يناير 7 قام بنشر يناير 7 =============================================( صور + مرفق + فيديو ) Update: 🌹 @dd13901390🌹☕ قدمت لك طلبك وانا لم انتهي منه للتحكم بالحساب والصلاحيات 1- قائمة في نموذج تسجيل الدخول اذا كنت مطور او آدمن او مستخدم 2-تسجيل شركة او مؤسستك او قطاع عملك على البرنامج او نظامك مع اضافة اشعار والخلفية لنموذج تسجيل الدخول (مرونة بالتعديل على البيانات) 3- استايل بقائمة سفلية يمكن الاستفاده منها 4- انشاء حسابات وانشاء قائمة النماذج والتقارير للصلاحيات 5- تحكم بالصلاحيات والتحديث عند اختيار المستخدم 7- تحديث المسار الصور تلقائي عند الفتح + مرفق 6- طلبك عند فتح النموذج كود بسيط @dd13901390 ☕ '=====================( Err (1) And Exit (2) For On Error GoTo Look daown On Error GoTo Err_Ops '==============================================(Chack frist) If IsNull(DLookup("[name_frm]", "[Control_User]", "[name_frm] ='" & "QR" & "'")) Then MsgBox " Opes back setting for Error Forget this form Open Or Now Awoch ", vbCritical, "Close Done " & Date Exit Sub End If '========================================( Now Look Open Or No = Back User (Out) If DLookup("[open_frm]", "[Control_User]", "[name_frm] ='" & "QR" & "'") = True Then DoCmd.OpenForm "QR" Else MsgBox "لا تملك صلاحية الدخول او ليس لك حق الدخول او تم حظرك من الدخول او تم منعك من الدخول ", vbExclamation, "رسالة ادارية راجع المسؤل المختص " & Date Exit Sub End If '================================( name Err Exit (1) Exit_Ops: Exit Sub '================================( name At On Err 2 Err_Ops: MsgBox err.Description & err.number '========================================================( IF No Error Go Back Exit To (1) Resume Exit_Ops تابع الفيديو للتوضيح اسفل الموضوع + تحميل المرفق ☕ =============================================( مرفق + فيديو ) هذا هو طلب V1_LoginIN_Whit_Exprot_FileAuto_Ms_Access.rarFetching info... 2
kkhalifa1960 قام بنشر يناير 7 قام بنشر يناير 7 تفضل أخي @dd13901390 مرفق عملته للتجريب إذا كان هذا طلبك بطبقه على مرفقك . DDTestPermissions.rarFetching info... 1
Moosak قام بنشر يناير 7 قام بنشر يناير 7 هذه مشاركتي مع الشباب بحكم معرفتي بالقالب الذي صممته سابقا 🙂 أضفت لجدول المستخدمين حقل لقائمة النماذج التي في البرنامج لتحديد النماذج المسموح بها : بعد ذلك صممت دالة تقوم بفحص ما إذا كان النموذج المحدد هو من ضمن النماذج المسموح بها بناءا على المستخدم الحالي (الذي قام بتسجيل الدخول) هذه الدالة تعطيها اسم النموذج > وستفحص إن كان هذا النموذج من ضمن الصلاحيات > وستعطيك True أو False حسب ما إذا كان النموذج من ضمن الصلاحيات أو لا .. وكذلك تغلق النموذج الغير مسموح بدخوله .. ولتطبيق الكود على النماذج فقط ضع هذه الجملة في حدث عند الفتح للنماذج التي تريد تطبيق الصلاحيات عليها : للتحميل : قالب تسجيل الدخول مع صلاحيات دخول النماذج.accdbFetching info... 2
hanan_ms قام بنشر يناير 7 قام بنشر يناير 7 =============================================( صور + مرفق + فيديو ) Update: 🌹 بعد اذن الاستاذ @Moosak ❤️🌹☕ تغير الدالة مع الكود بمرفقك بالكامل يعمل مع اي تقرير او نموذج من غير كتابة اسمة بداله واحده فقط 😇 تلقائي Auto اسهل صلاحيات لكافة النماذج والتقارير والطباعة بدالة وحده اشر بالجدول بس يعني سو جدول وتقرير جديد اختر من الجدول صلاحيات مباشره شباب ؟! 😂 (حدث عند التحميل) كود الاستدعاء: '=============================( Only 2 Code Function For Chack User '=====================================( IF Form (1) Call FormsAllowed(Me.Form.name) '=====================================( IF Report (1) 'Call FormsAllowed(Me.Report.name) الدالة : Option Compare Database Option Explicit Public Function FormsAllowed(ByVal strname As String) As String '(FrmName As String) As Boolean ' ===========! Dim name_x As String name_x = FormsAllowed '==============================================(Chack frist) If IsNull(DLookup("[name_frm]", "[Control_User]", "[name_frm] ='" & strname & "'")) Then MsgBox " Opes back setting for Error Forget this form Open Or Now Awoch ", vbCritical, "Close Done " & Date DoCmd.Close acForm, strname Exit Function End If '============================================================================( Open Form If DLookup("[open_frm]", "[Control_User]", "[name_frm] ='" & strname & "'") = True Then DoCmd.OpenForm strname Else MsgBox "لا تملك صلاحية الدخول او ليس لك حق الدخول او تم حظرك من الدخول او تم منعك من الدخول ", vbExclamation, "رسالة ادارية راجع المسؤل المختص " & Date DoCmd.Close acForm, strname Exit Function End If '============================================================================( AllowAddition If DLookup("[add_new]", "[Control_User]", "[name_frm] ='" & strname & "'") = True Then Forms(strname).AllowAdditions = True Else Forms(strname).AllowAdditions = False End If '============================================================================( AllowDeletion If DLookup("[delet]", "[Control_User]", "[name_frm] ='" & strname & "'") = True Then Forms(strname).AllowDeletions = True Else Forms(strname).AllowDeletions = False End If '============================================================================( AllowEdits If DLookup("[editor]", "[Control_User]", "[name_frm] ='" & strname & "'") = True Then Forms(strname).AllowEdits = True Else Forms(strname).AllowEdits = False End If End Function Public Function Print_Allowed(ByVal strname As String) As String '==============================================(Chack frist) If IsNull(DLookup("[name_frm]", "[Control_User]", "[name_frm] ='" & strname & "'")) Then MsgBox " Opes back setting for Error Forget this form Open Or Now Awoch ", vbCritical, "Close Done " & Date DoCmd.Close acForm, strname Exit Function End If '============================================================================( Print into Button Or If Keybord If DLookup("[print]", "[Control_User]", "[name_frm] ='" & strname & "'") = True Then DoCmd.OpenReport strname DoCmd.RunCommand acCmdPrint Else MsgBox "لا تملك صلاحية طباعة التقرير او ليس لك حق بالطباعة او تم حظرك من الطباعة او تم منعك من الطباعة ", vbExclamation, "رسالة ادارية راجع المسؤل المختص " & Date Exit Function End If End Function @dd13901390🌹☕ 2- تعديل واستكمال بعض تابع الفيديو للتوضيح اسفل الموضوع + تحميل المرفق ☕ =============================================( مرفق + فيديو ) V2_One_FunctionLoginIN_Whit_Exprot_FileAuto_Ms_Access.rarFetching info... 1 1
dd13901390 قام بنشر يناير 8 الكاتب قام بنشر يناير 8 شاكرين جميعا وبالاخص Moosak والله يعطيكم العافية 1
hanan_ms قام بنشر يناير 16 قام بنشر يناير 16 نفترض مشروع اكسس متشعب :محاسبة قسم الميزانية والرواتب :ادارة قسم الحضور والغياب جعل النماذج والتقارير مجموعات قبل الصلاحيات لا يمكن اظهار صلاحيات المجموعات الاخرى فقط مجموعة قسم المستخدم فقط ( بيطبيعة العمل ================================================ اضافة تحكم بالصلاحيات للمسئول المباشر وتخصيص للمراقب والمدير عرض الكل
شايب قام بنشر يناير 16 قام بنشر يناير 16 في 7/1/2025 at 09:28, Moosak said: هذه مشاركتي مع الشباب بحكم معرفتي بالقالب الذي صممته سابقا Expand الاخ شايب يقدر دور الاساتذة والخبراء ولكن طريقة كتابة الكود لشاشة الدخول من الاساس يمكن اختراقها والدخول باي اسم وان لم يكن ضمن المسجلين في جدول المستخدمين علما بان اخانا الفاضل شايب سبق ان حذر من هذه الثغرة وثغرات مشابهة لها فما فائدة نظام صلاحيات قوي بينما يمكن الوصول الى شاشة منح الصلاحيه بكل سهولة ويسر املاه اخونا الشايب 2 1
ابو جودي قام بنشر يناير 16 قام بنشر يناير 16 في 16/1/2025 at 06:00, شايب said: ولكن طريقة كتابة الكود لشاشة الدخول من الاساس يمكن اختراقها والدخول باي اسم وان لم يكن ضمن المسجلين في جدول المستخدمين Expand تقصد : SQL Injection
ابو جودي قام بنشر يناير 16 قام بنشر يناير 16 انا الان بت حريصا على استخدام التالى : تشفير كلمة المرور : HashPasswordSHA256 استخدام المعلمات عن طريق : QueryDef هل هذا كافى يا استاذ @شايب لتجنب مثل هذه الهجمات والاختراقات المتقدمه الممكنة كود تشفير كلمات المرور بالشكل التالى Public Function HashPasswordSHA256(ByVal Password As String) As String Dim xmlObj As Object Dim bytes() As Byte Dim hash() As Byte Dim i As Integer Dim result As String ' استخدام كائن MSXML2 Set xmlObj = CreateObject("System.Security.Cryptography.SHA256Managed") ' تحويل النص إلى مصفوفة بايتات bytes = StrConv(Password, vbFromUnicode) ' حساب التجزئة hash = xmlObj.ComputeHash_2(bytes) ' تحويل النتيجة إلى سلسلة نصوص For i = LBound(hash) To UBound(hash) result = result & LCase(Right("0" & Hex(hash(i)), 2)) Next i ' إعادة النتيجة النهائية HashPasswordSHA256 = result ' تنظيف الموارد Set xmlObj = Nothing End Function اما بخصوص استخدام المعلمات عن طريق : QueryDef هذا شكل الاستعلام للتحقق من البيانات Dim db As DAO.Database Dim qdf As DAO.QueryDef Dim rst As DAO.Recordset Dim strSQL As String ' SQL مع معلمات strSQL = "SELECT UserName, IsActive FROM Users WHERE UserName = [paramUserName] AND Password = [paramPassword]" ' إعداد قاعدة البيانات وإنشاء QueryDef Set db = CurrentDb Set qdf = db.CreateQueryDef("", strSQL) ' تعيين القيم للمعلمات qdf.Parameters("paramUserName").Value = Me.UserNametxt qdf.Parameters("paramPassword").Value = Me.Passwordtxt 1
Moosak قام بنشر يناير 16 قام بنشر يناير 16 في 16/1/2025 at 06:00, شايب said: Expand كيف تم الاختراق شايبنا ؟ ماذا كتبت مكان كلمة المرور ؟ طيب جرب مع هذا : 🙂👈 قالب تسجيل الدخول مع صلاحيات دخول النماذج.accdbFetching info... 1 1
شايب قام بنشر يناير 16 قام بنشر يناير 16 في 16/1/2025 at 08:40, ابو جودي said: تقصد : SQL Injection Expand نعم يا استاذنا هذه واحدة وثغرة اخرى من خلال ارسال امر يتجاوز شاشة تسجيل الدخول ولكن لم اقم بتصويرها في 16/1/2025 at 09:05, ابو جودي said: هل هذا كافى يا استاذ @شايب لتجنب مثل هذه الهجمات والاختراقات المتقدمه الممكنة Expand اخونا الشايب مبتدئ وليس باستاذ ولكن اعتقد انه يكفي مع الاخذ بعين الاعتبار ان اكسس ضعيف في موضوع الحماية واذكر في موضوع سابق من عدة سنوات تحدثنا عن ثغرة مختلفة وقمتم بارسال ملف عالج الموضوع بشكل متميز لذا يعتقد الاخ شايب ان اكواد محمد عصام عصيه على الكسر وخصوصا من شايب مبتدئ في 16/1/2025 at 10:38, Moosak said: كيف تم الاختراق شايبنا ؟ Expand تم الاختراق عن طريق حقن النصوص وهنا كتبنا كلمة المرور باسلوب معين وهذه الطريقة ليست حكرا على الاكسس وانما اي استعلام لم يتم اخذ الاحتياطات الخاص ببعض الحروف والرموز في 16/1/2025 at 10:38, Moosak said: ماذا كتبت مكان كلمة المرور ؟ Expand كتبت x' or 'x'='x او اي كلمة المهم توظيف الرمز . بشكل صحيح في 16/1/2025 at 10:38, Moosak said: طيب جرب مع هذا : 🙂👈 Expand ممتاز 👍 اخونا الشايب 1
الردود الموصى بها
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.