Doku Veri Ambarı'nda dinamik veri maskelemeyi uygulama
Şunlar için geçerlidir:✅ Microsoft Fabric'te SQL analiz uç noktası ve Ambarı
Dinamik veri maskeleme, kuruluşların veritabanlarındaki hassas bilgileri korumalarına yardımcı olan son teknolojilerdendir. Belirli sütunlar için maskeleme kuralları tanımlamanıza olanak sağlayarak özgün verileri yalnızca yetkili kullanıcıların görmesini ve diğer kullanıcılar için gizlemesini sağlar. Dinamik veri maskeleme, kullanıcılara sunulan verileri erişim izinlerine göre dinamik olarak değiştirerek ek bir güvenlik katmanı sağlar.
Daha fazla bilgi için bkz . Doku veri ambarında dinamik veri maskeleme.
Önkoşullar
Başlamadan önce aşağıdakilere sahip olduğunuzdan emin olun:
- Etkin kapasite veya deneme kapasitesine sahip bir Microsoft Fabric çalışma alanı.
- Bir Ambar.
- Dinamik veri maskeleme, SQL analiz uç noktasında çalışır. Bu makalenin devamında gösterildiği gibi kullanarak
ALTER TABLE ... ALTER COLUMN
mevcut sütunlara maske ekleyebilirsiniz. - Bu alıştırmada Bir Ambar kullanılır.
- Dinamik veri maskeleme, SQL analiz uç noktasında çalışır. Bu makalenin devamında gösterildiği gibi kullanarak
- Yönetmek için, çalışma alanında Yönetici, Üye veya Katkıda Bulunan haklarına veya Ambar üzerinde yükseltilmiş izinlere sahip bir kullanıcı.
- Bu öğreticide ,"yönetici hesabı".
- Test etmek için, çalışma alanında Yönetici, Üye veya Katkıda Bulunan hakları olmayan ve Ambar üzerinde yükseltilmiş izinleri olmayan bir kullanıcı.
- Bu öğreticide , "test kullanıcısı".
1. Bağlan
- Doku çalışma alanını açın ve dinamik veri maskelemesini uygulamak istediğiniz Ambar'a gidin.
- Çalışma alanında Yönetici/Üye/Katkıda Bulunan rolü veya Ambardaki Denetim İzinleri olmak üzere, Ambar'da yükseltilmiş erişime sahip bir hesap kullanarak oturum açın.
2. Dinamik veri maskeleyi yapılandırma
Doku portalında yönetici hesabınızla oturum açın.
Doku çalışma alanında Ambarınıza gidin.
Yeni SQL sorgusu seçeneğini belirleyin ve Boş'un altında Yeni SQL sorgusu'na tıklayın.
SQL betiğinizde yan tümcesini
MASKED WITH FUNCTION
kullanarak dinamik veri maskeleme kuralları tanımlayın. Örneğin:CREATE TABLE dbo.EmployeeData ( EmployeeID INT ,FirstName VARCHAR(50) MASKED WITH (FUNCTION = 'partial(1,"-",2)') NULL ,LastName VARCHAR(50) MASKED WITH (FUNCTION = 'default()') NULL ,SSN CHAR(11) MASKED WITH (FUNCTION = 'partial(0,"XXX-XX-",4)') NULL ,email VARCHAR(256) NULL ); GO INSERT INTO dbo.EmployeeData VALUES (1, 'TestFirstName', 'TestLastName', '123-45-6789','email@youremail.com'); GO INSERT INTO dbo.EmployeeData VALUES (2, 'First_Name', 'Last_Name', '000-00-0000','email2@youremail2.com'); GO
- Sütunda
FirstName
dizenin yalnızca ilk ve son iki karakteri-
gösterilir ve ortada yer alır. LastName
sütununda gösterilirXXXX
.- Sütunun
SSN
ardından dizenin son dört karakteri gösterilirXXX-XX-
.
- Sütunda
Betiği yürütmek için Çalıştır düğmesini seçin.
Betiğin yürütülmesini onaylayın.
Betik, tablonuzda belirlenen sütunlara belirtilen dinamik veri maskeleme kurallarını uygular.
3. Dinamik veri maskeleme testi
Dinamik veri maskeleme kuralları uygulandıktan sonra, çalışma alanında Yönetici, Üye veya Katkıda Bulunan haklarına veya Ambar üzerinde yükseltilmiş izinlere sahip olmayan bir test kullanıcısıyla tabloyu sorgulayarak maskelemesi test edebilirsiniz.
- Azure Data Studio veya SQL Server Management Studio gibi bir araçta test kullanıcısı olarak oturum açın, örneğin TestUser@contoso.com.
- Test kullanıcısı olarak tabloda bir sorgu çalıştırın. Maskelenen veriler, tanımladığınız kurallara göre görüntülenir.
SELECT * FROM dbo.EmployeeData;
- Yönetici hesabınızla test kullanıcısından izin verin
UNMASK
.GRANT UNMASK ON dbo.EmployeeData TO [TestUser@contoso.com];
- Test kullanıcısı olarak, bir kullanıcının maskelenmemiş verileri görebildiği şekilde TestUser@contoso.com oturum açtığını doğrulayın.
SELECT * FROM dbo.EmployeeData;
- Yönetici hesabınızla test kullanıcısının
UNMASK
iznini iptal edin.REVOKE UNMASK ON dbo.EmployeeData TO [TestUser];
- Test kullanıcısının maskelenmemiş verileri, yalnızca maskelenmiş verileri göremediğini doğrulayın.
SELECT * FROM dbo.EmployeeData;
- Yönetici hesabınızla, bir rol için izin verebilir ve iptal
UNMASK
edebilirsinizGRANT UNMASK ON dbo.EmployeeData TO [TestRole]; REVOKE UNMASK ON dbo.EmployeeData TO [TestRole];
4. Dinamik veri maskeleme kurallarını yönetme ve değiştirme
Mevcut dinamik veri maskeleme kurallarını yönetmek veya değiştirmek için yeni bir SQL betiği oluşturun.
Şu yan tümcesini kullanarak mevcut bir sütuna
MASKED WITH FUNCTION
maske ekleyebilirsiniz:ALTER TABLE dbo.EmployeeData ALTER COLUMN [email] ADD MASKED WITH (FUNCTION = 'email()'); GO
ALTER TABLE dbo.EmployeeData ALTER COLUMN [email] DROP MASKED;
5. Temizleme
- Bu test tablosunu temizlemek için:
DROP TABLE dbo.EmployeeData;