로그인 시스템에서 작업 - 고객이 사이트 액세스를 위해 암호를 선택하는 지점.사용자 암호 문자 집합 제한
RegEx를 사용하여 암호가 충분히 강하다는 것을 제외하고는 일반적으로 데이터베이스에 기록되는 모든 데이터를 주입 등으로 검사하고 합리적으로 제한된 문자 집합을 모든 필드에 적용합니다. 암호를 너무 제한하는 보안에 대한 약간의 반 패턴이라고 생각하기 때문에 암호에 대해 특히 제한적인 문자 집합을 원합니다. 어느 시점이 문자 제한에 무엇이 있는가
: 암호의 경우 그러나
, 나는 질문의 소수를 제기하는 어쨌든 삽입을위한 소금에 절인 SHA-512로 해시됩니다 고객이 암호로 사용할 수있는 설정 - 즉, 내가 해싱에 의해 완전히 회피 될 것이라고 가정하고있는 주입 이외의 취약점에 노출되어 있습니까?허용 접근법에는 부정적인면이 있어야합니다. 앞으로 무고한 결합이 위험한 요소가 될 수 있다는 사실을 생각해 볼 수 있습니다. 놓친 적이 있습니까?
거부해야하는 문자/문자열이 있습니까? 네이티브 ASP.NET 보호 기능을 사용할 수 있습니까?
좀 더 주관적 일 수도 있지만 SHA-512 해시를 지정하면 합리적인 매개 변수 내에서 선택할 수있는 최대 암호 길이를 제한하는 데있어 중요한 점은 상당한 크기의 암호/복잡성으로 인해 설정을 확인하는 경고가 발생할 수 있습니다.
도움 주셔서 감사합니다.
EDIT : ADO.NET (LINQ/EF 아님)을 사용하여 MSSQL2008 데이터베이스에 액세스하는 ASP.NET 웹 응용 프로그램입니다.
감사합니다. 국제 문자를 내 관심에 끌기 위해 +1합니다. – Chris