Tüm Ürünler
Search
Belge Merkezi

Data Management:SQL Correct

Son Güncelleme:Oct 04, 2026

SQL Correct özelliği, SQL değişikliklerini çalıştırmanın giriş noktasıdır ve yüksek düzeyde güvenlik gerektirir. Onay için bir talep gönderdiğinizde, bir dizi güvenlik kuralı isteği doğrular. Yalnızca bu doğrulamadan geçen SQL deyimleri çalıştırılabilir.

Ön koşullar

Bir Administrator, DBA veya Security Administrator olmalısınız.

Arka plan bilgileri

Data Management (DMS) içindeki güvenlik kuralları, esnek alan özel dili (DSL) yetenekleri sunar. Bu sayede risk seviyelerini ihtiyaca göre özelleştirebilir ve farklı risklere sahip değişiklikler için farklı onay iş akışları kullanabilirsiniz. Örneğin, SQL çalıştırmayı sıkı bir şekilde sınırlayabilir veya tüm SQL deyimlerine daha esnek izin verebilirsiniz.

SQL Correct modülü kontrol noktaları

Kontrol Noktası

Açıklama

Örnek

Basic Configuration Item

Bu bölüm beş varsayılan kural içerir:

  • Default approval template for data changes: Veri değişikliği talepleri için varsayılan onay şablonu kimliği 853'tür ve onaylayan DBA'dır.

    Not

    Varsayılan onay şablonunu değiştirmek için bkz. Varsayılan onay şablonunu değiştirme.

  • Risk level list for data changes: Risk seviyeleri, taleplerdeki değişikliklerin risklerini değerlendirmek için kullanılır. Farklı senaryolar için farklı risk seviyeleri ve onay iş akışları ayarlayabilirsiniz. Bu özellik öncelikli olarak Risk Identification Rules ve Risk Approval Rules kontrol noktalarında kullanılır.

    Dört varsayılan risk seviyesi mevcuttur:

    • LOW: Düşük risk

    • MIDDLE: Orta risk

    • HIGH: Yüksek risk

    • HIGHEST: Kritik risk

  • Support for simple mode in data import: Bu güvenlik kuralını kullanan veritabanları için veri içe aktarma talepleri oluştururken basit modun desteklenip desteklenmeyeceğini belirtir. Daha fazla bilgi için bkz. Veri İçe Aktarma.

  • Allow Skipping The Affected Rows Check For Standard Data Changes: Bu kuralı etkinleştirirseniz DMS, ön kontrol aşamasında standart veri değişikliği talepleri için etkilenen satır kontrolünün atlanmasını yasaklar. Aksi takdirde bu kontrolü atlayabilirsiniz.

  • Prohibit submitting normal data change tickets with inconsistent row count checks: Bu kural etkinleştirildiğinde, satır sayısı kontrolü tutarsız olan normal veri değişikliği talepleri gönderilemez. Aksi takdirde gönderilebilirler.

-

SQL execution rules

SQL penceresinde çalıştırılabilecek SQL deyimlerini kısıtlar. Yalnızca izin verilen SQL deyimleri çalıştırılabilir.

Not

Çelişen iki kural etkinleştirilirse daha katı olan kural uygulanır.

Örneğin, aşağıdaki iki kuralın ikisi de etkinleştirilirse sistem ikinci kuralı uygular.

  • Tüm DML deyimlerinin SQL konsolunda doğrudan çalıştırılmasına izin ver.

  • Tüm DML deyimlerinin SQL konsolunda doğrudan çalıştırılmasını yasakla. Bunlar yalnızca talepler aracılığıyla çalıştırılmalıdır.

Yalnızca DML deyimlerinin çevrimiçi ürün veritabanını değiştirmesine izin vermek için aşağıdaki SQL çalıştırma kuralını ekleyin:

Varsayımlar

if
  @fac.env_type not in ['product']
  and
  @fac.sql_type in [ 'UPDATE','DELETE','INSERT']
then
  @act.allow_submit
end

Anlamı: Veritabanı ortamı bir üretim ortamı değilse ve SQL deyimi UPDATE, DELETE veya INSERT türündeyse SQL deyiminin çalıştırılmasına izin verilir.

Risk Identification Rules

Gönderilen taleplerin risk seviyesini tanımlar. Veritabanı ortamı, etkilenen satır sayısı ve SQL türü gibi koşullara göre risk seviyelerini özelleştirebilirsiniz.

Not

Farklı güvenlik kuralları bir değişiklik görevini farklı risk seviyeleriyle işaretler. Nihai risk seviyesi, işaretlenen tüm seviyeler arasındaki en yüksek olandır.

Örneğin, 5 düşük, 3 orta ve 1 yüksek riske sahip bir SQL değişiklik görevi yüksek riskli olarak sınıflandırılır.

Çevrimdışı ortamları düşük riskli olarak tanımlamak için aşağıdaki risk tanımlama kuralını ekleyin:

if
  @fac.env_type not in ['product','pre']
then
  @act.mark_risk 'low' 'Low risk: offline environment'
end

Anlamı: Veritabanı ortamı bir üretim ortamı değilse risk seviyesi düşüktür.

Risk Approval Rules

Farklı risk seviyeleri için onay kurallarını yapılandırın veya özelleştirin.

Bir veritabanı değişikliği Risk Identification Rules kontrol noktasında herhangi bir risk seviyesine uymuyorsa Basic Configuration Item bölümündeki Default approval template for data changes tarafından belirtilen onay iş akışını kullanır.

Varsayılan olarak hazırlama ortamı düşük riskli kabul edilir ve onay gerektirmez.

Batch data import rules

Data Import talepleri için geçerli olan doğrulama kuralları.

Insert deyimlerinin toplu içe aktarılmasına izin verir.

Varsayılan onay şablonunu değiştirme

  1. DMS 5.0 konsolunda oturum açın.

  2. Sol üst köşedeki 2023-01-28_15-57-17.png simgesinin üzerine gelin ve All Features > Security and disaster recovery (DBS) > Security Rules seçeneğini belirleyin.

    Not

    DMS konsolunu normal modda kullanıyorsanız üst gezinme çubuğundan Security and disaster recovery (DBS) > Security Rules seçeneğini belirleyin.

  3. Security Rules sekmesinde hedef kural kümesini bulun ve Actions sütununda Edit seçeneğine tıklayın.

  4. Details sayfasındaki sol gezinme bölmesinde SQL Correct seçeneğine tıklayın.

  5. Checkpoints bölümünde Basic Configuration Item seçeneğine tıklayın.

  6. Data change default approval Template satırında Actions sütunundaki Edit seçeneğine tıklayın.

  7. Change Configuration Item iletişim kutusunda Switch Approval Template seçeneğine tıklayın.

  8. Switch Approval Template iletişim kutusunda hedef şablonu bulun ve Actions sütunundaki Select seçeneğine tıklayın.

    Not

    Taleplerin onay gerektirmemesi durumunda onay adımını atlamak için Reset to Approval-Free seçeneğine tıklayabilirsiniz.

  9. Submit seçeneğine tıklayın.

SQL Correct modülü için faktörler ve eylemler

Faktörler

Faktörler yerleşik sistem değişkenleridir. SQL türü ve etkilenen satır sayısı gibi güvenlik kuralı doğrulaması için bağlam bilgisi almak amacıyla bunları kullanabilirsiniz.

  • Tüm faktörler @fac. ile başlar ve ardından faktör adı gelir.

  • Her modüldeki farklı kontrol noktaları farklı faktörler sağlar.

Tablo 1. Faktör listesi

Faktör

Açıklama

@fac.env_type

Ortam türü. Değer, DEV veya PRODUCT gibi ortam tanımlayıcısıdır. Daha fazla bilgi için bkz. Örnek ortamları.

@fac.sql_type

SQL betiğinin türü; örneğin UPDATE veya INSERT. Daha fazla bilgi için SQLConsole bölümündeki SQL alt sınıflarının açıklamasına bakın.

@fac.detail_type

Veri değişikliği türü:

  • COMMON: Normal veri değişikliği

  • CHUNK_DML: Kilitsiz veri değişikliği

  • PROCEDURE: Saklı yordam

  • CRON_CLEAR_DATA: Zamanlanmış tablo temizleme

  • BIG_FILE: Toplu veri içe aktarma

@fac.is_logic

Veritabanının mantıksal bir veritabanı olup olmadığını gösterir.

@fac.extra_info

Diğer değişiklik bilgileri. Bu faktör kullanımda değildir.

@fac.is_ignore_affect_rows

Kontrolün atlanıp atlanmayacağını gösterir.

@fac.insert_rows

Bir insert işlemi için etkilenen satır sayısı.

@fac.update_delete_rows

Etkilenen satır sayısı.

@fac.max_alter_table_size

Değiştirilen tablonun maksimum tablespace boyutu.

@fac.is_has_security_column

SQL betiğinin hassas sütunlar içerip içermediğini gösterir.

@fac.security_column_list

SQL betiğinin içerdiği hassas sütunların listesi.

@fac.risk_level

Algılanan risk seviyesi. Geçerli değerler en düşükten en yükseğe doğru sıralanmış küçük harfli İngilizce dizelerdir:

  • low: düşük risk

  • middle: orta risk

  • high: yüksek risk

  • highest: kritik risk

@fac.risk_reason

Bu risk seviyesinin algılanma nedeni.

@fac.table_name_list

SQL değişikliğinde yer alan tablo adlarının listesi. Örnek:

if    
   'tb_order' in @fac.table_name_list or 'tb1_order' in @fac.table_name_list
then    
    @act.mark_risk 'high' 'High risk: Involves changes to the order table'
end

Anlamı: SQL değişikliği tb_order veya tb1_order tablosunu içeriyorsa risk seviyesi yüksektir.

Eylemler

Eylem, if koşulu karşılandığında sistemin gerçekleştirdiği davranıştır. Örnekler arasında talep göndermeyi yasaklama, iş akışı seçme, çalıştırmaya izin verme ve çalıştırmayı reddetme yer alır.

  • Tüm eylemler @act. ile başlar ve ardından eylem adı gelir.

  • Her modüldeki farklı kontrol noktaları farklı eylemler sağlar.

Tablo 2. Eylem listesi

Eylem

Açıklama

@act.allow_submit

Talebin çalıştırılmak üzere gönderilmesine izin verir.

@act.allow_execute_direct

SQL konsolunda doğrudan çalıştırmaya izin verir.

@act.forbid_execute

Çalıştırmayı yasaklar.

@act.mark_risk

Bir riski işaretler. İlk parametre risk seviyesini belirtir ve yalnızca aşağıdaki dört küçük harfli İngilizce değeri (en düşükten en yükseğe) destekler: low (düşük risk), middle (orta risk), high (yüksek risk), highest (kritik risk). İkinci parametre risk nedeninin açıklamasıdır. Kullanım: @act.mark_risk 'middle' 'Medium risk: production environment'.

@act.do_not_approve

Bir onay şablonunun kimliğini belirtir. Daha fazla bilgi için bkz. Onay iş akışlarını ayarlama.

@act.choose_approve_template

@act.choose_approve_template_with_reason