MembershipPasswordFormat Enumeração
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Descreve o formato de encriptação para armazenar palavras-passe para utilizadores de membros.
public enum class MembershipPasswordFormat
public enum MembershipPasswordFormat
type MembershipPasswordFormat =
Public Enum MembershipPasswordFormat
- Herança
Campos
| Name | Valor | Description |
|---|---|---|
| Clear | 0 | Não seguro, não usar. As palavras-passe não estão encriptadas. |
| Hashed | 1 | As palavras-passe são encriptadas unidirecionalmente usando o algoritmo de hash SHA1. Pode especificar um algoritmo de hashing diferente do algoritmo SHA1 usando o Devido a problemas de colisão com SHA1, a Microsoft recomenda SHA256. |
| Encrypted | 2 | Não seguro, não usar. As palavras-passe são encriptadas usando as definições de encriptação determinadas pela configuração do elemento machineKey. |
Exemplos
O exemplo seguinte mostra o elemento machineKey Element (ASP.NET Settings Schema) na secção system.web do ficheiro de Web.config para uma aplicação ASP.NET. Especifica a instância da SqlMembershipProvider aplicação e define o formato de palavra-passe para Hashed.
Este exemplo utiliza o SHA1. Devido a problemas de colisão com SHA1, a Microsoft recomenda 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>
Observações
A SqlMembershipProvider classe suporta diferentes formatos de armazenamento de palavras-passe, mas deve usar Hashedapenas ; Clear e Encrypted não são seguros. Palavras-passe claras não são seguras e não devem ser usadas. São armazenados em texto simples. Palavras-passe encriptadas não são consideradas seguras, pois uma violação que revele o conteúdo da sua base de dados pode também expor a chave de encriptação. Isto significa que as suas palavras-passe encriptadas podem ser desencriptadas e expostas. As palavras-passe são encriptadas quando armazenadas e podem ser desencriptadas para comparação ou recuperação de palavras-passe. As palavras-passe hashadas são encriptadas usando um hash salgado unidirecional quando armazenadas na base de dados. Quando uma palavra-passe é validada, é combinada com um valor de sal e depois hashada. O resultado é comparado com o valor na base de dados para verificação. Palavras-passe hashadas não podem ser recuperadas.
Note
Se não estiver familiarizado com as funcionalidades de adesão do ASP.NET, consulte Introdução à Adesão antes de continuar. Para uma lista de outros tópicos relacionados com a adesão, veja Gerir Utilizadores através do Uso da Adesão.