آموزش ASP.Net > کنترل های عضویت > کنترل PasswordRecovery
فراهم نمودن قابلیت بازیابی رمز عبور برای کاربران توسط کنترل PasswordRecovery

مقدمه :

حتما بارها برایتان اتفاق افتاده که در سایتی عضو شده اید و پس از مدتی که دوباره به آن سایت مراجعه کرده اید ، متوجه شده اید که رمز عبورتان را فراموش کرده اید .
در این موارد ، معمولا صفحه یا کنترلی به یاری شما آمده و رمز عبورتان را برایتان به ایمیل شما ارسال کرده و یا اینکه رمز جدیدی تولید نموده و آن را در اختیارتان قرار می دهد . این امکان ، یک ضرورت در سایت هایی که عضو می پذیرند ، می باشد .
اگر وب سایت یا نرم افزار وبی که طراحی نموده اید ، از سیستم عضویت ASP.Net استفاده می کند ، به راحتی می توانید با استفاده از کنترل PasswordRecovery ، کاربران خود را قادر سازید ، رمز عبور فراموش کردشان را بازیابند .
در ASP.Net ، بر حسب اینکه سیستم عضویت شما چگونه تنظیم شده باشد ، در موارد بروز مشکل ، یا رمز عبور کاربر به ایمیل وی ارسال شده و یا رمز جدیدی تولید کرده و آن را در اختیار کاربر قرار می دهد .
به صورت پیش فرض ، ASP.Net رمز عبور کاربران را با استفاده از یک مدل غیر قابل بازگشت ، کد گذاری کرده و ذخیره می کند . بنابراین امکان فرستادن رمز اولیه وجود نداشته و در موارد فراموش کردن رمز ، یک رمز جدید تولید و به کاربر ارسال می شود .
اما اگر شما سیستم عضویت وب سایت خود را به گونه ای تنظیم کرده باشید که رمز عبور کاربران را رمزنگاری نکرده و به صورت متن ساده ذخیره کند ( روشی که به هیج عنوان مورد تایید نیست ) ، امکان ارسال رمز اولیه وجود دارد .

نکته : برای اینکه سیستم شما قابلیت ارسال ایمیل جهت یادآوری رمز عبور به کاربران را داشته باشد ، بایستی بتواند از طریق سیستم SMTP ، ایمیل ارسال نماید . برای دریافت اطلاعات بیشتر به بخش آموزش ارسال ایمیل به وسیله SMTP بروید .

نحوه فعال کردن امکان بازیابی رمز عبور برای کاربران در صفحات ASP.Net :

  1. یک صفحه با نامی مثل 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>
  2. یک کنترل PasswordRecovery را با کد زیر ، بر روی صفحه قرار دهید :
    کد <asp:PasswordRecovery ID="PasswordRecovery1" Runat="server">
    </asp:PasswordRecovery>
  3. سپس کاربر از طریق این کنترل می تواند با وارد نمودن نام کاربری یا آدرس ایمیل خود ، درخواست بازیابی رمز عبور را بدهد .


راجع این مطلب سوال یا اشکالی دارید ؟! آن را در انجمن سایت مطرح نمایید ...         >>>>>  ورود به انجمن تخصصی


نطر خودتان درباره این صفحه را با ما در میان گذاشته و در صورت تمایل از Developer1 حمایت نمایید :

آیا مطالب این صفحه برای شما مناسب و مفید بوده است :

نام :                 
آدرس Email :    
 
نظر شما :  
 
سوال امنیتی : پایتخت ایران ؟      
حمایت از سایت Developer1