MembershipPasswordFormat Wyliczenie

Definicja

Opisuje format szyfrowania do przechowywania haseł dla użytkowników członkostwa.

public enum class MembershipPasswordFormat
public enum MembershipPasswordFormat
type MembershipPasswordFormat = 
Public Enum MembershipPasswordFormat
Dziedziczenie
MembershipPasswordFormat

Pola

Clear 0

Nie bezpieczne, nie używaj. Hasła nie są szyfrowane.

Encrypted 2

Nie bezpieczne, nie używaj. Hasła są szyfrowane przy użyciu ustawień szyfrowania określonych przez konfigurację elementu machineKey.

Hashed 1

Hasła są szyfrowane jednokierunkowo przy użyciu algorytmu wyznaczania wartości skrótu SHA1. Za pomocą atrybutu można określić algorytm wyznaczania wartości skrótu inny niż algorytm hashAlgorithmType SHA1.

Ze względu na problemy z kolizją z sha1 firma Microsoft zaleca SHA256.

Przykłady

W poniższym przykładzie pokazano element machineKey (ASP.NET Ustawienia Schema) w sekcji pliku Web.config dla ASP.NET system.web aplikacji. Określa wystąpienie aplikacji i ustawia SqlMembershipProvider format hasła na Hashed .

W tym przykładzie jest używany sha1. Ze względu na problemy z kolizją z sha1 firma Microsoft zaleca SHA256.

<membership defaultProvider="SqlProvider"   
  userIsOnlineTimeWindow="20" hashAlgorithmType="SHA1">  
  <providers>  
    <add name="SqlProvider"  
      type="System.Web.Security.SqlMembershipProvider"  
      connectionStringName="SqlServices"  
      enablePasswordRetrieval="false"  
      enablePasswordReset="true"  
      requiresQuestionAndAnswer="true"  
      passwordFormat="Hashed"  
      applicationName="MyApplication" />  
  </providers>  
</membership>  

Uwagi

Klasa obsługuje różne formaty przechowywania haseł, ale należy używać tylko funkcji SqlMembershipProvider ; i nie są one Hashed Clear Encrypted bezpieczne. Wyczyść hasła nie są bezpieczne i nie należy ich używać. Są one przechowywane w postaci zwykłego tekstu. Zaszyfrowane hasła nie są uznawane za bezpieczne, ponieważ naruszenie ujawniace zawartość bazy danych może również ujawnić klucz szyfrowania. Oznacza to, że zaszyfrowane hasła mogą zostać odszyfrowane i ujawnione. Hasła są szyfrowane podczas przechowywania i można je odszyfrować na potrzeby porównywania haseł lub pobierania haseł. Skróty haseł są szyfrowane przy użyciu jednokierunkowego skrótu, gdy są przechowywane w bazie danych. Po weryfikacji hasła jest ono łączone z wartością "salt", a następnie ma wartość skrótu. Wynik jest porównywany z wartością w bazie danych do weryfikacji. Nie można pobrać skrótów haseł.

Uwaga

Jeśli nie znasz funkcji członkostwa programu ASP.NET zobacz Wprowadzenie do członkostwa przed kontynuowaniem. Aby uzyskać listę innych tematów związanych z członkostwem, zobacz Managing Users by Using Membership (Zarządzanie użytkownikami za pomocą członkostwa).

Dotyczy

Zobacz też