MembershipPasswordFormat Перечисление

Определение

Описывает формат шифрования для хранения паролей авторизованных пользователей.Describes the encryption format for storing passwords for membership users.

public enum class MembershipPasswordFormat
public enum MembershipPasswordFormat
type MembershipPasswordFormat = 
Public Enum MembershipPasswordFormat
Наследование
MembershipPasswordFormat

Поля

Clear 0

Опасно, не использовать.Not secure, do not use. Пароли не шифруются.Passwords are not encrypted.

Encrypted 2

Опасно, не использовать.Not secure, do not use. Пароли шифруются с использованием параметров шифрования, определенных конфигурацией элемента machineKey (схема параметров ASP.NET).Passwords are encrypted using the encryption settings determined by the machineKey Element (ASP.NET Settings Schema) element configuration.

Hashed 1

Пароли шифруются однонаправленно с использованием алгоритма хэширования SHA1.Passwords are encrypted one-way using the SHA1 hashing algorithm. Вы можете указать алгоритм хэширования, отличный от алгоритма SHA1, с помощью атрибута .You can specify a hashing algorithm different than the SHA1 algorithm by using the attribute.

Примеры

В следующем примере показан элемент machineKey (схема параметров ASP.NET) в system.web разделе файла Web.config для приложения ASP.NET.The following example shows the machineKey Element (ASP.NET Settings Schema) element in the system.web section of the Web.config file for an ASP.NET application. Он задает SqlMembershipProvider экземпляр приложения и задает для его формата пароля значение Hashed .It specifies the application's SqlMembershipProvider instance and sets its password format to Hashed.

В этом примере используется SHA1.This example uses SHA1. Из-за конфликта с SHA1 корпорация Майкрософт рекомендует использовать SHA256.Due to collision problems with SHA1, Microsoft recommends 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>  

Комментарии

SqlMembershipProviderКласс поддерживает различные форматы хранения паролей, но следует использовать только, Hashed Clear и Encrypted не являются безопасными.The SqlMembershipProvider class supports different password storage formats, but you should only use Hashed; Clear and Encrypted are not secure. Очистка паролей не является безопасной и не должна использоваться.Clear passwords are not secure and shouldn't be used. Они хранятся в виде обычного текста.They are stored in plain text. Зашифрованные пароли не считаются безопасными, так как нарушение, которое показывает содержимое базы данных, также может предоставить ключ шифрования.Encrypted passwords are not considered safe, as a breach that reveals your database contents can also expose the encryption key. Это означает, что зашифрованные пароли можно расшифровать и предоставить.This means your encrypted passwords could be decrypted and exposed. Пароли шифруются при хранении и могут быть расшифрованы для сравнения паролей или получения пароля.Passwords are encrypted when stored and can be decrypted for password comparison or password retrieval. Хэшированные пароли шифруются с помощью одностороннего хэша с Salt-кодом при хранении в базе данных.Hashed passwords are encrypted using a one-way salted hash when stored in the database. При проверке пароля он объединяется с расширяющим значением, а затем хэшируется.When a password is validated, it is combined with a salt value and then hashed. Результат сравнивается со значением в базе данных для проверки.The result is compared with the value in the database for verification. Хэшированные пароли нельзя извлечь.Hashed passwords cannot be retrieved.

Примечание

Если вы не знакомы с функциями членства в ASP.NET, см. статью Введение в членство перед продолжением.If you are not familiar with the membership features of ASP.NET, see Introduction to Membership before continuing. Список других разделов, связанных с членством, см. в разделе Управление пользователями с помощью членства.For a list of other topics related to membership, see Managing Users by Using Membership.

Применяется к

См. также раздел