Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy:Azure SQL Database
Azure SQL Managed Instance
Inspekcja usługi Azure SQL Database śledzi zdarzenia bazy danych i zapisuje je w dzienniku inspekcji na koncie usługi Azure Storage lub wysyła je do centrum zdarzeń lub usługi Log Analytics na potrzeby przetwarzania i analizy podrzędnej.
Konwencje nazewnictwa
Inspekcja obiektów blob
Dzienniki inspekcji przechowywane w usłudze Azure Blob Storage są przechowywane w kontenerze o nazwie sqldbauditlogs na koncie usługi Azure Storage. Hierarchia katalogów w kontenerze ma postać <ServerName>/<DatabaseName>/<AuditName>/<Date>/. Format nazwy pliku obiektu blob to <CreationTime>_<FileNumberInSession>.xel, gdzie CreationTime ma format UTC hh_mm_ss_ms i FileNumberInSession jest uruchomionym indeksem w przypadku, gdy dzienniki sesji obejmują wiele plików obiektów blob.
Na przykład w przypadku bazy danych Database1 w Server1 następującej ścieżce jest możliwa prawidłowa ścieżka:
Server1/Database1/SqlDbAuditing_ServerAudit_NoRetention/2019-02-03/12_23_30_794_0.xel
Dzienniki inspekcji replik tylko do odczytu są przechowywane w tym samym kontenerze. Hierarchia katalogów w kontenerze ma postać <ServerName>/<DatabaseName>/<AuditName>/<Date>/RO/. Nazwa pliku obiektu blob ma ten sam format. Dzienniki inspekcji replik tylko do odczytu są przechowywane w tym samym kontenerze.
Centrum zdarzeń usługi Event Hubs
Zdarzenia inspekcji są zapisywane w przestrzeni nazw i centrum zdarzeń, które zostało zdefiniowane podczas konfiguracji inspekcji i są przechwytywane w treści zdarzeń Apache Avro i przechowywane przy użyciu formatowania JSON i kodowania UTF-8. Aby odczytać dzienniki inspekcji, można użyć narzędzi Avro lub podobnych narzędzi, które przetwarzają ten format.
Analiza dzienników
Zdarzenia inspekcji są zapisywane w obszarze roboczym usługi Log Analytics zdefiniowanym podczas konfigurowania inspekcji, do AzureDiagnostics tabeli z kategorią i tabelą z kategorią SQLSecurityAuditEventsDevOpsOperationsAudit pomoc techniczna firmy Microsoft Operations. Aby uzyskać dodatkowe przydatne informacje na temat języka i poleceń wyszukiwania usługi Log Analytics, zobacz Informacje o wyszukiwaniu w usłudze Log Analytics.
Pola dziennika inspekcji
| Nazwa (obiekt blob) | Nazwa (Event Hubs/Log Analytics) | opis | Typ obiektów blob | Typ usługi Event Hubs/Log Analytics |
|---|---|---|---|---|
action_id |
action_id_s |
Identyfikator akcji | varchar(4) |
string |
action_name |
action_name_s |
Nazwa akcji | Nie dotyczy | string |
additional_information |
additional_information_s |
Wszelkie dodatkowe informacje o zdarzeniu przechowywane jako XML | nvarchar(4000) |
string |
affected_rows |
affected_rows_d |
Liczba wierszy, których dotyczy zapytanie | bigint |
int |
application_name |
application_name_s |
Nazwa aplikacji klienckiej | nvarchar(128) |
string |
audit_schema_version |
audit_schema_version_d |
Zawsze 1 | int |
int |
class_type |
class_type_s |
Typ jednostki inspekcji wykonywanej przez inspekcję | varchar(2) |
string |
class_type_desc |
class_type_description_s |
Opis jednostki z możliwością inspekcji wykonywanej przez inspekcję | Nie dotyczy | string |
client_ip |
client_ip_s |
Źródłowy adres IP aplikacji klienckiej | nvarchar(128) |
string |
connection_id |
Nie dotyczy | Identyfikator połączenia na serwerze | GUID |
Nie dotyczy |
data_sensitivity_information |
data_sensitivity_information_s |
Typy informacji i etykiety poufności zwracane przez zapytanie poddane inspekcji na podstawie kolumn sklasyfikowanych w bazie danych. Dowiedz się więcej na temat odnajdywania i klasyfikacji danych usługi Azure SQL Database | nvarchar(4000) |
string |
database_name |
database_name_s |
Kontekst bazy danych, w którym wystąpiła akcja | sysname |
string |
database_principal_id |
database_principal_id_d |
Identyfikator kontekstu użytkownika bazy danych, w ramach którego wykonywana jest akcja | int |
int |
database_principal_name |
database_principal_name_s |
Nazwa kontekstu użytkownika bazy danych, w którym wykonywana jest akcja | sysname |
string |
duration_milliseconds |
duration_milliseconds_d |
Czas trwania wykonywania zapytania w milisekundach | bigint |
int |
event_time |
event_time_t |
Data i godzina uruchomienia akcji z możliwością inspekcji | datetime2 |
datetime |
host_name |
Nie dotyczy | Nazwa hosta klienta | string |
Nie dotyczy |
is_column_permission |
is_column_permission_s |
Flaga wskazująca, czy jest to uprawnienie na poziomie kolumny. 1 = prawda, 0 = fałsz | bit |
string |
| Nie dotyczy | is_server_level_audit_s |
Flaga wskazująca, czy ta inspekcja jest na poziomie serwera | Nie dotyczy | string |
object_ id |
object_id_d |
Identyfikator jednostki, na której wystąpiła inspekcja. Obejmuje to obiekty serwera, bazy danych, obiekty bazy danych i obiekty schematu. 0, jeśli jednostka jest samym serwerem lub jeśli inspekcja nie jest wykonywana na poziomie obiektu | int |
int |
object_name |
object_name_s |
Nazwa jednostki, na której wystąpiła inspekcja. Obejmuje to obiekty serwera, bazy danych, obiekty bazy danych i obiekty schematu. 0, jeśli jednostka jest samym serwerem lub jeśli inspekcja nie jest wykonywana na poziomie obiektu | sysname |
string |
obo_middle_tier_app_id |
obo_middle_tier_app_id_s |
ID aplikacji średniej klasy, która łączyła się z Azure SQL Database za pomocą dostępu OBO. | varchar(120) |
string |
permission_bitmask |
permission_bitmask_s |
Jeśli ma to zastosowanie, pokazuje uprawnienia, które zostały przyznane, odrzucone lub odwołane | varbinary(16) |
string |
response_rows |
response_rows_d |
Liczba wierszy zwróconych w zestawie wyników | bigint |
int |
schema_name |
schema_name_s |
Kontekst schematu, w którym wystąpiła akcja.
NULL dla audytów zachodzących poza schematem |
sysname |
string |
| Nie dotyczy | securable_class_type_s |
Obiekt zabezpieczony, który odwzorowuje się na audytowany class_type obiekt |
Nie dotyczy | string |
sequence_group_id |
sequence_group_id_g |
Unikatowy identyfikator | varbinary |
GUID |
sequence_number |
sequence_number_d |
Śledzi sekwencję rekordów w ramach pojedynczego rekordu inspekcji, który był zbyt duży, aby zmieścić się w buforze zapisu na potrzeby inspekcji. Audyt Azure SQL Database przechowuje 4000 znaków danych dla pól znaków w rekordzie audytu. Jeśli istnieje więcej niż 4000 znaków, wszystkie dane przekraczające pierwsze 4000 znaków zostaną obcięte | int |
int |
server_instance_name |
server_instance_name_s |
Nazwa wystąpienia serwera, w którym wystąpiła inspekcja | sysname |
string |
server_principal_id |
server_principal_id_d |
Identyfikator kontekstu logowania, w którym wykonywana jest akcja | int |
int |
server_principal_name |
server_principal_name_s |
Bieżące logowanie | sysname |
string |
server_principal_sid |
server_principal_sid_s |
Bieżący identyfikator SID logowania | varbinary |
string |
session_id |
session_id_d |
Identyfikator sesji, w której wystąpiło zdarzenie | smallint |
int |
session_server_principal_name |
session_server_principal_name_s |
Jednostka serwera dla sesji | sysname |
string |
statement |
statement_s |
Instrukcja T-SQL, która została wykonana (jeśli istnieje) | nvarchar(4000) |
string |
succeeded |
succeeded_s |
Wskazuje, czy akcja, która wyzwoliła zdarzenie powiodło się. W przypadku zdarzeń innych niż identyfikator logowania i partia tylko zgłasza, czy sprawdzanie uprawnień zakończyło się powodzeniem, czy niepowodzeniem, a nie operacją. 1 = powodzenie, 0 = niepowodzenie | bit |
string |
target_database_principal_id |
target_database_principal_id_d |
Na zasadzie bazy danych, na której wykonywana jest operacjaGRANT//DENYREVOKE. 0, jeśli nie jest to możliwe |
int |
int |
target_database_principal_name |
target_database_principal_name_s |
Docelowy użytkownik akcji.
NULL jeśli nie ma zastosowania |
string |
string |
target_server_principal_id |
target_server_principal_id_d |
Podmiot zabezpieczeń serwera, na podstawie którego jest wykonywana GRANT/DENY/REVOKE operacja. Zwraca wartość 0, jeśli nie ma zastosowania |
int |
int |
target_server_principal_name |
target_server_principal_name_s |
Docelowy identyfikator logowania akcji.
NULL jeśli nie ma zastosowania |
sysname |
string |
target_server_principal_sid |
target_server_principal_sid_s |
Identyfikator SID identyfikatora logowania docelowego.
NULL jeśli nie ma zastosowania |
varbinary |
string |
transaction_id |
transaction_id_d |
Tylko program SQL Server (począwszy od wersji 2016) — 0 dla usługi Azure SQL Database | bigint |
int |
user_defined_event_id |
user_defined_event_id_d |
Identyfikator zdarzenia zdefiniowanego przez użytkownika został przekazany jako argument do sp_audit_writeelementu .
NULL dla zdarzeń systemowych (ustawienie domyślne) i niezerowe dla zdarzenia zdefiniowanego przez użytkownika. Aby uzyskać więcej informacji, zobacz sp_audit_write (Transact-SQL) |
smallint |
int |
user_defined_information |
user_defined_information_s |
Informacja zdefiniowana przez użytkownika przekazywana jako argument do sp_audit_write.
NULL dla zdarzeń systemowych (ustawienie domyślne) i niezerowe dla zdarzenia zdefiniowanego przez użytkownika. Aby uzyskać więcej informacji, zobacz sp_audit_write (Transact-SQL) |
nvarchar(4000) |
string |
Auditing in Azure Synapse Analytics
Aby uzyskać informacje o formacie dziennika audytu w Azure Synapse Analytics, zobacz Format dziennika audytu.
Następne kroki
Dowiedz się więcej o inspekcji usługi Azure SQL Database.