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.
- Az SQL Server 2022 (16.x) és későbbi verzióknál szükséges azVIEW 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)