SqlMembershipProvider.PasswordFormat 속성
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
SQL Server 멤버 자격 데이터베이스에 암호를 저장하기 위한 형식을 나타내는 값을 가져옵니다.
public:
virtual property System::Web::Security::MembershipPasswordFormat PasswordFormat { System::Web::Security::MembershipPasswordFormat get(); };
public override System.Web.Security.MembershipPasswordFormat PasswordFormat { get; }
member this.PasswordFormat : System.Web.Security.MembershipPasswordFormat
Public Overrides ReadOnly Property PasswordFormat As MembershipPasswordFormat
속성 값
SQL Server 데이터베이스에 암호를 저장하기 위한 형식을 나타내는 MembershipPasswordFormat 값 중 하나입니다.
예제
다음 코드 예제에서는 ASP.NET 애플리케이션에 system.web
대 한 Web.config 파일의 섹션에 멤버 자격 요소를 보여 냅니다. 애플리케이션의 지정 SqlMembershipProvider 인스턴스 및 해당 암호 서식을 설정 Hashed
합니다.
<membership defaultProvider="SqlProvider" userIsOnlineTimeWindow="20">
<providers>
<add name="SqlProvider"
type="System.Web.Security.SqlMembershipProvider"
connectionStringName="SqlServices"
enablePasswordRetrieval="false"
enablePasswordReset="true"
requiresQuestionAndAnswer="true"
passwordFormat="Hashed"
applicationName="MyApplication" />
</providers>
</membership>
설명
만 Clear
Encrypted
사용하고 Hashed
안전하지 않습니다.
Hashed
암호는 단방향 해시 알고리즘과 데이터베이스에 저장될 때 임의로 생성된 솔트 값을 사용하여 해시됩니다. 암호의 유효성이 검사되면 확인 시 데이터베이스의 솔트 값으로 해시됩니다. 해시 된 암호를 검색할 수 없습니다.
Encrypted
데이터베이스 콘텐츠를 표시하는 위반이 암호화 키를 노출할 수도 있으므로 암호는 안전한 것으로 간주되지 않습니다. 즉, 암호화 된 암호를 해독 하 고 노출 수 없습니다.
값은 PasswordFormat ASP.NET 애플리케이션에 대한 Web.config 파일의 공급자 섹션에 지정됩니다.
Encrypted
및 Hashed
암호는 구성의 machineKey 요소에 제공된 정보를 기반으로 기본적으로 암호화되거나 해시됩니다. 특성에 값을 validation
지정 3DES
하거나 값이 지정되지 않은 경우 알고리즘을 사용하여 SHA1 해시된 암호가 해시됩니다.
멤버 자격 요소(ASP.NET 설정 스키마) 구성 요소의 특성을 사용하여 hashAlgorithmType
사용자 지정 해시 알고리즘을 정의할 수 있습니다. 암호화를 선택하는 경우 기본 암호 암호화는 AES를 사용합니다.
machineKey 구성 요소의 특성을 설정 decryption
하여 암호화 알고리즘을 변경할 수 있습니다. 암호를 암호화하는 경우 machineKey 요소의 특성에 decryptionKey
대한 명시적 값을 제공해야 합니다. ASP.NET 멤버 자격으로 암호화된 암호를 사용하는 경우 특성의 기본값 AutoGenerate
decryptionKey
이 지원되지 않습니다.
SHA1과의 충돌 문제 때문에, Microsoft에서는 SHA256 이상을 기반으로 하는 보안 모델을 권장합니다.
적용 대상
추가 정보
.NET