pwdcompare (Transact-sql)
Parola karıştırır ve varolan bir parolayı Karma Karma karşılaştırır. pwdcompare boş için arama için kullanılabilir SQL Serveroturum açma parolaları veya ortak Zayıf parolalar.
Transact-SQL Sözdizim Kuralları
Sözdizimi
PWDCOMPARE ( 'clear_text_password'
, password_hash
[ , version ] )
Bağımsız değişkenler
'clear_text_password'
Şifrelenmemiş parola değil. clear_text_passwordis sysname (nvarchar(128)).password_hash
Parola şifreleme karmasını olduğunu. password_hash is varbinary(128).version
Eskimiş 1 ise için ayarlanabilir parametre password_hashbir oturum açma değeri gösteren daha önceki SQL Server 2000, göç SQL Server 2005veya daha sonra ancak hiçbir zaman dönüştürülür SQL Server 2000sistem. versionis int.Dikkat Bu parametre için geriye dönük uyumluluk sağlanır, ancak parola karma BLOB'ları artık kendi sürüm açıklamaları içerdiğinden yoksayılır. Bu özellik Microsoft SQL Server'ın bir sonraki sürümünde kaldırılacaktır. Yeni geliştirme işlerinde bu özelliği kullanmayın ve bu özelliği kullanmakta olan uygulamaları mümkün olduğunca erken bir zamanda değiştirin.
Dönüş Türleri
int
1 Döner karma clear_text_passwordeşleşen password_hashparametre ve yoksa 0.
Açıklamalar
İlk parametre olarak sağlanan parola kullanarak oturum açın deneyerek aynı sınama gerçekleştirilebilir pwdcompare işlevi bir tehdide karşı parola karma değerlerini gücü değildir.
İzinler
pwdencrypt için kullanılabilir public.
control server izni incelemek için gerekli password_hashsütununda sys.sql_logins.
Örnekler
A.Hiçbir parolalar sahip oturumların tanımlama
Aşağıdaki örnek tanımlar SQL Serverhiçbir parolalar sahip oturumların.
SELECT name FROM sys.sql_logins
WHERE PWDCOMPARE('', password_hash) = 1 ;
SELECT name FROM sys.sql_logins
WHERE PWDCOMPARE('', password_hash) = 1 ;
B.Ortak parola için arama
Belirlemek ve değiştirmek istediğiniz ortak parola için aramak için ilk parametre olarak parola belirtin. Örneğin, belirtilen parola aramak için aşağıdaki deyimi yürütme password.
SELECT name FROM sys.sql_logins
WHERE PWDCOMPARE('password', password_hash) = 1 ;
SELECT name FROM sys.sql_logins
WHERE PWDCOMPARE('password', password_hash) = 1 ;