Nejdřív jsem byl trochu udivený, že na tuhle typickou činnost neexistuje v Rails žádný plugin, ale pak mi to došlo – není moc potřeba. Google odhalil jeden užitečný kus kódu, který jsem pro větší přehlednost trochu přepsal a celé použil jako metodu třídy Password. V této podobě generuje náhodná hesla obsahující znaky a-z a 0-9, výchozí délka hesla, pokud generátor zavoláte bez parametru, je 8. Pro použití v Rails celý kód zkopírujte do souboru lib/password.rb a potom budete moci z kteréhokoliv místa kódu volat Password.generate.

class Password
 
   ALLOWED_CHARS = ('a'..'z').to_a + ('0'..'9').to_a
 
   def Password.generate(length = 8)
      password = ''
      while password.length < length
         password << ALLOWED_CHARS[Kernel.rand(ALLOWED_CHARS.length)]
      end
      password
   end
 
end
Zanechej komentář

K zanechání komentáře ke článku musíte být přihlášen. Přihlásit »