SqlMembershipProvider.PasswordFormat 속성

정의

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

속성 값

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>  

설명

사용 Hashed 만 하고 Clear Encrypted 안전하지 않습니다. Hashed 암호는 데이터베이스에 저장될 때 단방향 해시 알고리즘과 임의로 생성된 솔트 값을 사용하여 해시됩니다. 암호의 유효성이 검사되면 확인 시 데이터베이스의 솔트 값으로 해시됩니다. 해시 된 암호를 검색할 수 없습니다. Encrypted 데이터베이스 콘텐츠를 표시하는 위반이 암호화 키를 노출할 수도 있으므로 암호는 안전한 것으로 간주되지 않습니다. 즉, 암호화 된 암호를 해독 하 고 노출 수 없습니다.

PasswordFormat 값은 ASP.NET 애플리케이션에 대한 Web.config 파일의 공급자 섹션에 지정됩니다.

EncryptedHashed 암호는 구성의 machineKey 요소에 제공된 정보에 따라 기본적으로 암호화되거나 해시됩니다. 특성의 3DES validation 값을 지정하거나 값이 지정되지 않은 경우 해시된 암호는 알고리즘을 SHA1 사용하여 해시됩니다.

멤버 자격 요소(ASP.NET 설정 스키마) 구성 요소의 특성을 사용하여 hashAlgorithmType 사용자 지정 해시 알고리즘을 정의할 수 있습니다. 암호화를 선택하는 경우 기본 암호 암호화는 AES를 사용합니다. machineKey 구성 요소의 특성을 설정 decryption 하여 암호화 알고리즘을 변경할 수 있습니다. 암호를 암호화하는 경우 machineKey 요소의 특성에 decryptionKey 대한 명시적 값을 제공해야 합니다. ASP.NET 멤버 자격과 함께 암호화된 암호를 사용하는 경우 특성의 AutoGenerate decryptionKey 기본값이 지원되지 않습니다.

SHA1과의 충돌 문제 때문에, Microsoft에서는 SHA256 이상을 기반으로 하는 보안 모델을 권장합니다.

적용 대상

추가 정보