Data Management (DMS) içindeki satır düzeyinde erişim kontrolü, belirli kullanıcıların sorgulayabileceği veri satırlarını belirlenmiş bir kontrol alanının bir veya daha fazla değerine göre kısıtlar. Bu özellik, farklı çalışanların yalnızca sorumluluklarıyla ilgili verileri görmesi gereken senaryolarda kullanışlıdır; örneğin, bir satış ekibi üyesinin yalnızca kendi bölgesine veya hesaplarına ait kayıtları görüntülemesi gerektiğinde bu yöntem uygulanır.
Kullanım senaryoları
Regional data separation: Çalışanları, bölge alanı atanmış bölgeleriyle eşleşen satırları sorgulamakla sınırlayın.
Çoklu tablo kontrolü: Tek bir kontrol grubu kullanarak bir veritabanındaki birden çok tabloda aynı kontrol değerini uygulayın.
Sorumluluklar
Satır düzeyinde erişim kontrolü, farklı sorumluluklara sahip iki rolü içerir:
| Rol | Sorumluluk |
|---|---|
| Veritabanı yöneticisi (DBA), DMS yöneticisi veya güvenlik yöneticisi | Satır düzeyinde erişim kontrolünü yapılandırma: Kontrol grubu oluşturma, satır yapılandırmaları ekleme ve kontrol değerlerini ayarlama |
| Tüm kullanıcılar (DBA'ler ve DMS yöneticileri dahil) | Kontrollü verileri sorgulamadan önce belirli satırlar için satır izinleri başvurusunda bulunma |
Ön koşullar
Başlamadan önce aşağıdakilere sahip olduğunuzdan emin olun:
Security Collaboration modunda yönetilen bir veritabanı örneği. Ayrıntılar için bkz. Kontrol modları
Veritabanı yöneticisi (DBA), DMS yöneticisi veya güvenlik yöneticisi rolü. Rolünüzü kontrol etmek için bkz. Sistem rollerini görüntüleme
Bir ilişkisel veritabanı: MySQL için ApsaraDB RDS, PostgreSQL için ApsaraDB RDS veya MySQL için PolarDB
Yalnızca fiziksel veritabanları desteklenir.
Sınırlamalar
Bir tablo bir kontrol grubuna yalnızca bir kez eklenebilir.
Tablo başına yalnızca bir kontrol alanı belirtilebilir.
Bir kontrol grubu silindiğinde, ilişkili tüm satır düzeyindeki kontrol yapılandırmaları devre dışı kalır.
Satır düzeyinde erişim kontrolünü yapılandırma
Aşağıdaki örnek, poc_prod adlı bir üretim veritabanını kullanır.
1. Adım: Kontrol grubu oluşturma ve satır yapılandırmaları ekleme
DMS konsolu V5.0 üzerinde oturum açın.
-
Sol üst köşedeki
simgesinin üzerine gelin ve seçeneğini belirleyin.NotDMS konsolunu normal modda kullanıyorsanız üst gezinme çubuğundan seçeneğini belirleyin.
-
Sensitive Data Assets bölümüne gidin:
Simge modu: Sol üst köşedeki
simgesinin üzerine gelin, ardından All Features > Security and disaster recovery (DBS) > Sensitive Data > Sensitive Data Assets seçeneklerini belirleyin.Normal mod: Üst gezinme çubuğundan Security and disaster recovery (DBS) > Sensitive Data > Sensitive Data Assets seçeneklerini belirleyin.
-
Sağ üst köşede, Global Sensitive Data seçeneğine tıklayarak Row Control sekmesini açın.
NotAlternatif olarak, Instance List bölümündeki Enabled sekmesinde Sensitive Data List seçeneğine tıklayabilirsiniz.
Row Control sekmesinde Create Control Group seçeneğine tıklayın ve kontrol grubu için bir ad girin.
-
Add Row Configuration seçeneğine tıklayın ve aşağıdakileri yapılandırın:
Database açılır listesinden veritabanını seçin. Gerekirse arama yapmak için bir anahtar sözcük girin.
Satır düzeyinde erişim kontrolünü uygulamak için tabloyu ve kontrol alanını seçin.
Add seçeneğine tıklayın.
2. Adım: Kontrol değerleri ekleme
Kontrol grubunun sağ tarafında Details seçeneğine tıklayın.
-
Add Row Value seçeneğine tıklayın ve aşağıdaki parametreleri ayarlayın:
Parametre Açıklama Append ? Yes: Yeni değerler mevcut değerlere eklenir. No: Yeni değerler mevcut değerlerin yerine geçer. Row Value Content Kontrol edilecek değerler. Birden çok değeri virgül (,) ile ayırın. Import seçeneğine tıklayın. Satır değerleri başarıyla içe aktarıldığında sayfanın üst kısmında bir onay mesajı görünür.
Satır izinleri için başvuru
Tüm kullanıcıların (DMS yöneticileri ve DBA'ler dahil) kontrollü satırları sorgulamadan önce bir izin bileti göndermesi ve onay alması gerekir.
DMS konsolu V5.0 üzerinde oturum açın.
-
Sol üst köşedeki
simgesinin üzerine gelin ve seçeneğini belirleyin.NotDMS konsolunu normal modda kullanıyorsanız üst gezinme çubuğundan seçeneğini belirleyin.
-
Permission Tickets bölümüne gidin:
Simge modu: Sol üst köşedeki
simgesinin üzerine gelin, ardından All Features > Security and disaster recovery (DBS) > Permission Center > Permission Tickets seçeneklerini belirleyin.Normal mod: Üst gezinme çubuğundan Security and disaster recovery (DBS) > Permission Center > Permission Tickets seçeneklerini belirleyin.
Access applyTickets sayfasında Access apply > Row Permission seçeneklerini belirleyin.
Hedef satırı seçin ve Add seçeneğine tıklayın. Satır, Selected Databases/Tables/Columns bölümünde görünür.
Select Permission bölümünde Query seçeneğini belirleyin ve Duration ile Reason alanlarını doldurun.
Submit seçeneğine tıklayın ve onayı bekleyin. Onaylandıktan sonra SQL Console'da kontrollü satırları sorgulayabilirsiniz. Biletinizin durumunu kontrol etmek için Workbench sekmesindeki My Tickets bölümüne gidin.
Diğer işlemler
| İşlem | Adımlar |
|---|---|
| Kontrol grubunu silme | Row Control sekmesinde kontrol grubunu bulun ve silin. Gruptaki tüm satır düzeyindeki kontrol yapılandırmaları devre dışı kalır. |
| Kontrol grubunu düzenleme | Row Control sekmesinde kontrol grubu adını veya yapılandırılmış kontrol alanlarını değiştirin. |
Sık Sorulan Sorular
Satır iznim onaylanmasına rağmen SQL Console'daki sorgum başarısız oluyor. Ne yapmalıyım?
Sorunu gidermek için aşağıdaki adımları uygulayın:
Hedef veritabanı ve tabloda sorgu izninizin olduğundan emin olun. Daha fazla bilgi için bkz. Satır izinleri için başvuru.
SQL Console sekmesinde WHERE koşulları içeren SQL deyimlerini kullanarak kontrollü veri satırlarını sorgulayın.
Örneğin, kontrol alanı buyer_name ise ve onaylanan değerleriniz name1, name2 ve name3 ise ve dms_test tablosunda sorgu izniniz varsa:
-
Tek bir değeri sorgulamak için
=veyaINkullanın:SELECT * FROM dms_test WHERE buyer_name = 'name1'; -
Birden çok değeri sorgulamak için
INkullanın:SELECT * FROM dms_test WHERE buyer_name IN ('name1', 'name2', 'name3');
Sonraki adım
Satır düzeyinde erişim kontrolünü yapılandırma — gelişmiş yapılandırma seçenekleri