Sdílet prostřednictvím


MembershipPasswordFormat Výčet

Definice

Popisuje formát šifrování pro ukládání hesel pro uživatele členství.

public enum class MembershipPasswordFormat
public enum MembershipPasswordFormat
type MembershipPasswordFormat = 
Public Enum MembershipPasswordFormat
Dědičnost
MembershipPasswordFormat

Pole

Clear 0

Není zabezpečené, nepoužívejte. Hesla nejsou šifrovaná.

Encrypted 2

Není zabezpečené, nepoužívejte. Hesla se šifrují pomocí nastavení šifrování určeného konfigurací elementu machineKey.

Hashed 1

Hesla se šifrují jednosměrně pomocí algoritmu hash SHA1. Pomocí atributu můžete zadat algoritmus hash, který se liší od algoritmu hashAlgorithmType SHA1.

Kvůli problémům s kolizí s SHA1 microsoft doporučuje SHA256.

Příklady

Následující příklad ukazuje element machineKey (ASP.NET Settings Schema) element v system.web části souboru Web.config pro ASP.NET aplikace. Určuje instanci aplikace SqlMembershipProvider a nastaví její formát hesla na Hashed.

V tomto příkladu se používá SHA1. Kvůli problémům s kolizí s SHA1 microsoft doporučuje 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>  

Poznámky

Třída SqlMembershipProvider podporuje různé formáty úložiště hesel, ale měli byste používat Hashedpouze ; Clear a Encrypted nejsou zabezpečené. Vymazat hesla nejsou zabezpečená a neměla by se používat. Ukládají se ve formátu prostého textu. Šifrovaná hesla nejsou považována za bezpečná, protože porušení zabezpečení, které odhalí obsah databáze, může také vystavit šifrovací klíč. To znamená, že šifrovaná hesla by mohla být dešifrována a zpřístupněna. Hesla se při uložení šifrují a je možné je dešifrovat pro porovnání hesel nebo načtení hesla. Hesla s hodnotou hash se při uložení v databázi šifrují pomocí jednosměrné slané hodnoty hash. Při ověření se heslo zkombinuje s hodnotou soli a pak se použije hodnota hash. Výsledek se porovná s hodnotou v databázi pro účely ověření. Hesla s hodnotou hash nelze načíst.

Poznámka

Pokud nejste obeznámeni s funkcemi členství ASP.NET, přečtěte si téma Úvod do členství , než budete pokračovat. Seznam dalších témat souvisejících s členstvím najdete v tématu Správa uživatelů pomocí členství.

Platí pro

Viz také