Zakładam, że szukasz definicji i głównej przyczyny tych zdarzeń.
Z tego, jak to działa: SQL Server 2005 SP2 Security Ring Buffer - RING_BUFFER_SECURITY_ERROR ( archiwum ) :
SQL Server 2005 SP2 dodał nowe wpisy bufora pierścieniowego ( sys.dm_os_ring_buffers
) dla różnych błędów bezpieczeństwa. Powodem, dla którego dodano wpisy bufora pierścieniowego, było dostarczenie DBA dodatkowych informacji na temat tego, dlaczego klient otrzymuje nieudane logowanie lub inny taki błąd.
Oświadczasz, że nie ma nieudanych wpisów logowania w dzienniku zdarzeń ani w dzienniku błędów. Zamiast tego możesz bezpośrednio wysłać zapytanie do tego bufora pierścieniowego:
SELECT CONVERT (varchar(30), GETDATE(), 121) as runtime,
dateadd (ms, (a.[Record Time] - sys.ms_ticks), GETDATE()) as [Notification_Time],
a.* , sys.ms_ticks AS [Current Time]
FROM
(SELECT
x.value('(//Record/Error/ErrorCode)[1]', 'varchar(30)') AS [ErrorCode],
x.value('(//Record/Error/CallingAPIName)[1]', 'varchar(255)') AS [CallingAPIName],
x.value('(//Record/Error/APIName)[1]', 'varchar(255)') AS [APIName],
x.value('(//Record/Error/SPID)[1]', 'int') AS [SPID],
x.value('(//Record/@id)[1]', 'bigint') AS [Record Id],
x.value('(//Record/@type)[1]', 'varchar(30)') AS [Type],
x.value('(//Record/@time)[1]', 'bigint') AS [Record Time]
FROM (SELECT CAST (record as xml) FROM sys.dm_os_ring_buffers
WHERE ring_buffer_type = 'RING_BUFFER_SECURITY_ERROR') AS R(x)) a
CROSS JOIN sys.dm_os_sys_info sys
ORDER BY a.[Record Time] ASC
Czas powiadomienia może rzucić nieco światła na pierwotną przyczynę.
Myślę, że przekonasz się, że data / czas wpisów będą zgodne z wpisami błędu logowania w dzienniku błędów podobnym do:
„Logowanie nie powiodło się dla użytkownika„ domena \ użytkownik ”. Przyczyna: Błąd dostępu do serwera opartego na tokenach nie powiódł się błąd infrastruktury. Sprawdź wcześniejsze błędy. [KLIENT:] Błąd: 18456 Poziom ważności: 14 Stan: 11.”
Z rozwiązywania problemów związanych z konkretnymi komunikatami o błędach logowania ( archiwum ) :
Stan 11 odpowiada „Nieprawidłowy login, ale błąd dostępu do serwera”, który wskazuje, że login jest prawidłowy, ale brakuje pewnych uprawnień bezpieczeństwa, które zapewniłyby mu dostęp do instancji.
- Sprawdź, czy ten login jest bezpośrednio zamapowany na jednym z loginów SQL Server, sprawdzając dane wyjściowe sys.server_principals.
- Jeśli login jest bezpośrednio odwzorowany na jedno z dostępnych loginów w instancji SQL, sprawdź, czy SID logowania odpowiada SID logowania Windows.
Jeśli ktoś upuści login na poziomie Windows / AD i doda go z powrotem, otrzyma nowy identyfikator SID, który nie będzie zgodny z identyfikatorem SID SQL zapisanym w katalogu systemowym i zakończy się niepowodzeniem.