ASP.NET Web Pages - WebSecurity آئیٹم

مقصد

WebSecurity آئیٹم، ASP.NET Web Pages ایپلی کیشن کے لئے حفاظت اور تسلیم کا فراہم کراتا ہے。

WebSecurity آئیٹم کے ذریعے آپ کاربر اکاؤنٹ قائم کر سکتے ہیں، لوگین اور لگ آؤٹ، پاسورڈ ری سیٹ یا تبدیل، وغیرہ اور متعدد دیگر عمل کر سکتے ہیں。

WebSecurity کا آئیٹم مراجع دستورزاری - خصوصیات

خصوصیات مقصد
CurrentUserId موجود کاربر کا آئی ڈی واپس لایا جاتا ہے。
CurrentUserName موجود کاربر کا نام واپس لایا جاتا ہے。
HasUserId موجود کاربر کو کاربر آئی ڈی رکھتا ہے یا نہیں کا بولیا واپس لایا جاتا ہے۔ اگر واپس لایا جاتا ہے تو true واپس لایا جاتا ہے。
IsAuthenticated موجود کاربر کا تسلیم کیا جانا اور اس کا تسلیم کیا جانا واپس لایا جاتا ہے。

WebSecurity کا آئیٹم مراجع دستورزاری - طریق

خصوصیات مقصد
ChangePassword() کاربر کا پاسورڈ بدلنا。
ConfirmAccount() اکاؤنٹ کو معتبر قرار دینا اور اس کو فعال کرنا。
CreateAccount() نئی کاربر اکاؤنٹ قائم کرنا。
CreateUserAndAccount() نئی کاربر اکاؤنٹ قائم کرنا。
GeneratePasswordResetToken() یوور کاربر کو ایک پاسورڈ ری سیٹ ٹوکن بھیج سکتا ہے جو ای میل کے ذریعے فراہم کیا جاتا ہے。
GetCreateDate() ممبرشپ اکاؤنٹ کا قیام کا تاریخی حوالہ اور وقت کا واپس لایا جاتا ہے。
GetPasswordChangeDate() آخری بار کا تاریخی حوالہ اور وقت کی تاریخی حوالہ کا واپس لایا جاتا ہے جب ممبرشپ اکاؤنٹ کا پاسورڈ تبدیل کیا گیا تھا。
GetPasswordFailures
SinceLastSuccess()
پچھلے کامیاب لوگین یا ممبرشپ اکاؤنٹ کا قیام کیوں بغیر پاسورڈ کا غلط داخل کرنے کی کوششوں کی تعداد واپس لایا جاتا ہے。
GetUserId() بنیاد وسیع کا استعمال کردہ کاربر نام پر کاربر آئی ڈی واپس لایا جاتا ہے。
GetUserIdFrom
PasswordResetToken ()
ਪਾਸਵਰਡ ਰੀਜੈਟ ਟੋਕਨ ਤੋਂ ਉਪਭੋਗਤਾ ਆਈਡੀ ਵਾਪਸ ਦੇਵੇ。
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 ਵਿਸ਼ਾਲ ਦਾ ਉਪਯੋਗ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ ਉਸ ਨੂੰ ਬਣਾਓ ਜਾਂ ਪ੍ਰਾਰੰਭਿਕ ਰੂਪ ਵਿੱਚ ਕਰੋ ਵੈੱਬਸੈਕਿਊਰਿਟੀ ਡਾਟਾਬੇਸ。

web ਸਬ-ਡਿਰੈਕਟਰੀ ਵਿੱਚ _AppStart.cshtml ਪੰਨਾ ਬਣਾਓ ਜਾਂ ਸੋਧੋ。

ਇਸ ਫਾਈਲ ਵਿੱਚ ਨਿਮਨਲਿਖਤ ਕੋਡ ਲਿਖੋ:

_AppStart.cshtml

@{
WebSecurity.InitializeDatabaseConnection("Users", "UserProfile", "UserId", "Email", 
true);
}

ਵੈੱਬਸਾਈਟ ਹਰ ਵਾਰ ਚਾਲੂ ਹੋਣ ਤੇ ਉੱਪਰੋਕਤ ਕੋਡ ਚਲਾਉਣਾ ਹੈ। ਇਹ ਵੈੱਬਸੈਕਿਊਰਿਟੀ ਡਾਟਾਬੇਸ ਨੂੰ ਪ੍ਰਾਰੰਭਿਕ ਰੂਪ ਵਿੱਚ ਕਰੇਗਾ。

"Users" ਹੈ ਵੈੱਬਸੈਕਿਊਰਿਟੀ ਡਾਟਾਬੇਸ ਦਾ ਨਾਮ ਹੈ。(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>