SqlMembershipProvider.PasswordFormat Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene un valor que indica el formato para almacenar las contraseñas en la base de datos de pertenencia de 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
Valor de propiedad
Uno de los valores MembershipPasswordFormat que indica el formato para almacenar las contraseñas en la base de datos de SQL Server.
Ejemplos
En el ejemplo de código siguiente se muestra el elemento membership de la system.web
sección del archivo Web.config para una aplicación de ASP.NET. Especifica la instancia de la SqlMembershipProvider aplicación y establece su formato de contraseña en 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>
Comentarios
Use Hashed
solo Clear
y Encrypted
no sea seguro.
Hashed
las contraseñas se aplica un hash mediante un algoritmo hash unidireccional y un valor de sal generado aleatoriamente cuando se almacenan en la base de datos. Cuando se valida una contraseña, se descodifica con el valor salt de la base de datos para su verificación. Las contraseñas descodificadas no se pueden recuperar.
Encrypted
las contraseñas no se consideran seguras, ya que una infracción que revela el contenido de la base de datos también puede exponer la clave de cifrado. Esto significa que las contraseñas cifradas se pueden descifrar y exponer.
El PasswordFormat valor se especifica en la sección providers del archivo Web.config para la aplicación ASP.NET.
Encrypted
Las contraseñas y Hashed
se cifran o se aplica un hash de forma predeterminada en función de la información proporcionada en el elemento machineKey de la configuración. Tenga en cuenta que si especifica un valor de 3DES
para el validation
atributo, o si no se especifica ningún valor, las contraseñas con hash se aplicarán mediante el SHA1 algoritmo .
Se puede definir un algoritmo hash personalizado mediante el hashAlgorithmType
atributo del elemento de configuración elemento de pertenencia (ASP.NET esquema de configuración). Si elige el cifrado, el cifrado de contraseña predeterminado usa AES. Puede cambiar el algoritmo de cifrado estableciendo el decryption
atributo del elemento de configuración machineKey . Si va a cifrar contraseñas, debe proporcionar un valor explícito para el decryptionKey
atributo en el elemento machineKey . El valor predeterminado de AutoGenerate
para el decryptionKey
atributo no se admite cuando se usan contraseñas cifradas con ASP.NET Pertenencia.
Debido a problemas de colisión con SHA1, Microsoft recomienda un modelo de seguridad basado en SHA256 o mejor.