ASP.NET Web Pages - دالة WebSecurity
- الصفحة السابقة فئات WebPages
- الصفحة التالية قاعدة بيانات WebPages
وصف
يُقدم دالة WebSecurity الأمان والتوثيق لتطبيقات ASP.NET Web Pages.
من خلال دالة WebSecurity، يمكنك إنشاء حسابات المستخدمين، تسجيل الدخول والخروج، إعادة تعيين أو تغيير كلمات المرور وما إلى ذلك.
دليل Referencia لـ WebSecurity - Properties
خصائص | وصف |
---|---|
CurrentUserId | يُحصل على ID المستخدم الحالي. |
CurrentUserName | يُحصل على اسم المستخدم الحالي. |
HasUserId | يُحصل على القيمة التي تشير إلى ما إذا كان المستخدم الحالي يمتلك ID المستخدم. إذا كان كذلك، يُعاد true. |
IsAuthenticated | يُحصل على حالة التحقق من هوية المستخدم الحالي. |
دليل Referencia لـ WebSecurity - Methods
خصائص | وصف |
---|---|
ChangePassword() | يُغيّر كلمة المرور للمستخدم. |
ConfirmAccount() | يُؤكد صحة الحساب ويُنشطه. |
CreateAccount() | يُنشئ حساب مستخدم جديد. |
CreateUserAndAccount() | يُنشئ حساب مستخدم جديد. |
GeneratePasswordResetToken() | يُنشيء رمز استعادة كلمة المرور الذي يمكن إرساله عبر البريد الإلكتروني للمستخدم. |
GetCreateDate() | يعود بـ تاريخ وتوقيت إنشاء الحساب العضوي المحدد. |
GetPasswordChangeDate() | يعود بـ تاريخ وتوقيت آخر تغيير كلمة المرور الخاصة بالحساب العضوي المحدد. |
GetPasswordFailures SinceLastSuccess() |
يعود بالعدد المرات التي تم فيها إدخال كلمة المرور بشكل خاطئ منذ آخر تسجيل دخول أو إنشاء حساب عضوية. |
GetUserId() | يعود بـ ID المستخدم بناءً على اسم المستخدم المحدد. |
GetUserIdFrom PasswordResetToken () |
يعود ID المستخدم من رمز إعادة تعيين كلمة المرور. |
InitializeDatabaseConnection() | يتم تعيين نظام العضوية عن طريق الاتصال بقاعدة بيانات تحتوي على معلومات المستخدم. |
IsAccountLockedOut() | يعبر عن ما إذا كان حساب العضوية المحدد قد تم حجبه بسبب محاولات كلمة المرور الفاشلة. |
IsConfirmed() | يعود قيمة تشير إلى ما إذا كان المستخدم قد تم تأكيده. |
IsCurrentUser() | يعود قيمة تشير إلى ما إذا كان اسم المستخدم للمستخدم المحقق مطابقًا لاسم المستخدم المحدد. |
Login() | تسجيل المستخدم. |
Logout() | إلغاء تسجيل المستخدم. |
RequireAuthenticatedUser() | إذا لم يتم تسجيل المستخدم، قم بتعيين حالة HTTP إلى 401 (غير مسموح) |
RequireRoles() | إذا لم يكن المستخدم الحالي ينتمي إلى الدور المحدد، قم بتعيين رمز حالة HTTP إلى 401. |
RequireUser() | إذا لم يكن المستخدم الحالي هو المستخدم المحدد، قم بتعيين حالة HTTP إلى 401. |
ResetPassword() | إعادة تعيين كلمة المرور باستخدام رمز إعادة تعيين كلمة المرور. |
UserExists() | تحقق من وجود المستخدم. |
بيانات التقنية
الاسم | القيمة |
---|---|
Class | WebMatrix.WebData.WebSecurity |
Namespace | WebMatrix.WebData |
Assembly | WebMatrix.WebData.dll |
تعيين قاعدة بيانات WebSecurity
قبل استخدام كائن WebSecurity، يجب إنشاء أو تعيين قاعدة بيانات WebSecurity.
في مجلد webroot، قم بإنشاء أو تعديل صفحة _AppStart.cshtml.
اكتب الكود التالي في هذا الملف:
_AppStart.cshtml
@{ WebSecurity.InitializeDatabaseConnection("Users", "UserProfile", "UserId", "Email", true); }
يتم تشغيل الكود المذكور أعلاه في كل مرة يتم فيها تشغيل الموقع.
ـ"Users" هو اسم قاعدة بيانات WebSecurity. (Users.sdf)
ـ"UserProfile" هو اسم جدول قاعدة البيانات يحتوي على معلومات تكوين المستخدم.
"UserId" هو اسم العمود الذي يحتوي على معرف المستخدم (المفتاح الرئيسي).
"Email" هو اسم العمود الذي يحتوي على اسم المستخدم.
المعامل الأخير true هو قيمة منطقية تشير إلى أن يجب إنشاء جدول ملفات المستخدمين وجدول العضوية (إذا لم تكن موجودة)، وإلا فـ false.
نصيحة: على الرغم من أن true يشير إلى إنشاء تلقائي لجداول البيانات، إلا أن قاعدة البيانات نفسها لن تُنشأ تلقائيًا. يجب أن تكون موجودة.
قاعدة بيانات WebSecurity
كل سجل في جدول UserProfile يمثل مستخدمًا واحدًا، ويشمل معرف المستخدم (المفتاح الرئيسي) واسم المستخدم (البريد الإلكتروني):
UserId | البريد الإلكتروني |
---|---|
1 | john@johnson.net |
2 | peter@peterson.com |
3 | lars@larson.eut |
جدول Membership يحتوي على معلومات العضوية، مثل متى أنشأ المستخدم حسابه وما إذا كان قد تأكد من عضويته (وفي أي وقت)
مثل هذا (لم يتم ذكر بعض الأعمدة):
UserId | تاريخ الإنشاء | تأكيد الرمز |
هل تأكيد |
الأخيرة كلمة المرور غير صحيحة |
كلمة المرور | تغيير كلمة المرور |
---|---|---|---|---|---|---|
1 | 12.04.2012 16:12:17 | NULL | True | NULL | AFNQhWfy.... | 12.04.2012 16:12:17 |
ملاحظة:إذا كنت ترغب في رؤية جميع الأعمدة والبيانات، فافتح قاعدة البيانات عبر WebMatrix، ثم قم بمراجعة كل جدول.
إعدادات عضوية بسيطة
إذا لم يتم تكوين موقعك لاستخدام نظام عضوية ASP.NET Web Pages SimpleMembership، قد تحدث أخطاء عند استخدام عنصر WebSecurity.
إذا كانت إعدادات مزود الخدمة مختلفة عن خادمك المحلي، فقد تحدث أخطاء. لحل هذه المشكلة، قم بإضافة العناصر التالية إلى ملف Web.config الخاص بالموقع:
<appSettings> <add key="enableSimpleMembership" value="true" /> </appSettings>
- الصفحة السابقة فئات WebPages
- الصفحة التالية قاعدة بيانات WebPages