Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
PostgreSQL için Azure Veritabanı'ndaki veritabanı etkinliklerinin pgaudit denetim günlüğüne uzantı aracılığıyla erişilebilir.
pgaudit ayrıntılı oturum ve/veya nesne denetim günlüğü sağlar.
İşlem ve depolama ölçeklendirme gibi işlemler için Azure kaynak düzeyinde günlükler istiyorsanız bkz . Azure Etkinlik Günlüğü.
Kullanımla ilgili dikkat edilmesi gerekenler
Varsayılan olarak, pgaudit günlük deyimleri ve normal günlük deyimleriniz Postgres'in standart günlüğe kaydetme özelliği kullanılarak gönderilir. PostgreSQL için Azure Veritabanı'nda, Log Analytics'te daha sonra analiz için Azure İzleyici Günlük deposuna gönderilecek tüm günlükleri yapılandırabilirsiniz. Azure İzleyici kaynak günlüğünü etkinleştirirseniz, günlükleriniz tercihinize bağlı olarak otomatik olarak (JSON biçiminde) Azure Depolama, Event Hubs ve/veya Azure İzleyici günlüklerine gönderilir.
Azure Depolama, Event Hubs veya Azure İzleyici günlüklerinde günlüğe kaydetmeyi ayarlamayı öğrenmek için sunucu günlükleri makalesinin kaynak günlükleri bölümünü ziyaret edin.
Uzantıyı yükleme
Uzantıyı kullanabilmek pgaudit için, uzantıyı kullanmayı planladığınız veritabanında izin verilenler listesine eklemeniz, yüklemeniz ve oluşturmanız gerekir.
Uzantı ayarlarını yapılandırma
pgaudit oturum veya nesne denetim günlüğünü yapılandırmanıza olanak tanır.
Oturum denetim günlüğü , yürütülen deyimlerin ayrıntılı günlüklerini gösterir.
Nesne denetim günlüğü , denetim kapsamının belirli ilişkilere göre belirlenmiş olmasıdır. Bir veya her iki türdeki günlük kaydını ayarlamayı seçebilirsiniz.
'yi etkinleştirdikten pgauditsonra, günlüğe kaydetmeyi başlatmak için parametrelerini yapılandırabilirsiniz.
yapılandırmak pgauditiçin şu yönergeleri izleyebilirsiniz:
Azure portalını kullanma:
PostgreSQL için Azure Veritabanı örneğinizi seçin.
Kaynak menüsünde, Ayarlar'ın altında Sunucu parametreleri'ni seçin.
Parametreleri arayın
pgaudit.Düzenlemek için uygun parametreyi seçin. Örneğin , ,
INSERT,UPDATEDELETEveTRUNCATEdeyimlerini günlüğe kaydetmeyeCOPYbaşlamak için olarakpgaudit.logayarlayınWRITE.Değişiklikleri kaydetmek için Kaydet düğmesini seçin.
resmi belgeleripgaudit her parametrenin tanımını sağlar. Önce parametreleri test edin ve beklenen davranışı elde ettiğinizi onaylayın.
Örneğin ayarı, pgaudit.log_clientON denetim olaylarını yalnızca sunucu günlüğüne yazmakla kalmaz, aynı zamanda istemci işlemlerine de gönderir (psql gibi). Bu ayar genellikle devre dışı bırakılmalıdır.
pgaudit.log_level parametresi ancak pgaudit.log_client açık olduğunda etkinleştirilir.
PostgreSQL için Azure Veritabanı'nda, pgaudit.log belgelerde - açıklandığı gibi (eksi) işareti kısayolu kullanılarak pgaudit ayarlanamaz. Tüm gerekli deyim sınıfları (READ, WRITE, vb.) ayrı ayrı belirtilmelidir.
parametresini log_statement veya olarak DDL ayarlar ve bir ALL veya CREATE ROLE/USER ... WITH PASSWORD ... ;ALTER ROLE/USER ... WITH PASSWORD ... ;komutu çalıştırırsanız PostgreSQL, PostgreSQL günlüklerinde parolanın düz metin olarak günlüğe kaydedildiği bir girdi oluşturur ve bu da olası bir güvenlik riskine neden olabilir. PostgreSQL altyapısı tasarımına göre beklenen davranıştır.
Bununla birlikte, uzantısını pgaudit kullanabilir ve olarak ayarlayabilirsiniz pgaudit.logDDL. Bu uzantı, olarak ayarlandığından CREATE/ALTER ROLElog_statementfarklı olarak Postgres sunucu günlüğüne herhangi bir DDL deyim kaydetmez. Bu deyimleri günlüğe kaydetmeniz gerekiyorsa, olarak da ayarlayabilirsiniz pgaudit.log. Bu ayar, günlüğe ROLEkaydederken CREATE/ALTER ROLEparolayı günlüklerden yeniden işler.
Denetim günlüğü biçimi
Her denetim girdisi ile AUDIT:başlar. Girdinin geri kalanının biçimi, belgelerinde ayrıntılı olarak yer alır pgaudit.
Başlangıç Yapmak
Hızlı bir şekilde başlamak için olarak ayarlayın pgaudit.logALLve sunucu günlüklerinizi açarak çıkışı gözden geçirin.
Denetim günlüklerini görüntüleme
Günlüklere erişme şekliniz hangi uç noktayı seçtiğinize bağlıdır. Azure Depolama için günlük depolama hesabı makalesine bakın. Event Hubs için Azure günlüklerini akışla aktarma makalesine bakın.
Azure İzleyici Günlükleri için günlükler seçtiğiniz çalışma alanına gönderilir. Postgres günlükleri AzureDiagnostics koleksiyon modunu kullanır, böylece AzureDiagnostics tablosundan sorgulanabilir. Azure İzleyici Günlükleri sorgusuna genel bakış bölümünde sorgulama ve uyarı oluşturma hakkında daha fazla bilgi edinin.
Başlamak için bu sorguyu kullanabilirsiniz. Uyarıları sorgulara göre yapılandırabilirsiniz.
Son gün belirli bir sunucu için Postgres günlüklerindeki tüm pgaudit girişleri arama
AzureDiagnostics
| where Resource =~ "<flexible-server-name>"
| where Category == "PostgreSQLLogs"
| where TimeGenerated > ago(1d)
| where Message contains "AUDIT:"
pgaudit uzantısının yüklü olduğu Ana Sürüm Yükseltmesi
Ana sürüm yükseltmesi sırasında pgaudit uzantısı otomatik olarak bırakılır ve yükseltme tamamlandıktan sonra yeniden oluşturulur. Uzantı geri yüklenirken, içinde pgaudit.log ayarlanan özel yapılandırmalar veya diğer ilgili parametreler otomatik olarak korunmaz.