안전을 위해 현재 앱에 로그인하면 로그인 또는 비밀번호 재설정 메소드에 전달 된 매개 변수가 저장되지 않습니다. 로그 호출에는이를 제어하는 선택적 매개 변수가 있습니다. true로 설정하면 저장된 매개 변수 오브젝트가로 대체됩니다 [Redacted]
. 물론 약간의 데이터를 놓치지 만 IP 주소가 있으므로 평문에서 민감한 것을 얻는 위험은 없습니다.
이런 종류의 것을 실제로 기록하려면 로그인 시도를 기록 할 때 사용자 이름 필드에있는 이름과 일치하는 이름의 사용자를 데이터베이스에서 확인하고 일치하는 경우에만 저장하는 것이 좋습니다. 그렇지 않으면 "알 수없는 사용자"로 저장하면됩니다. 이 값에 그 값이 포함되어 있는지 확인하면 멋지게 보일 수 있지만 항상 [User] [Password] 및 [UserPas] [sword]와 같은 조합이 발생할 위험이 있습니다.이 경우 IP를 확인하여 추론 할 수 있습니다 실수로 다른 사람의 비밀번호 시작을 빈 공간에 저장했습니다. 불가능한 [User] [Password] 및 [UserPassword] [??]로이를 확장 할 수 있습니다.이 경우 "UserPassword에 의한 로그인 실패"와 "사용자에 의한 로그인 실패"가 표시되고 모두 추론 될 수 있습니다.사용자 비밀번호. 일반적으로 안전을 위해 로그인에 성공하지 않는 한 사용자 이름을 기록하지 말고 싶습니다.
추가하려면 다음을 편집하십시오.
실패한 로그인 시도에 대해 사용자 이름을 기록하기 위해 사람들이 게시하는 대부분의 주장은 다른 방법으로 더 잘 처리됩니다.
예를 들어, 고객이 "왜 로그온 할 수 없습니까?"라고 물으면 로그인 한 사용자 이름으로 오타를 지적 할 수 있다고합니다. 이것은 사실이지만 암호를 잡을 위험도 없습니다. 대신 실패시 사용자를 로그인 양식으로 다시 리디렉션하고 사용자 이름 필드를 강조 표시하고 사용자가 직접 볼 수 있도록 입력 한 내용으로 다시 채 웁니다.
또 다른 주장은 해킹 시도를 식별 할 수 있다는 것입니다. 하나의 사용자 이름에 대한 일련의 실패는 암호를 무차별 적으로 시행하려는 시도 일 수 있습니다. Users 테이블에 "BadLogins"열을 사용하여이 작업을 수행합니다.이 열은이 사용자와 일치하는 사용자 이름으로 로그인이 실패 할 때마다 증가하며, 로그인이 성공하면 사용자에게 " x 마지막 로그인 이후 실패한 로그인 시도 "및 사용자가 시도한 것이 아닌 경우 어떻게해야하는지 조언합니다. 실제로 철저히 로그인하려면 로그인 후에도 BadLogins 열의 마지막 값을 저장하는 다른 열 및 / 또는이 열의 가장 높은 값을 저장하는 열 및 / 또는 이 계정에 발생한 총 로그인 실패 횟수를 저장합니다.