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.
Şunlar için geçerlidir: SQL Server 2016 (13.x) ve sonraki sürümler
Azure SQL Database
Azure SQL Managed Instance
SQL database in Microsoft Fabric
Geçici tablolar için geçerli olan güvenliği anlamak için, zamansal tablolar için geçerli olan güvenlik ilkelerini anlamanız gerekir. Bu güvenlik ilkelerini anladıktan sonra, CREATE TABLE, ALTER TABLEve SELECT deyimleri etrafında güvenliği incelemeye hazır olursunuz.
Güvenlik ilkeleri
Aşağıdaki tabloda, zamana bağlı tablolar için geçerli olan güvenlik ilkeleri açıklanmaktadır:
| Principle | Description |
|---|---|
| Sistem sürümünü etkinleştirme/devre dışı bırakma, etkilenen nesnelerde en yüksek ayrıcalıkları gerektirir |
SYSTEM_VERSIONING etkinleştirilmesi ve devre dışı bırakılması için hem geçerli hem de geçmiş tablosunda CONTROL izni gerekir. |
| Geçmiş verileri doğrudan değiştirilemez |
SYSTEM_VERSIONING
ONdurumunda, kullanıcılar mevcut veya geçmiş tablosundaki izinlerinden bağımsız olarak geçmiş verilerini değiştiremez. Bu sınırlama hem veri hem de şema değişikliklerini içerir.
1 |
Geçmiş verilerini sorgulamak için geçmiş tablosunda SELECT izni gerekir |
Geçerli tabloda SELECT izni olan bir kullanıcının, geçmiş tablosunda otomatik olarak SELECT izni yoktur. |
| Denetim, geçmiş tablosunu etkileyen işlemleri belirli şekillerde gösterir | Geçerli tablodaki denetim ayarları, geçmiş tablosuna otomatik olarak uygulanmaz. Geçmiş tablosu için denetimin açıkça etkinleştirilmesi gerekir. Etkinleştirildikten sonra, geçmiş tablosunda denetim, verilere erişmeye yönelik tüm doğrudan girişimleri düzenli olarak yakalar (başarılı olup olmasalar da). zamansal sorgu uzantısıyla SELECT, geçmiş tablosunun bu işlemden etkilendiğini gösterir.CREATE/ALTER zamansal tablo, izin denetiminin geçmiş tablosunda da gerçekleştiği bilgisini gösterir. Denetim dosyası, geçmiş tablosu için ek kayıtlar içerir.Geçerli tablodaki DML işlemleri, geçmiş tablosunun etkilendiğini gösteriyor, ancak DML’nin additional_informationsonucu olduğu bağlamını SYSTEM_VERSIONING sağlıyor. |
1 Geçerli tablo ve geçmiş tablosu üzerinde ALTER izniniz varsa ve geçerli tabloya bir sütun bırakırsanız, SYSTEM_VERSIONINGONolsa bile geçmiş tablosundaki ilişkili sütun da bırakılır.
Şema işlemlerini gerçekleştirme
SYSTEM_VERSIONING
ONolarak ayarlandığında şema değiştirme işlemleri sınırlıdır.
İzin verilmeyen ALTER şema işlemleri
| Operation | Geçerli tablo | Geçmiş tablosu |
|---|---|---|
DROP TABLE |
Disallowed | Disallowed |
ALTER TABLE...SWITCH PARTITION |
Yalnızca SWITCH IN (bkz. Zamansal tablolar içeren bölüm) |
Yalnızca SWITCH OUT (bkz. Zamansal tablolar içeren bölüm) |
ALTER TABLE...DROP PERIOD |
Disallowed | N/A |
ALTER TABLE...ADD PERIOD |
N/A | Disallowed |
İzin verilen ALTER TABLE işlemleri
| Operation | Current | History |
|---|---|---|
ALTER TABLE...REBUILD |
İzin verilmiş (bağımsız olarak) | İzin verilen (bağımsız) |
CREATE INDEX |
İzin verilen (bağımsız) | Bağımsız şekilde izin verildi. |
CREATE STATISTICS |
İzinli (bağımsız) | İzin verildi (bağımsız) |
CREATE zamana bağlı tablo deyiminin güvenliği
| Feature | Yeni geçmiş tablosu oluşturma | Mevcut geçmiş tablosunu yeniden kullanma |
|---|---|---|
| İzin gerekiyor | Veritabanında izin CREATE TABLEgeçerli ve geçmiş durum tablolarının oluşturulduğu şemalar üzerinde ALTER izni |
Veritabanında izin CREATE TABLEGeçerli tablonun oluşturulacağı şema üzerinde ALTER izinlerine sahip olunmalıdır.Geçici tablo oluşturulurken CONTROL deyiminin parçası olarak belirtilen geçmiş tablosu üzerindeki CREATE TABLE izni. |
| Audit | Denetim, kullanıcıların iki nesne oluşturmayı denediğini gösterir. veritabanında tablo oluşturma izinlerinin olmaması veya her iki tablonun şemalarını değiştirme izinlerinin olmaması nedeniyle işlem başarısız olabilir. | Denetim, zamansal tablonun oluşturulduğunu gösterir. Veritabanında tablo oluşturma izni olmaması, geçici tablo şemasını değiştirme izinlerinin olmaması veya geçmiş tablosunda izin olmaması nedeniyle işlem başarısız olabilir. |
ALTER zamana bağımlı tablo AYARLA (SİSTEM SÜRÜMLENDİRME AÇIK/KAPALI) deyiminin güvenliği
| Feature | Yeni geçmiş tablosu oluşturma | Mevcut geçmiş tablosunu yeniden kullanma |
|---|---|---|
| İzin gerekiyor | Veritabanında CONTROL izni.Veritabanında CREATE TABLE izni.geçmiş tablosunun oluşturulduğu şemalar üzerinde ALTER iznine sahip olma. |
Değiştirilen özgün tabloda CONTROL izni.CONTROL deyiminin parçası olarak belirtilen geçmiş tablosunda ALTER TABLE izni. |
| Audit | Denetim, zamana bağlı tablonun değiştirildiğini ve geçmiş tablosunun aynı anda oluşturulduğunu gösterir. Bu işlem veritabanında tablo oluşturma izinlerinin olmaması, geçmiş tablosu için şema değiştirme izinlerinin olmaması veya geçici tabloyu değiştirme izni olmaması nedeniyle başarısız olabilir. | Denetim, zamana bağlı tablonun değiştirildiğini, ancak işlemin geçmiş tablosuna erişim gerektirdiğini gösterir. Geçmiş tablosunda izin olmaması veya geçerli tablodaki izinlerin olmaması nedeniyle işlem başarısız olabilir. |
SELECT deyiminin güvenliği
geçmiş tablosunu etkilemeyen SELECT deyimleri için SELECT izni değişmeden kalır. Geçmiş tablosunu etkileyen SELECT deyimleri için hem geçerli tabloda hem de geçmiş tablosunda SELECT izni gerekir.
İlgili içerik
- Zamansal tablolar
- Sistem sürümüne sahip zamana bağlı tabloları kullanmaya başlama
- Zamansal tablo sistemi tutarlılık denetimleri
- Zamansal Tablolarla Bölme
- Zaman tablosuyla ilgili önemli noktalar ve sınırlamalar
- Sistem sürümündeki zamana bağlı tablolarda geçmiş verileri saklamayı yönetme
- Bellek için iyileştirilmiş tablolar sistem sürümüne sahip zamana bağlı tabloları
- Zamansal tablo meta veri görünümleri ve işlevleri