2013-07-15 2 views
2

내 웹 사이트에서 세션 변수를 사용하여 로그인 양식에서 "전자 메일"필드 값을 유지하고, 로그 아웃을 위해 사용자를 다른 페이지로 리다이렉션하고 세션 변수를 없는. 내 질문은 :이 방법으로 로그인 및 로그 아웃 프로세스를 구현하는 것이 안전합니까? 다음과 같은 프로그램ASP.Net에서 로그인 및 로그 아웃하는 보안 방법

public partial class Staff : System.Web.UI.Page 
{ 

    protected void Page_Load(object sender, EventArgs e) 
    { 

      string value = Session["email"].ToString();     
      Classes.AddAddress addcuid = new Classes.AddAddress(value);    
      staffNamelbl.Text = addcuid.addStaffName().ToString();        
    } 
} 

} ASP.NET과 MVC 응용 프로그램에서와 로그 아웃의 보안 방법을

public partial class Logout : System.Web.UI.Page 
{ 
    protected void Page_Load(object sender, EventArgs e) 
    { 

     Session["email"] = null; 
     Response.Write("you logged out from system!"); 
    } 
} 

답변

2

나는 그것의 꽤 당신이 그것을 가지고있는 방법을 확보 생각합니다. 로그 아웃하는 동안
Session.Abandon() 을 사용한 다음 사용자를 홈 페이지 Response.Redirect("Default.aspx")으로 리디렉션하십시오.

암호 Session("user") = email 일치하는 세션이 활성화되어있는 경우 사용자 자격 증명과 일치하는 데이터베이스를 액세스하는 경우

if (Session.Item("user") == null) { 
    Response.Redirect("Default.aspx"); 
else 
\\grant access 

를 사용하여 응용 프로그램의 제한된 부분을 액세스 할 때마다 확인 후 저장소에 이메일을 로깅을위한

준비된 문이나 매개 변수식 SQL 쿼리를 사용해야합니다.

2

에 그렇게 할 수있는 가장 좋은 방법은 무엇입니까하면 내장 사용하는 것입니다 Microsoft 웹 보안 클래스 및 메서드 다음은 WebSecurity 클래스에 대한 정보를 (들)입니다 : http://msdn.microsoft.com/en-us/library/webmatrix.webdata.websecurity(v=vs.111).aspx

+0

감사합니다 AmitApllo,하지만 난 ASP.Net webforms를 사용하여. – Iatrochemist

+1

WebForms도 지원됩니다! 나는 가장 안전한 방법 (들)을 위해 그것을 조사 할 것을 권고한다 :) 그것은 토큰을 허락하고 취소하며, 외부 인증 공급자, Windows 인증, LDAP, 폼 기반 인증을 사용할 수있게한다. 나는 그것을 당신이 활용할 것을 강력히 제안 할 것입니다! – ApolloSoftware

관련 문제