2016-06-23 3 views
2

마녀 공예 란 무엇입니까?

텍스트 상자 유형 암호는 각 사용자의 암호 길이를 어떻게 확인합니까?ASP.NET 요청하지 않고 내 암호를 알고 계십니까?

나는 오늘 처음으로이 현상을 우연히 만나고, 일어나는 일에 대해 놀랍고 당황 스러웠다.

필자는이 문제를 테스트하기 위해 독립형 페이지를 작성하여 사용자 오류를 해결하려고했습니다. 기본 페이지 구조는 제쳐두고 페이지의 모든 코드입니다. ASP.NET

<asp:TextBox ID="txtUsername" runat="server" /> 
<asp:TextBox ID="txtPassword" runat="server" TextMode="Password"/> 

VB.NET

Using con As New SqlConnection 
    con.ConnectionString = ConfigurationManager.ConnectionStrings("Con").ConnectionString 
    Using cmd As New SqlCommand("TM.sp", con) 
    cmd.CommandType = CommandType.StoredProcedure 

    cmd.Parameters.Add("@UserID", SqlDbType.Int).Value = Request.QueryString("UserID") 

    con.Open() 
    Using sdr As SqlDataReader = cmd.ExecuteReader() 
     While sdr.Read() 
     txtUsername.Text = sdr("Username") 
     End While 
    End Using 

    End Using 
End Using 

는 모든 인스턴스에서 txtPassword 텍스트 상자가 숨겨져 type="password" 형식의 정확한 길이 암호로 채워집니다. 내가 암호 텍스트 상자에 텍스트 모드를 변경하거나 다음 출력하지 사용자 이름 필드를 할 경우

은 아무데도 내가 암호를 바인딩 않으며 그러나이 사용자 이름

와 함께 데이터베이스에 저장되어있는 저장 프로 시저에 요청 오전 없습니다 암호가 더 이상 출력되지 않습니다.

누군가가이 동작을 설명하고 관련 사양을 가리킬 수 있습니까?

+6

브라우저 자동 완성 기능 –

+1

@ the_lotus가 맞을 수도 있습니다.이를 암호 태그'autocomplete = "off"'에 추가하여 확인하십시오. 더 이상 채워지지 않습니다 –

+1

브라우저로 암호를 저장할 수 있습니다. – Win

답변

1

브라우저 자동 완성 기능처럼 보입니다. Vishnu Prasad와 마찬가지로, try adding autocomplete="off"은 해당 기능을 제거하려는 경우 귀하의 통제 속성입니다.

관련 문제