Ola Pessoal,
Como tenho algumas pessoas pedindo.. resolvi gerar um pequeno algoritmo em C# para que possamos gerar senhas aleatórias. Para iniciar devemos difinir os caracteres que você deseja que seja usando nas senhas, para isso neste exemplo vamos utilizar uma constante mesmo como é demostrado abaixo:
private const string SenhaCaracteresValidos = "abcdefghijklmnopqrstuvwxyz1234567890@#!?";
Logo após podemos utilizar este pequeno algoritmo abaixo que irá utilizar os caracteres acima informados para gerar a senha.
public string CreatePassword(int tamanho)
{
int valormaximo = SenhaCaracteresValidos.Length;
Random random = new Random(DateTime.Now.Millisecond);
StringBuilder senha = new StringBuilder(tamanho);
for (int indice = 0; indice < tamanho; indice++)
senha.Append(SenhaCaracteresValidos”[“random.Next(0, valormaximo)”]”);
return senha.ToString();
}
Espero que ajude a todos, mais esta dica.
[]’s
Oi. Na forma como esta add todo o vetor de origem n vezes.
Considere trocar a linha
senha.Append(SenhaCaracteresValidos);
por
senha.Append(SenhaCaracteresValidos[random.Next(0, (valormaximo – 1))]);
Você não utilizou a “random” que instanciou?
ta faltando coisa ai amigo
correção onde está
senha.Append(SenhaCaracteresValidos);
troque por
senha.Append(iSenhaCaracteresValidos[random.Next(valormaximo -1)]);
🙂
Pessoal
Desculpe o word press devido ao caractere “[” comeu um peço do codigo.. agora coloquei entre aspas para nao sumir!
Obrigado pela dica de todos
Foi útil pra mim. Obrigado!
Muito bom Adriano, consegui utilizar no projeto onde precisei. Parabéns pelo artigo, simples e útil.
Para o pessoal que está tendo problema:
private string GerarSenha(int tamanho)
{
const string senhaCaracteresValidos = “abcdefghijklmnopqrstuvwxyz1234567890@#!?”;
var valormaximo = senhaCaracteresValidos.Length;
var random = new Random(DateTime.Now.Millisecond);
var senha = “”;
for (var indice = 0; indice < tamanho; indice++)
senha += senhaCaracteresValidos[random.Next(0, valormaximo)];
return senha;
}