Witam,
Robiłem audyt jednej z baz i ustaliłem, że z bazą są połączenia (Select'y do tabel) z hosta którego nie znamy (powiedzmy którego nie powinno być po migracji do nowej firmy).
Jako, że administrator nie mógł dojść po nazwie co to za maszyna i gdzie się znajduje i co najważniejsze za co właściwie odpowiada postanowiliśmy zablokować dostęp tej maszyny po hostname (po loginie nie mogliśmy bo połączenie było za pomocą loginu używanego też poprawnie przez inne aplikacje).
Stworzyłem więc trigera:
CREATE TRIGGER [RestrictAccessPerApplication]
ON ALL SERVER
FOR LOGON
AS
BEGIN
IF (HOST_NAME() = 'nieZnanyHost')
BEGIN
PRINT 'Connection attempt blocked for hostname nieZnanyHost'
ROLLBACK;
END
END
GO
Dziś sprawdzam log i widzę coś takiego:
2018-11-15 0521.540 spid76 Connection attempt blocked for hostname nieZnanyHost
2018-11-15 0521.540 spid76 Error: 3609, Severity: 16, State: 2.
2018-11-15 0521.540 spid76 The transaction ended in the trigger. The batch has been aborted.
2018-11-15 0521.540 Logon Error: 17892, Severity: 20, State: 1.
2018-11-15 0521.540 Logon Logon failed for login 'uzywanyLogin' due to trigger execution. [CLIENT: 66.77.88.99]
I teraz mój zonk - spodziewał bym się, że CLIENT to IP tej maszyny o hostname: "nieZnanyHost" ... ale okazuje się, że to IP prowadzi do naszego regularnego serwera o nazwie "ZnanySerwer".
I teraz o co chodzi ? CLIENT nie wskazuje tego zablokowanego hosta ? A jeżeli nie to czemu tu się pojawia ?
Pewnie o czymś nie wiem ... także jakby ktoś mógł mnie oświecić byłbym bardzo wdzięczny.
Pozdr.
BB