Öğretici: Tek veya havuza alınmış bir veritabanının güvenliğini sağlamaTutorial: Secure a single or pooled database

Bu öğreticide şunların nasıl yapıldığını öğrenirsiniz:In this tutorial you learn how to:

  • Sunucu düzeyinde ve veritabanı düzeyinde güvenlik duvarı kuralları oluşturmaCreate server-level and database-level firewall rules
  • Azure Active Directory (AD) yöneticisini yapılandırmaConfigure an Azure Active Directory (AD) administrator
  • SQL kimlik doğrulaması, Azure AD kimlik doğrulaması ve güvenli bağlantı dizeleri ile Kullanıcı erişimini yönetmeManage user access with SQL authentication, Azure AD authentication, and secure connection strings
  • Gelişmiş veri güvenliği, denetim, veri maskeleme ve şifreleme gibi güvenlik özelliklerini etkinleştirmeEnable security features, such as advanced data security, auditing, data masking, and encryption

Azure SQL veritabanı, aşağıdakileri yaparak, tek veya havuza alınmış bir veritabanındaki verileri güvenli bir şekilde sağlar:Azure SQL Database secures data in a single or pooled database by allowing you to:

  • Güvenlik duvarı kurallarını kullanarak erişimi sınırlamaLimit access using firewall rules
  • Kimlik gerektiren kimlik doğrulama mekanizmalarını kullanınUse authentication mechanisms that require identity
  • Rol tabanlı Üyelikler ve izinlerle yetkilendirmeyi kullanmaUse authorization with role-based memberships and permissions
  • Güvenlik özelliklerini etkinleştirEnable security features

Not

Yönetilen bir örnekteki Azure SQL veritabanı, Azure SQL veritabanı yönetilen örneği ve bağlantı mimarisibölümünde açıklandığı gibi ağ güvenlik kuralları ve özel uç noktalar kullanılarak güvenli hale getirilir.An Azure SQL database on a managed instance is secured using network security rules and private endpoints as described in Azure SQL database managed instance and connectivity architecture.

Daha fazla bilgi edinmek için bkz. Azure SQL veritabanı güvenliğine genel bakış ve yetenekler makaleleri.To learn more, see the Azure SQL Database security overview and capabilities articles.

İpucu

Aşağıdaki Microsoft Learn modülü, Azure SQL veritabanınızın güvenliğini sağlamahakkında bilgi edinmenize yardımcı olur.The following Microsoft Learn module helps you learn for free about how to Secure your Azure SQL Database.

ÖnkoşullarPrerequisites

Öğreticiyi tamamlayabilmeniz için aşağıdaki önkoşullara sahip olduğunuzdan emin olun:To complete the tutorial, make sure you have the following prerequisites:

Azure aboneliğiniz yoksa başlamadan önce ücretsiz bir hesap oluşturun.If you don't have an Azure subscription, create a free account before you begin.

Azure portalında oturum açınSign in to the Azure portal

Öğreticideki tüm adımlar için Azure Portal oturum açınFor all steps in the tutorial, sign in to Azure portal

Güvenlik duvarı kuralları oluşturmaCreate firewall rules

SQL veritabanları, Azure 'daki güvenlik duvarları tarafından korunur.SQL databases are protected by firewalls in Azure. Varsayılan olarak, sunucu ve veritabanına yönelik tüm bağlantılar reddedilir.By default, all connections to the server and database are rejected. Daha fazla bilgi için bkz. Azure SQL veritabanı sunucu düzeyi ve veritabanı düzeyinde güvenlik duvarı kuralları.To learn more, see Azure SQL Database server-level and database-level firewall rules.

En güvenli yapılandırma için Azure hizmetlerine erişime Izin ver ' i kapalı olarak ayarlayın.Set Allow access to Azure services to OFF for the most secure configuration. Ardından, bağlanması gereken kaynak için bir Azure VM veya bulut hizmeti gibi ayrılmış BIR IP (klasik dağıtım) oluşturun ve yalnızca bu IP adresinin güvenlik duvarı üzerinden erişimine izin verin.Then, create a reserved IP (classic deployment) for the resource that needs to connect, such as an Azure VM or cloud service, and only allow that IP address access through the firewall. Resource Manager dağıtım modelini kullanıyorsanız, her kaynak için adanmış BIR genel IP adresi gereklidir.If you're using the resource manager deployment model, a dedicated public IP address is required for each resource.

Not

SQL Veritabanı 1433 numaralı bağlantı noktası üzerinden iletişim kurar.SQL Database communicates over port 1433. Bir kurumsal ağ içinden bağlanmaya çalışıyorsanız, ağınızın güvenlik duvarı tarafından 1433 numaralı bağlantı noktası üzerinden giden trafiğe izin verilmiyor olabilir.If you're trying to connect from within a corporate network, outbound traffic over port 1433 may not be allowed by your network's firewall. Bu durumda, yöneticiniz 1433 numaralı bağlantı noktasını açmadığı takdirde Azure SQL veritabanı sunucusuna bağlanamazsınız.If so, you can't connect to the Azure SQL Database server unless your administrator opens port 1433.

SQL veritabanı sunucusu güvenlik duvarı kurallarını ayarlamaSet up SQL Database server firewall rules

Sunucu düzeyinde IP güvenlik duvarı kuralları aynı SQL veritabanı sunucusu içindeki tüm veritabanlarına uygulanır.Server-level IP firewall rules apply to all databases within the same SQL Database server.

Sunucu düzeyinde bir güvenlik duvarı kuralı kurmak için:To set up a server-level firewall rule:

  1. Azure portal ' de, sol taraftaki menüden SQL veritabanları ' nı seçin ve SQL veritabanları sayfasında veritabanınızı seçin.In Azure portal, select SQL databases from the left-hand menu, and select your database on the SQL databases page.

    sunucu güvenlik duvarı kuralı

    Not

    Öğreticide daha sonra kullanmak üzere tam sunucu adını (örneğin, yourserver.Database.Windows.net) kopyalamaya dikkat edin.Be sure to copy your fully qualified server name (such as yourserver.database.windows.net) for use later in the tutorial.

  2. Genel bakış sayfasında sunucu güvenlik duvarını ayarla' yı seçin.On the Overview page, select Set server firewall. Veritabanı sunucusunun güvenlik duvarı ayarları sayfası açılır.The Firewall settings page for the database server opens.

    1. Geçerli IP adresinizi yeni bir güvenlik duvarı kuralına eklemek için araç çubuğunda istemci IP 'Si Ekle ' yi seçin.Select Add client IP on the toolbar to add your current IP address to a new firewall rule. Kural tek bir IP adresi veya IP adresi aralığı için 1433 bağlantı noktasını açabilir.The rule can open port 1433 for a single IP address or a range of IP addresses. Kaydet’i seçin.Select Save.

      sunucu güvenlik duvarı kuralı ayarla

    2. Tamam ' ı seçin ve güvenlik duvarı ayarları sayfasını kapatın.Select OK and close the Firewall settings page.

Artık sunucuda belirtilen IP adresine veya IP adresi aralığına sahip herhangi bir veritabanına bağlanabilirsiniz.You can now connect to any database in the server with the specified IP address or IP address range.

Kurulum veritabanı güvenlik duvarı kurallarıSetup database firewall rules

Veritabanı düzeyinde güvenlik duvarı kuralları yalnızca ayrı veritabanları için geçerlidir.Database-level firewall rules only apply to individual databases. Veritabanı, sunucu yük devretmesi sırasında bu kuralları korur.The database will retain these rules during a server failover. Veritabanı düzeyinde güvenlik duvarı kuralları yalnızca Transact-SQL (T-SQL) deyimleri kullanılarak ve yalnızca sunucu düzeyinde bir güvenlik duvarı kuralı yapılandırdıktan sonra yapılandırılabilir.Database-level firewall rules can only be configured using Transact-SQL (T-SQL) statements, and only after you've configured a server-level firewall rule.

Veritabanı düzeyinde bir güvenlik duvarı kuralı kurmak için:To setup a database-level firewall rule:

  1. Veritabanına bağlanın, örneğin SQL Server Management Studiokullanarak.Connect to the database, for example using SQL Server Management Studio.

  2. Nesne Gezgini, veritabanına sağ tıklayın ve Yeni sorgu' yı seçin.In Object Explorer, right-click the database and select New Query.

  3. Sorgu penceresinde, bu ifadeyi ekleyin ve IP adresini genel IP adresiniz olarak değiştirin:In the query window, add this statement and modify the IP address to your public IP address:

    EXECUTE sp_set_database_firewall_rule N'Example DB Rule','0.0.0.4','0.0.0.4';
    
  4. Araç çubuğundan Çalıştır ' ı seçerek güvenlik duvarı kuralı oluşturun.On the toolbar, select Execute to create the firewall rule.

Not

Ayrıca, sp_set_firewall_rule komutunu kullanarak SSMS 'de sunucu düzeyinde bir güvenlik duvarı kuralı oluşturabilirsiniz, ancak ana veritabanına bağlı olmanız gerekir.You can also create a server-level firewall rule in SSMS by using the sp_set_firewall_rule command, though you must be connected to the master database.

Azure AD Yöneticisi oluşturmaCreate an Azure AD admin

Uygun Azure Active Directory (AD) yönetilen etki alanını kullandığınızdan emin olun.Make sure you're using the appropriate Azure Active Directory (AD) managed domain. AD etki alanını seçmek için Azure portal sağ üst köşesini kullanın.To select the AD domain, use the upper-right corner of the Azure portal. Bu işlem, hem Azure AD hem de Azure SQL veritabanınızı veya veri Ambarınızı barındıran SQL Server için aynı aboneliğin kullanıldığını onaylar.This process confirms the same subscription is used for both Azure AD and the SQL Server hosting your Azure SQL database or data warehouse.

ad seçin

Azure AD yöneticisi 'ni ayarlamak için:To set the Azure AD administrator:

  1. Azure portal, SQL Server sayfasında Active Directory yönetici' yi seçin. Sonra yöneticiyi ayarla' yı seçin.In Azure portal, on the SQL server page, select Active Directory admin. Next select Set admin.

    active directory seçme

    Önemli

    Bu görevi gerçekleştirmek için "Şirket Yöneticisi" veya "genel yönetici" olmanız gerekir.You need to be either a "Company Administrator" or "Global Administrator" to perform this task.

  2. Yönetici Ekle SAYFASıNDA, ad kullanıcısını veya grubunu arayıp seçin ve Seç' i seçin.On the Add admin page, search and select the AD user or group and choose Select. Active Directory tüm Üyeler ve gruplar listelenir ve gri renkte olan girişler Azure AD yöneticileri olarak desteklenmez.All members and groups of your Active Directory are listed, and entries grayed out are not supported as Azure AD administrators. Bkz. Azure AD özellikleri ve sınırlamaları.See Azure AD features and limitations.

    Yönetici seçin

    Önemli

    Rol tabanlı erişim denetimi (RBAC) yalnızca portala uygulanır ve SQL Server yayılmaz.Role-based access control (RBAC) only applies to the portal and isn't propagated to SQL Server.

  3. Active Directory Yöneticisi sayfasının en üstünde Kaydet' i seçin.At the top of the Active Directory admin page, select Save.

    Bir yöneticiyi değiştirme işlemi birkaç dakika sürebilir.The process of changing an administrator may take several minutes. Yeni yönetici Active Directory yönetici kutusunda görünür.The new administrator will appear in the Active Directory admin box.

Not

Bir Azure AD yöneticisi ayarlanırken yeni yönetici adı (Kullanıcı veya grup) ana veritabanında SQL Server kimlik doğrulaması kullanıcısı olarak bulunamaz.When setting an Azure AD admin, the new admin name (user or group) cannot exist as a SQL Server authentication user in the master database. Varsa, kurulum başarısız olur ve değişiklikleri geri alarak bu tür yönetici adının zaten var olduğunu gösterir.If present, the setup will fail and roll back changes, indicating that such an admin name already exists. SQL Server kimlik doğrulaması kullanıcısı Azure AD 'nin bir parçası olmadığından, kullanıcıyı Azure AD kimlik doğrulaması kullanarak bağlama çabaları başarısız olur.Since the SQL Server authentication user is not part of Azure AD, any effort to connect the user using Azure AD authentication fails.

Azure AD 'yi yapılandırma hakkında daha fazla bilgi için bkz.For information about configuring Azure AD, see:

Veritabanı erişimini yönetmeManage database access

Veritabanına Kullanıcı ekleyerek veya güvenli bağlantı dizeleriyle Kullanıcı erişimine izin vererek veritabanı erişimini yönetin.Manage database access by adding users to the database, or allowing user access with secure connection strings. Bağlantı dizeleri, dış uygulamalar için faydalıdır.Connection strings are useful for external applications. Daha fazla bilgi için bkz. Azure SQL Access Control ve AD Authentication.To learn more, see Azure SQL access control and AD authentication.

Kullanıcıları eklemek için veritabanı kimlik doğrulaması türünü seçin:To add users, choose the database authentication type:

  • SQL kimlik doğrulaması, oturum açma işlemleri için bir Kullanıcı adı ve parola kullanın ve yalnızca sunucu içindeki belirli bir veritabanı bağlamında geçerlidirSQL authentication, use a username and password for logins and are only valid in the context of a specific database within the server

  • Azure AD kimlik doğrulaması, Azure AD tarafından yönetilen kimlikleri kullanmaAzure AD authentication, use identities managed by Azure AD

SQL kimlik doğrulamasıSQL authentication

SQL kimlik doğrulaması ile bir kullanıcı eklemek için:To add a user with SQL authentication:

  1. Veritabanına bağlanın, örneğin SQL Server Management Studiokullanarak.Connect to the database, for example using SQL Server Management Studio.

  2. Nesne Gezgini, veritabanına sağ tıklayın ve Yeni sorgu' yı seçin.In Object Explorer, right-click the database and choose New Query.

  3. Sorgu penceresinde, aşağıdaki komutu girin:In the query window, enter the following command:

    CREATE USER ApplicationUser WITH PASSWORD = 'YourStrongPassword1';
    
  4. Araç çubuğunda, Kullanıcı oluşturmak için Yürüt ' ü seçin.On the toolbar, select Execute to create the user.

  5. Varsayılan olarak, kullanıcı veritabanına bağlanabilir ancak verileri okuma veya yazma izni yoktur.By default, the user can connect to the database, but has no permissions to read or write data. Bu izinleri vermek için, yeni bir sorgu penceresinde aşağıdaki komutları yürütün:To grant these permissions, execute the following commands in a new query window:

    ALTER ROLE db_datareader ADD MEMBER ApplicationUser;
    ALTER ROLE db_datawriter ADD MEMBER ApplicationUser;
    

Not

Yeni kullanıcılar oluşturma gibi yönetici görevleri yürütmelerine gerek olmadığı takdirde, veritabanı düzeyinde yönetici olmayan hesaplar oluşturun.Create non-administrator accounts at the database level, unless they need to execute administrator tasks like creating new users.

Azure AD kimlik doğrulamasıAzure AD authentication

Azure Active Directory kimlik doğrulaması, veritabanı kullanıcılarının kapsanan olarak oluşturulmasını gerektirir.Azure Active Directory authentication requires that database users are created as contained. Kapsanan bir veritabanı kullanıcısı, veritabanıyla ilişkili Azure AD dizinindeki bir kimlikle eşlenir ve ana veritabanında oturum açma bilgileri yoktur.A contained database user maps to an identity in the Azure AD directory associated with the database and has no login in the master database. Azure AD kimliği, tek bir kullanıcı veya grup için olabilir.The Azure AD identity can either be for an individual user or a group. Daha fazla bilgi için bkz. Kapsanan Veritabanı kullanıcıları, veritabanınızı taşınabilir hale getirme ve Azure ad kullanarak kimlik doğrulaması yapma hakkında Azure AD öğreticisini İnceleme.For more information, see Contained database users, make your database portable and review the Azure AD tutorial on how to authenticate using Azure AD.

Not

Veritabanı kullanıcıları (Yöneticiler hariç) Azure portal kullanılarak oluşturulamaz.Database users (excluding administrators) cannot be created using the Azure portal. Azure RBAC rolleri SQL Server, veritabanlarına veya veri ambarlarına yayılmaz.Azure RBAC roles do not propagate to SQL servers, databases, or data warehouses. Bunlar yalnızca Azure kaynaklarını yönetmek için kullanılır ve veritabanı izinleri için uygulanmaz.They are only used to manage Azure resources and do not apply to database permissions.

Örneğin, SQL Server katkıda bulunan rolü bir veritabanına veya veri ambarına bağlanmak için erişim vermez.For example, the SQL Server Contributor role does not grant access to connect to a database or data warehouse. Bu izin, T-SQL deyimleri kullanılarak veritabanı içinde verilmelidir.This permission must be granted within the database using T-SQL statements.

Önemli

T : -SQL & CREATE LOGIN ve deyimlerdekikullanıcıadlarındaikinoktaveyaampersangibiözelkarakterlerdesteklenmez.CREATE USERSpecial characters like colon : or ampersand & are not supported in user names in the T-SQL CREATE LOGIN and CREATE USER statements.

Azure AD kimlik doğrulamasıyla bir kullanıcı eklemek için:To add a user with Azure AD authentication:

  1. En azından alter any user iznine sahip BIR Azure AD hesabı kullanarak Azure SQL sunucunuza bağlanın.Connect to your Azure SQL server using an Azure AD account with at least the ALTER ANY USER permission.

  2. Nesne Gezgini, veritabanına sağ tıklayın ve Yeni sorgu' yı seçin.In Object Explorer, right-click the database and select New Query.

  3. Sorgu penceresinde, aşağıdaki komutu girin ve Azure AD kullanıcısının asıl <Azure_AD_principal_name> adına veya Azure AD grubunun görünen adına değiştirin:In the query window, enter the following command and modify <Azure_AD_principal_name> to the principal name of the Azure AD user or the display name of the Azure AD group:

    CREATE USER <Azure_AD_principal_name> FROM EXTERNAL PROVIDER;
    

Not

Azure AD kullanıcıları, gruplar için tür E (EXTERNAL_USER) ve tür X (EXTERNAL_GROUPS) ile veritabanı meta verilerinde işaretlenir.Azure AD users are marked in the database metadata with type E (EXTERNAL_USER) and type X (EXTERNAL_GROUPS) for groups. Daha fazla bilgi için bkz. sys. database_principals.For more information, see sys.database_principals.

Güvenli bağlantı dizeleriSecure connection strings

İstemci uygulaması ile SQL veritabanı arasında güvenli, şifreli bir bağlantı sağlamak için bir bağlantı dizesinin yapılandırılması gerekir:To ensure a secure, encrypted connection between the client application and SQL database, a connection string must be configured to:

  • Şifrelenmiş bir bağlantı isteyinRequest an encrypted connection
  • Sunucu sertifikasına güvenmiyorNot trust the server certificate

Bağlantı, Aktarım Katmanı Güvenliği (TLS) kullanılarak oluşturulur ve ortadaki adam saldırısı riskini azaltır.The connection is established using Transport Layer Security (TLS) and reduces the risk of a man-in-the-middle attack. Bağlantı dizeleri veritabanı başına kullanılabilir ve ADO.NET, JDBC, ODBC ve PHP gibi istemci sürücülerini destekleyecek şekilde önceden yapılandırılmıştır.Connection strings are available per database and are pre-configured to support client drivers such as ADO.NET, JDBC, ODBC, and PHP. TLS ve bağlantı hakkında daha fazla bilgi için bkz. TLS konuları.For information about TLS and connectivity, see TLS considerations.

Güvenli bir bağlantı dizesini kopyalamak için:To copy a secure connection string:

  1. Azure portal ' de, sol taraftaki menüden SQL veritabanları ' nı seçin ve SQL veritabanları sayfasında veritabanınızı seçin.In Azure portal, select SQL databases from the left-hand menu, and select your database on the SQL databases page.

  2. Genel bakış sayfasında, veritabanı bağlantı dizelerini göster' i seçin.On the Overview page, select Show database connection strings.

  3. Bir sürücü sekmesi seçin ve tüm bağlantı dizesini kopyalayın.Select a driver tab and copy the complete connection string.

    ADO.NET bağlantı dizesi

Güvenlik özelliklerini etkinleştirEnable security features

Azure SQL veritabanı, Azure portal kullanılarak erişilen güvenlik özellikleri sağlar.Azure SQL Database provides security features that are accessed using the Azure portal. Bu özellikler, yalnızca veritabanında bulunan veri maskeleme hariç olmak üzere hem veritabanı hem de sunucu için kullanılabilir.These features are available for both the database and server, except for data masking, which is only available on the database. Daha fazla bilgi edinmek için bkz. Gelişmiş veri güvenliği, Denetim, dinamik veri maskelemeve Saydam veri şifrelemesi.To learn more, see Advanced data security, Auditing, Dynamic data masking, and Transparent data encryption.

Gelişmiş veri güvenliğiAdvanced data security

Gelişmiş veri güvenliği özelliği, olası tehditleri meydana getirdiklerinde algılar ve anormal etkinliklerde güvenlik uyarıları sağlar.The advanced data security feature detects potential threats as they occur and provides security alerts on anomalous activities. Kullanıcılar, denetim özelliğini kullanarak bu şüpheli olayları keşfedebilir ve olayın veritabanındaki verilere erişip erişmediğine, ihlalin veya açıktan yararlanıp yararlanmadığını belirleyebilir.Users can explore these suspicious events using the auditing feature, and determine if the event was to access, breach, or exploit data in the database. Kullanıcılara ayrıca bir güvenlik açığı değerlendirmesi ve veri bulma ve sınıflandırma aracı içeren bir güvenlik Özeti sağlanır.Users are also provided a security overview that includes a vulnerability assessment and the data discovery and classification tool.

Not

Örnek bir tehdit, saldırganların uygulama girdilerine kötü amaçlı SQL eklemesine neden olan SQL ekleme işlemidir.An example threat is SQL injection, a process where attackers inject malicious SQL into application inputs. Bir uygulama daha sonra kötü amaçlı bir SQL 'i açabilir ve saldırganlar 'in veritabanındaki verileri ihlal etmek ya da değiştirmek için erişimine izin verebilir.An application can then unknowingly execute the malicious SQL and allow attackers access to breach or modify data in the database.

Gelişmiş veri güvenliğini etkinleştirmek için:To enable advanced data security:

  1. Azure portal ' de, sol taraftaki menüden SQL veritabanları ' nı seçin ve SQL veritabanları sayfasında veritabanınızı seçin.In Azure portal, select SQL databases from the left-hand menu, and select your database on the SQL databases page.

  2. Genel bakış sayfasında sunucu adı bağlantısını seçin.On the Overview page, select the Server name link. Veritabanı sunucusu sayfası açılır.The database server page will open.

  3. SQL Server sayfasında, güvenlik bölümünü bulun ve Gelişmiş veri güvenliği' ni seçin.On the SQL server page, find the Security section and select Advanced Data Security.

    1. Özelliği etkinleştirmek için Gelişmiş veri güvenliği altında Açık ' ı seçin.Select ON under Advanced Data Security to enable the feature. Güvenlik açığı değerlendirmesi sonuçlarının kaydedileceği bir depolama hesabı seçin.Choose a storage account for saving vulnerability assessment results. Daha sonra Kaydet’e tıklayın.Then select Save.

      Gezinti bölmesi

      Ayrıca, güvenlik uyarılarını, depolama ayrıntılarını ve tehdit algılama türlerini almak için e-postaları yapılandırabilirsiniz.You can also configure emails to receive security alerts, storage details, and threat detection types.

  4. Veritabanınızın SQL veritabanları sayfasına dönün ve güvenlik bölümünün altında Gelişmiş veri güvenliği ' ni seçin.Return to the SQL databases page of your database and select Advanced Data Security under the Security section. Burada, veritabanı için kullanılabilen çeşitli güvenlik göstergeleri bulacaksınız.Here you'll find various security indicators available for the database.

    Tehdit durumu

Anormal etkinlikler algılanırsa, olayla ilgili bilgileri içeren bir e-posta alırsınız.If anomalous activities are detected, you receive an email with information on the event. Bu, etkinlik, veritabanı, sunucu, olay süresi, olası nedenler ve olası tehdidi araştırmak ve azaltmak için önerilen eylemlerin yapısını içerir.This includes the nature of the activity, database, server, event time, possible causes, and recommended actions to investigate and mitigate the potential threat. Böyle bir e-posta alındığında, Azure portal başlatmak ve olay saati için ilgili denetim kayıtlarını göstermek üzere Azure SQL denetim günlüğü bağlantısını seçin.If such an email is received, select the Azure SQL Auditing Log link to launch the Azure portal and show relevant auditing records for the time of the event.

Tehdit algılama e-postası

DenetimAuditing

Denetim özelliği, veritabanı olaylarını izler ve olayları Azure depolama, Azure Izleyici günlükleri veya bir olay hub 'ında bir denetim günlüğüne yazar.The auditing feature tracks database events and writes events to an audit log in either Azure storage, Azure Monitor logs, or to an event hub. Denetim, Yönetmelikli uyumluluğu korumanıza, veritabanı etkinliklerini anlamanıza ve olası güvenlik ihlallerini gösterebilen tutarsızlıklar ve bozuklukla ilgili Öngörüler elde etmenize yardımcı olur.Auditing helps maintain regulatory compliance, understand database activity, and gain insight into discrepancies and anomalies that could indicate potential security violations.

Denetimi etkinleştirmek için:To enable auditing:

  1. Azure portal ' de, sol taraftaki menüden SQL veritabanları ' nı seçin ve SQL veritabanları sayfasında veritabanınızı seçin.In Azure portal, select SQL databases from the left-hand menu, and select your database on the SQL databases page.

  2. Güvenlik bölümünde Denetim' i seçin.In the Security section, select Auditing.

  3. Denetim ayarları altında aşağıdaki değerleri ayarlayın:Under Auditing settings, set the following values:

    1. Denetimi Açıkolarak ayarlayın.Set Auditing to ON.

    2. Aşağıdaki gibi, Denetim günlüğü hedefini seçin:Select Audit log destination as any of the following:

      • Depolama, olay günlüklerinin kaydedildiği ve . XEL dosyaları olarak indirilebilen bir Azure depolama hesabıdır.Storage, an Azure storage account where event logs are saved and can be downloaded as .xel files

        İpucu

        Denetim raporu şablonlarından en iyi şekilde yararlanmak için, denetlenen tüm veritabanları için aynı depolama hesabını kullanın.Use the same storage account for all audited databases to get the most from auditing report templates.

      • Sorgu veya daha fazla analiz için olayları otomatik olarak depolayan Log AnalyticsLog Analytics, which automatically stores events for query or further analysis

        Not

        Analiz, özel uyarı kuralları ve Excel veya Power BI dışarı aktarmalar gibi gelişmiş özellikleri desteklemek için bir Log Analytics çalışma alanı gereklidir.A Log Analytics workspace is required to support advanced features such as analytics, custom alert rules, and Excel or Power BI exports. Çalışma alanı olmadan yalnızca sorgu Düzenleyicisi kullanılabilir.Without a workspace, only the query editor is available.

      • Olayların diğer uygulamalarda kullanılmak üzere yönlendirilmesine izin veren Olay Hub'ı.Event Hub, which allows events to be routed for use in other applications

    3. Kaydet’i seçin.Select Save.

      Denetim ayarları

  4. Artık veritabanı olayları verilerini görüntülemek için Denetim günlüklerini görüntüle ' yi seçebilirsiniz.Now you can select View audit logs to view database events data.

    Denetim kayıtları

Önemli

PowerShell veya REST API kullanarak denetim olaylarını nasıl özelleştireceğinizi öğrenmek için bkz. SQL veritabanı denetimi .See SQL database auditing on how to further customize audit events using PowerShell or REST API.

Dinamik veri maskelemeDynamic data masking

Veri maskeleme özelliği, veritabanınızdaki hassas verileri otomatik olarak gizleyecek.The data masking feature will automatically hide sensitive data in your database.

Veri maskeleme 'yi etkinleştirmek için:To enable data masking:

  1. Azure portal ' de, sol taraftaki menüden SQL veritabanları ' nı seçin ve SQL veritabanları sayfasında veritabanınızı seçin.In Azure portal, select SQL databases from the left-hand menu, and select your database on the SQL databases page.

  2. Güvenlik bölümünde dinamik veri maskeleme' yi seçin.In the Security section, select Dynamic Data Masking.

  3. Dinamik veri maskeleme ayarları altında maske kuralı eklemek Için maske Ekle ' yi seçin.Under Dynamic data masking settings, select Add mask to add a masking rule. Azure, kullanılabilir veritabanı şemalarını, tabloları ve sütunları seçmek için otomatik olarak doldurur.Azure will automatically populate available database schemas, tables, and columns to choose from.

    Maske ayarları

  4. Kaydet’i seçin.Select Save. Seçili bilgiler artık gizlilik için maskelenir.The selected information is now masked for privacy.

    Maske örneği

Saydam veri şifrelemesiTransparent data encryption

Şifreleme özelliği, bekleyen verileri otomatik olarak şifreler ve şifrelenmiş veritabanına erişen uygulamalarda değişiklik gerektirmez.The encryption feature automatically encrypts your data at rest, and requires no changes to applications accessing the encrypted database. Yeni veritabanları için şifreleme varsayılan olarak açık olur.For new databases, encryption is on by default. Ayrıca SSMS ve Always şifreli özelliğini kullanarak verileri şifreleyebilirsiniz.You can also encrypt data using SSMS and the Always encrypted feature.

Şifrelemeyi etkinleştirmek veya doğrulamak için:To enable or verify encryption:

  1. Azure portal ' de, sol taraftaki menüden SQL veritabanları ' nı seçin ve SQL veritabanları sayfasında veritabanınızı seçin.In Azure portal, select SQL databases from the left-hand menu, and select your database on the SQL databases page.

  2. Güvenlik bölümünde Saydam veri şifrelemesi' ni seçin.In the Security section, select Transparent data encryption.

  3. Gerekirse, veri şifrelemeyi Açıkolarak ayarlayın.If necessary, set Data encryption to ON. Kaydet’i seçin.Select Save.

    Saydam Veri Şifrelemesi

Not

Şifreleme durumunu görüntülemek için SSMS kullanarak veritabanına bağlanın ve encryption_state sys. DM _database_encryption_keys görünümünün sütununu sorgulayın.To view encryption status, connect to the database using SSMS and query the encryption_state column of the sys.dm_database_encryption_keys view. Durumu, veritabanının 3 şifrelendiğini gösterir.A state of 3 indicates the database is encrypted.

Sonraki adımlarNext steps

Bu öğreticide, yalnızca birkaç basit adımla veritabanınızın güvenliğini geliştirmeyi öğrendiniz.In this tutorial, you've learned to improve the security of your database with just a few simple steps. Şunları öğrendiniz:You learned how to:

  • Sunucu düzeyinde ve veritabanı düzeyinde güvenlik duvarı kuralları oluşturmaCreate server-level and database-level firewall rules
  • Azure Active Directory (AD) yöneticisini yapılandırmaConfigure an Azure Active Directory (AD) administrator
  • SQL kimlik doğrulaması, Azure AD kimlik doğrulaması ve güvenli bağlantı dizeleri ile Kullanıcı erişimini yönetmeManage user access with SQL authentication, Azure AD authentication, and secure connection strings
  • Gelişmiş veri güvenliği, denetim, veri maskeleme ve şifreleme gibi güvenlik özelliklerini etkinleştirmeEnable security features, such as advanced data security, auditing, data masking, and encryption

Coğrafi dağıtımın nasıl uygulanacağını öğrenmek için bir sonraki öğreticiye ilerleyin.Advance to the next tutorial to learn how to implement geo-distribution.