Data Management (DMS), ilişkisel ve ilişkisel olmayan veritabanlarının güvenlik kurallarını SQL Konsolu sekmesinde yönetmenize olanak tanır. Güvenlik kurallarının tanımı ve sınıflandırması, ilişkisel ve ilişkisel olmayan veritabanları arasında farklılık gösterir. Bu konu, Redis veritabanları için SQL Konsolu sekmesinde bulunan kontrol noktalarını, faktörleri ve eylemleri açıklar.
Güvenlik kuralları nasıl çalışır?
SQL Konsolu sekmesindeki güvenlik kuralları kontrol noktaları aracılığıyla değerlendirilir. Her kontrol noktası, belirli bir Redis komutu kategorisini çalıştırılmadan önce engeller ve geçerli kuralları uygular.
Her kural bir IF/THEN (EĞER/O ZAMAN) yapısını takip eder:
IF: Geçerli komutu ve komutu çalıştıran kullanıcıyı tanımlayan sistem değişkenlerinden (faktörler) oluşan bir koşul (örneğin, komutun bir yazma işlemi olup olmadığı veya ortamın üretim ortamı olup olmadığı).
THEN: Bir eylem — Koşul karşılandığında DMS'nin gerçekleştirdiği işlem (örneğin, komutu reddetmek veya izin kontrolü olmadan çalıştırmak).
Aşağıdaki diyagram değerlendirme akışını göstermektedir:

DMS, her kontrol noktası için önceden tanımlanmış yapılandırmalar ve kurallar sağlar. Erişim kontrolü gereksinimlerinize uyacak şekilde yapılandırmaları değiştirin, kural durumlarını güncelleyin veya özel kurallar oluşturun. Daha fazla bilgi için bkz. Güvenlik kurallarını yapılandırma .
Kontrol noktaları
Her kontrol noktası, belirli bir Redis komutu grubunu hedefler. Bir kontrol noktası altında yapılandırılan kurallar yalnızca o gruptaki komutlara uygulanır.
Standart Redis kontrol noktaları
| Kontrol Noktası | Kontrol edilen komutlar |
|---|---|
| İzin Yürütme İfadesi Kriterleri | Komut yürütme izinlerine kısıtlamalar getirmenize olanak tanır. Örneğin, bu kontrol noktasını, bir kullanıcı bir komut gönderdiğinde DMS'nin kullanıcının veritabanı, tablo veya sütun üzerinde gerekli izinlere sahip olup olmadığını kontrol edecek şekilde yapılandırabilirsiniz. |
| İfade Kriterleri: Anahtarlar | Anahtarla ilgili komutlar |
| İfade Kriterleri: String | String ile ilgili komutlar |
| İfade Kriterleri: List | Liste ile ilgili komutlar |
| İfade Kriterleri: SET | Set ile ilgili komutlar |
| İfade Kriterleri: SortedSet | Sıralı set ile ilgili komutlar |
| İfade Kriterleri: Hash | Hash tablosu ile ilgili komutlar |
| İfade Kriterleri: Diğer | Yukarıdaki türlerden hiçbirine ait olmayan komutlar |
Tair'e özgü kontrol noktaları
Bu kontrol noktaları yalnızca Tair uzantılarını kullanan örneklerde geçerlidir. Redis örneğiniz Tair modüllerini kullanmıyorsa, bu kontrol noktaları kurulumunuz için geçerli değildir.
| Kontrol Noktası | Kontrol edilen komutlar |
|---|---|
| İfade Kriterleri: Cpc | TairCpc komutları |
| İfade Kriterleri: Ts | TairTS komutları |
| İfade Kriterleri: Roaring | TairRoaring komutları |
| İfade Kriterleri: Search | TairSearch komutları |
Faktörler
Faktör, kural değerlendirmesi için bağlam sağlayan yerleşik bir sistem değişkenidir. Bir güvenlik kuralının IF koşulunu yazmak için faktörleri kullanın.
Faktör adları, @fac. ön eki ve ardından faktörün görünen adı şeklinde oluşturulur. Güvenlik kuralı kümesi Details sayfasındaki her kontrol noktası sekmesi, o kontrol noktası için kullanılabilir faktörleri gösterir.
| Faktör | Açıklama |
|---|---|
@fac.cmd_type |
Komutun türü. Geçerli değerler için bkz. Redis için sözdizimi desteği. |
@fac.env_type |
Ortam türü. Değer, DEV veya PRODUCT gibi ortamın görünen adıdır. Daha fazla bilgi için bkz. Bir örneğin ortam türünü değiştirme. |
@fac.is_read |
Komutun bir okuma komutu olup olmadığı. Geçerli değerler: true, false. |
@fac.is_write |
Komutun bir yazma komutu olup olmadığı. Geçerli değerler: true, false. |
@fac.current_sql |
Geçerli komut. |
@fac.user_is_admin |
Geçerli kullanıcının bir DMS yöneticisi olup olmadığı. Geçerli değerler: true, false. |
@fac.user_is_dba |
Geçerli kullanıcının bir veritabanı yöneticisi (DBA) olup olmadığı. Geçerli değerler: true, false. |
@fac.user_is_inst_dba |
Geçerli kullanıcının geçerli veritabanı örneğinin DBA'sı olup olmadığı. Geçerli değerler: true, false. |
Eylemler
Bir eylem, bir kuralın IF koşulu karşılandığında DMS'nin ne yapacağını tanımlar. Eylem adları, @act. ön eki ve ardından eylemin görünen adı şeklinde oluşturulur. Details sayfasındaki her kontrol noktası sekmesi, o kontrol noktası için kullanılabilir eylemleri gösterir.
| Eylem | Açıklama |
|---|---|
@act.reject_execute |
Geçerli komutu çalıştırma isteğini reddeder. |
@act.allow_execute |
Geçerli komutun çalışmasına izin verir. |
@act.check_redis_permission |
Geçerli kullanıcının komutu çalıştırma iznine sahip olup olmadığını kontrol eder. Kullanıcının izni varsa komutu çalıştırır. |
@act.query_without_permission_check |
Geçerli kullanıcının izinlerini kontrol etmeden geçerli komutu çalıştırır. |
Sonraki adımlar
Güvenlik kurallarını yapılandırma — önceden tanımlanmış kuralları değiştirin, kural durumlarını güncelleyin veya özel kurallar oluşturun
Redis için sözdizimi desteği — DMS tarafından desteklenen tüm Redis komutlarını ve
@fac.cmd_typeiçin geçerli değerleri görüntüleyin