آموزش ASP.Net > کنترل های عضویت > کنترل PasswordRecovery
فراهم نمودن قابلیت بازیابی رمز عبور برای کاربران توسط کنترل PasswordRecovery
مقدمه :
حتما بارها برایتان اتفاق افتاده که در سایتی عضو شده اید و پس از مدتی که دوباره به
آن سایت مراجعه کرده اید ، متوجه شده اید که رمز عبورتان را فراموش کرده اید .
در این موارد ، معمولا صفحه یا کنترلی به یاری شما آمده و رمز عبورتان را برایتان به
ایمیل شما ارسال کرده و یا اینکه رمز جدیدی تولید نموده و آن را در اختیارتان قرار
می دهد . این امکان ، یک ضرورت در سایت هایی که عضو می پذیرند ، می باشد .
اگر وب سایت یا نرم افزار وبی که طراحی نموده اید ، از سیستم عضویت ASP.Net استفاده
می کند ، به راحتی می توانید با استفاده از کنترل PasswordRecovery ، کاربران خود را
قادر سازید ، رمز عبور فراموش کردشان را بازیابند .
در ASP.Net ، بر حسب اینکه سیستم عضویت شما چگونه تنظیم شده باشد ، در موارد بروز مشکل
، یا رمز عبور کاربر به ایمیل وی ارسال شده و یا رمز جدیدی تولید کرده و آن را در اختیار
کاربر قرار می دهد .
به صورت پیش فرض ، ASP.Net رمز عبور کاربران را با استفاده از یک مدل غیر قابل بازگشت
، کد گذاری کرده و ذخیره می کند . بنابراین امکان فرستادن رمز اولیه وجود نداشته و
در موارد فراموش کردن رمز ، یک رمز جدید تولید و به کاربر ارسال می شود .
اما اگر شما سیستم عضویت وب سایت خود را به گونه ای تنظیم کرده باشید که رمز عبور کاربران
را رمزنگاری نکرده و به صورت متن ساده ذخیره کند ( روشی که به هیج عنوان مورد تایید
نیست ) ، امکان ارسال رمز اولیه وجود دارد .
نکته : برای اینکه سیستم شما قابلیت ارسال ایمیل جهت یادآوری رمز
عبور به کاربران را داشته باشد ، بایستی بتواند از طریق سیستم SMTP ، ایمیل ارسال نماید
. برای دریافت اطلاعات بیشتر به بخش آموزش ارسال ایمیل به وسیله SMTP بروید .
نحوه فعال کردن امکان بازیابی رمز عبور برای کاربران در صفحات ASP.Net :
- یک صفحه با نامی مثل ResetPassword.aspx را بر روی سایت خود ایجاد نمایید . توجه داشته
باشید که این صفحه بایستی توسط تمامی کاربران از جمله غیر عضو و وارد شده به سایت نیز
قابل دسترس باشد ( زیرا کاربری که رمز عبور خود را فراموش کرده ، نمی تواند وارد سایت
شود !! ) .
توسط کد زیر در فایل web.config سایت ، کاری می کنید که صفحه ResetPassword.aspx برای
تمامی کاربران قابل دسترس باشد .
|
کد
|
<configuration>
<location path="ResetPassword.aspx">
<system.web>
<authorization>
<allow users="?"
/>
</authorization>
</system.web>
</location>
<system.web>
<authentication mode="Forms" >
<forms loginUrl="UserLogin.aspx"
/>
</authentication>
<authorization>
<deny users="?" />
</authorization>
</system.web>
</configuration>
|
- یک کنترل PasswordRecovery را با کد زیر ، بر روی صفحه قرار دهید :
|
کد
|
<asp:PasswordRecovery ID="PasswordRecovery1" Runat="server">
</asp:PasswordRecovery>
|
- سپس کاربر از طریق این کنترل می تواند با وارد نمودن نام کاربری یا آدرس ایمیل خود
، درخواست بازیابی رمز عبور را بدهد .
راجع این مطلب
سوال یا اشکالی دارید ؟! آن را در انجمن سایت مطرح نمایید ...
>>>>> ورود به انجمن تخصصی
نطر خودتان درباره این صفحه را با ما در میان گذاشته و در صورت تمایل از Developer1
حمایت نمایید :