Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A következőkre vonatkozik:SQL Server
Azure SQL Database
Felügyelt Azure SQL-példány
SQL-adatbázis a Microsoft Fabricben
Hash-et tesz egy jelszót, és összehasonlítja a hash-et egy meglévő jelszó hash-ével. A PWDCOMPARE használható üres SQL Server bejelentkezési jelszavak vagy gyakori gyenge jelszavak keresésére.
Transact-SQL szintaxis konvenciók
Szemantika
PWDCOMPARE ( 'clear_text_password'
, password_hash
[ , version ] )
Arguments
'clear_text_password'
A titkosítatlan jelszó.
clear_text_password a sysname (nvarchar(128)).
password_hash
Ez egy jelszó titkosítási hash-je.
password_hashvarbináris(128).
version
Elavult paraméter, amely beállítható, ha password_hash egy SQL Server 2000 (8.x) előtti bejelentkezésből származó értéket képvisel, amelyet SQL Server 2005-re (9.x) vagy később migráltak, de soha nem konvertáltak SQL Server 2000 (8.x) rendszerre.
A verzióint.
Caution
Ez a paraméter a visszafelé kompatibilitás érdekében van megadva, de figyelmen kívül hagyják, mert a jelszó hash blob-ok most már saját verzióleírásokat tartalmaznak. Ez a funkció az SQL Server egy későbbi verziójában lesz eltávolítva. Ne használja ezt a funkciót az új fejlesztési munkában, és tervezze meg a funkciót jelenleg használó alkalmazások módosítását.
Visszatérési típusok
int
1-et ad vissza, ha a clear_text_password hash-je egyezik az password_hash paraméterrel, és 0-ot, ha nem.
Megjegyzések
A PWDCOMPARE függvény nem jelent fenyegetést a jelszó hash-ek erejére, mert ugyanaz a teszt elvégezhető azzal, hogy megpróbálnak bejelentkezni az első paraméterként megadott jelszóval.
A PWDCOMPARE nem használható a tárolt adatbázis-felhasználók jelszavakkal. Nincs beépített adatbázis megfelelője.
Permissions
A PWDENCRYPT elérhető a nagyközönség számára.
A sys.sql_loginspassword_hash oszlopának vizsgálata:
- SQL Server 2019 (15.x) és korábbi verzióknál a CONTROL SERVER engedély szükséges.
- SQL Server 2022 (16.x) és későbbi verzióknál szükséges a VIEW ANY CRYPTOGRAPHICALLY SECURED DEFINITION engedély.
Példák
A. Olyan bejelentkezések azonosítása, amelyeknek nincs jelszavuk
Az alábbi példa az SQL Server bejelentkezéseket azonosítja, amelyeknek nincs jelsza.
SELECT name FROM sys.sql_logins
WHERE PWDCOMPARE('', password_hash) = 1 ;
B. Gyakori jelszavak keresése
Ha keres olyan gyakori jelszavakat, amelyeket azonosítani és megváltoztatni szeretnél, az első paraméterként megadd a jelszót. Például hajtsuk végre a következő utasítást, hogy keressünk egy jelszót, amelyet úgy jelöltek meg.password
SELECT name FROM sys.sql_logins
WHERE PWDCOMPARE('password', password_hash) = 1 ;
Kapcsolódó tartalom
PWDENCRYPT (Transact-SQL)
Biztonsági funkciók (Transact-SQL)
sys.sql_logins (Transact-SQL)