Ini TIDAK mungkin dan semua klaim yang bertentangan adalah minyak ular.
Meskipun benar bahwa Anda dapat memeriksa nama aplikasi dan membuat pemicu login yang menolak login berdasarkan properti ini, nama aplikasi bukanlah properti yang aman dan dapat dengan mudah dipalsukan oleh siapa pun. Mengandalkannya untuk keamanan (mis. penolakan login) adalah #fail.
Jadi selama Anda menurunkan bilah dan menghapus istilah sebagai 'tolak akses' dari pertanyaan Anda, dimungkinkan untuk memberikan Pemicu Masuk
yang memeriksa program_name
session sesi di sys.dm_exec_sessions
:
CREATE TRIGGER application_limit_trigger
ON ALL SERVER WITH EXECUTE AS '...'
FOR LOGON
AS
BEGIN
IF EXISTS (SELECT *
FROM sys.dm_exec_sessions
WHERE session_id = @@SPID
AND program_name IN (N'Bad Program', N'Worse Program', N'Unmentionable')
ROLLBACK;
END;
Program_name diatur oleh beberapa aplikasi, saya tidak tahu apakah Office suite mengatur properti ini menjadi sesuatu yang berguna atau membiarkannya default. Dan Anda harus memahami bahwa ini dapat dielakkan oleh siapa saja hanya dengan mengubah ApplicationName properti dalam string koneksi.