Alıştırma - Aktarım, bekleme ve görüntüleme aşamalarında verilerinizin güvenliğini sağlama

Tamamlandı

marketplaceDb veritabanında fiziksel adresler, e-posta adresleri ve telefon numaraları gibi hassas bilgiler depolanmaktadır. Kötü amaçlı saldırganlar bu bilgileri kullanıma sunulursa işletmenize veya müşterilerinize zarar vermek için kullanabilir. Veritabanınızın güvenliğini artırmak için şifreleme ve veri maskelemeyi nasıl kullanabileceğinize bakın.

TLS ağ şifrelemesi

Azure SQL Veritabanı, her zaman tüm bağlantılar için Aktarım Katmanı Güvenliği (TLS) şifrelemesini zorunlu kılar ve bu da veritabanı ile istemci arasındaki aktarım sırasında tüm verilerin şifrelenmesini sağlar. TLS şifrelemesini kullanarak, uygulama sunucusu ile veritabanı arasındaki trafiği kesebilecek herkesin verileri okuyamayacağından emin olabilirsiniz. TLS şifrelemesi internet üzerinden gönderilen trafiğin güvenliğini sağlamak için kullanılan standart bir yöntemdir ve bu durumda Azure SQL veritabanınızla ağınız arasındaki trafiğin varsayılan olarak güvenli olmasını sağlar.

Saydam veri şifrelemesi

Azure SQL Veritabanı, bekleyen verilerinizi saydam veri şifrelemesi (TDE) yöntemiyle korur. TDE bütün bir veritabanı, yedekleri ve işlem günlüğü dosyaları için gerçek zamanlı şifreleme ve şifre çözme işlemlerini gerçekleştirir ve uygulamada değişiklik yapmayı gerektirmez. Saydam veri şifrelemesi, veritabanı şifreleme anahtarı kullanarak verilerin sayfa düzeyinde gerçek zamanlı G/Ç şifrelemesini ve şifre çözmesini gerçekleştirir. Okunarak belleğe alınan her sayfanın şifresi çözülür ve sayfalar diske yazılmadan önce şifrelenir.

TDE varsayılan olarak yeni dağıtılan tüm Azure SQL veritabanlarında etkindir. Veri şifrelemenin kapalı olup olmadığını denetlemek önemlidir. Eski Azure SQL Server veritabanlarında TDE etkinleştirilmemiş olabilir.

Azure portalında marketplaceDb veritabanınızda TDE'nin yapılandırıldığı yere göz atın.

  1. Korumalı alanı etkinleştirmek için kullandığınız hesapla Azure portalında oturum açın.

  2. Azure portalının üst kısmındaki arama çubuğunda marketplaceDb araması yapın ve veritabanını seçin.

  3. Sol menü bölmesindeki Güvenlik'in altında Veri şifreleme'yi seçin.

  4. Veri şifreleme seçeneğinde Veri şifreleme ayarının Açık olduğundan emin olun. Şifreleme durumunun da Şifrelendi olması gerekir.

Yeni veritabanları varsayılan olarak şifrelendiğinden, veritabanını oluşturur oluşturmaz verilerinizin diskte şifrelendiğinden emin olabilirsiniz.

Dekont

Azure, Azure SQL veritabanları da dahil olmak üzere ortamınızın güvenliğine ilişkin görünürlük sağlayan Bulut için Microsoft Defender adlı yerleşik bir hizmet içerir. Bulut için Microsoft Defender, TDE etkinleştirilmemiş veritabanlarını bayrakla işaretleyerek verilerinizin güvenliğini sağlamak için raporlama ve eylem gerçekleştirme olanağı sunar.

Dinamik veri maskeleme

Önceki ünitede sorgunuzu çalıştırdığınızda veritabanındaki bazı bilgilerin hassas olduğunu fark edebilirsiniz. Verilere erişimi olan herkese tam olarak görüntülenmesini istemediğiniz telefon numaraları, e-posta adresleri ve diğer bilgiler vardır.

Kullanıcılarınızın tam telefon numarasını veya e-posta adresini görebilmesini istemiyor olabilirsiniz, ancak yine de verilerin bir kısmını müşteriyi tanımlamak için müşteri hizmetleri temsilcilerinin kullanımına açmak istiyorsunuz. Azure SQL Veritabanı dinamik veri maskeleme özelliğini kullanarak, kullanıcıya görüntülenen verileri sınırlayabilirsiniz. Dinamik veri maskeleme, belirlenen veritabanı alanları üzerinde sorgunun sonuç kümesindeki hassas verileri gizleyen, ancak veritabanındaki veriler değiştirilmeyen ilke tabanlı bir güvenlik özelliğidir.

Veri maskeleme kuralları, maskenin uygulanacağı sütun ile veri maskeleme yöntemini kapsar. Kendi maskeleme biçiminizi oluşturabilir veya aşağıdakiler gibi standart maskelerden birini kullanabilirsiniz:

  • Varsayılan değer: Değer yerine ilgili veri türünün varsayılan değerini görüntüler.
  • Kredi kartı değeri, sayının yalnızca son dört basamağını gösterir ve diğer tüm sayıları küçük harf x'lere dönüştürür.
  • E-posta: Etki alanı ve e-posta hesabı adının ilk karakteri hariç tamamını gizler.
  • Sayı: Bir değer aralığındaki rastgele bir sayıyı belirtir. Örneğin kredi kartı son kullanma ayı ve yılı için 1 ile 12 arasında rastgele bir ay ve 2018 ile 3000 arasında rastgele bir yıl seçebilirsiniz.
  • Özel dize: Verinin başından itibaren gösterilen karakter sayısını ve verinin sonundan önce gösterilen karakter sayısını ve verinin geri kalanında tekrarlanacak karakterleri belirtmenizi sağlar.

Veritabanı yöneticileri sütunları sorguladığında özgün değerleri görmeye devam eder. Yönetici olmayanlar maskelenmiş değerleri görür. Maskeleme listesinden dışlanan SQL kullanıcılarına ekleyerek diğer kullanıcıların maskelenmemiş sürümleri görmesine izin vekleyebilirsiniz.

MarketplaceDb veritabanınızda veri maskelemenin nasıl çalışacağına göz atın.

  1. Portalda marketplaceDb veritabanı panelindeyken, sol menü bölmesindeki Güvenlik'in altında Dinamik Veri Maskeleme'yi seçin.

    Maskeleme kuralları ekranında var olan dinamik veri maskelerinin yanı sıra dinamik veri maskesi uygulanması önerilen sütunlar bulunur.

    Screenshot of the Azure portal showing a list of the recommended masks for the various database columns of a sample database.

  2. Telefon numarası için yalnızca son dört rakamı görüntüleyen bir maske ekleyin. Maskeleme kuralı ekle iletişim kutusunu açmak için üstteki Maske ekle düğmesini seçin.

  3. Aşağıdaki değerleri seçin.

    Ayar Value
    Şema SalesLT
    Table Müşteri
    Sütun Phone (nvarchar)
    Maskeleme alanı biçimi Özel dize (ön ek [doldurma] son ek)
    Sunulan Ön Ek 0
    Doldurma Dizesi XXX-XXX-
    Sunulan Son Ek 4
  4. Maskeleme kuralını eklemek için Ekle’yi seçin.

    Screenshot of the Azure portal showing the values to add a masking rule.

  5. E-posta adresi için bir tane daha ekleyin. Maskeleme kuralı ekle iletişim kutusunu açmak için üst kısımdaki Maske ekle düğmesini yeniden seçin.

    Ayar Value
    Şema SalesLT
    Table Müşteri
    Sütun EmailAddress (nvarchar)
    Maskeleme alanı biçimi E-posta (aXXX@XXX.com)
  6. Maskeleme kuralını eklemek için Ekle’yi seçin.

  7. Her yeni maske, maskeleme kuralları listesine eklenir. Maskeleri uygulamak için Kaydet'i seçin.

Veri maskelemenin sorgunuzu nasıl değiştiriyor olduğunu inceleyin.

  1. Şimdi veritabanında yeniden oturum açın, ancak ApplicationUser kullanıcısı olarak oturum açın.

    sqlcmd -S tcp:[server-name].database.windows.net,1433 -d marketplaceDb -U 'ApplicationUser' -P '[password]' -N -l 30
    
  2. Aşağıdaki sorguyu çalıştırın.

    SELECT FirstName, LastName, EmailAddress, Phone FROM SalesLT.Customer;
    GO
    

    Çıkışın nasıl maskelendiğine bakın.

    FirstName     LastName      EmailAddress         Phone
    ------------- ------------- -------------------- ------------
    Orlando       Gee           oXXX@XXXX.com        XXX-XXX-0173
    Keith         Harris        kXXX@XXXX.com        XXX-XXX-0127
    Donna         Carreras      dXXX@XXXX.com        XXX-XXX-0130
    Janet         Gates         jXXX@XXXX.com        XXX-XXX-0173
    ...
    

Oluşturduğunuz maskeleme kurallarıyla verileriniz belirttiğiniz biçimde maskelenmiş durumdadır. Bu kurallar, müşteri hizmetleri temsilcilerinizin bir müşteriyi telefon numarasının son dört rakamıyla doğrulamasını sağlar, ancak tam numarayı ve müşterinin e-posta adresini görünümden gizler.