Password Generator

Password Generator

Καλησπέρα σας, ένα συνηθισμένο πρόβλημα που αντιμετωπίζουμε στις μέρες μας είναι η ασφαλής δημιούργημα κωδικών πρόσβασης. Συνήθως η διαδικασία αυτή περνάει πλέον στους developers, όμως συχνά θέλουμε μια ελεγχόμενη διαδικασία σε επίπεδο sql ώστε να μπορεί τόσο να τροποποιηθεί με ευκολία όσο και να μπορεί να διαχειριστεί πολλαπλώς.  Με την παρακάτω διαδικασία η οποία καλό είναι να μπει σε μια proccedure μας επιστρέφει κάθε φορά διαφορετικό τυχαίο κωδικό:

create PROC [dbo].[Password_Generator]
@len INT,
@min TINYINT = 48,
@range TINYINT = 74,
@exclude VARCHAR(50) = ‘0:;<=>?@O[]`^\/’,
@output VARCHAR(50) OUTPUT
AS
DECLARE @char CHAR
SET @output = ”

WHILE @len > 0 BEGIN
SELECT @char = CHAR(ROUND(RAND() * @range + @min, 0))
IF CHARINDEX(@char, @exclude) = 0 BEGIN
SET @output += @char
SET @len = @len – 1
END
END