Merhaba,
Bugün anlatacağım konuyu farklı yöntemler ile de yapabilirsiniz aslında ama size farklı bir script daha paylaşmak istedim.
Örnek verecek olursak , LiveSRV adında bir Database Server’da bulunan WebUser adında bir login’i TestSRV adında bir farklı bir Database Server’da da olması isteniyor. Eğer WebUser login şifresini biliyor olsak TestSRV isimli makinada create login ile oluşturabiliriz. Peki Ya şifreyi Bilmiyorsak ne yapacağız ?
İşte bu durumda buradaki scripti kullanabiliriz ;
SELECT p.name,'create login ['+p.name+'] '+
CASE
WHEN p.type IN ('U' ,'G') THEN 'from windows '
ELSE ''
END+
'with '+
CASE
WHEN p.type='S' THEN 'password = '+MASTER.sys.fn_varbintohexstr(l.password_hash)
+' hashed, '+
'sid = '+MASTER.sys.fn_varbintohexstr(l.sid)+
', check_expiration = '+
CASE
WHEN l.is_policy_checked>0 THEN 'ON, '
ELSE 'OFF, '
END+'check_policy = '+CASE
WHEN l.is_expiration_checked>0 THEN
'ON, '
ELSE 'OFF, '
END+
CASE
WHEN l.credential_id>0 THEN 'credential = '+c.name+', '
ELSE ''
END
ELSE ''
END+
'default_database = '+p.default_database_name+
CASE
WHEN LEN(p.default_language_name)>0 THEN ', default_language = '+p.default_language_name
ELSE ''
END AS CreateScript
FROM sys.server_principals p
LEFT JOIN sys.sql_logins l
ON p.principal_id = l.principal_id
LEFT JOIN sys.credentials c
ON l.credential_id = c.credential_id
WHERE p.type IN ('S' ,'U' ,'G')
AND p.name<>'sa'
ORDER BY 1

Pingback: SQL Server – Orphaned User Nedir ? Nasıl Kontrol edilebilir ? | Ms Sql Server | Çağlar Özenç
Hellow my name is Martinkip. Wery proper article! Thx 🙂