Microsoft Entra doğrulamasını kullanın

Şunlar için geçerlidir:Azure SQL Veritabanı Azure SQL Yönetilen Örneği Azure Synapse Analytics

Bu makalede Windows Azure VM'lerinde Azure SQL Veritabanı, Azure SQL Yönetilen Örneği, SQL Server, Azure Synapse Analytics'te Synapse SQL ve Windows ve Linux için SQL Server'da kimlik doğrulaması yapmak için Microsoft Entra Id (eski adıYla Azure Active Directory) kullanımına genel bir bakış sağlanır.

Microsoft Entra Id oluşturmayı ve doldurmayı ve ardından Azure Synapse Analytics'te Microsoft Entra Id'yi Azure SQL Veritabanı, Azure SQL Yönetilen Örneği ve Synapse SQL ile yapılandırmayı öğrenmek için Azure VM'lerinde SQL Server ile Microsoft Entra Id ve Microsoft Entra Id yapılandırma makalesini gözden geçirin.

Not

Microsoft Entra Id daha önce Azure Active Directory (Azure AD) olarak biliniyordu.

Genel bakış

Microsoft Entra kimlik doğrulaması ile veritabanı kullanıcılarının ve diğer Microsoft hizmetlerinin kimliklerini tek merkezden yönetebilirsiniz. Merkezi kimlik yönetimi, tüm veritabanı kullanıcılarını aynı yerden yönetmenizi sağlar ve izin yönetimini kolaylaştırır. Avantajları şunlardır:

  • SQL Server kimlik doğrulamasına bir alternatif sağlar.

  • Sunucularda kullanıcı kimliklerinin yaygınlaşmasının durdurulmasına yardımcı olur.

  • Parolanın tek bir yerde döndürülmesini sağlar.

  • Müşteriler Microsoft Entra gruplarını kullanarak veritabanı izinlerini yönetebilir.

  • Tümleşik Windows kimlik doğrulamasını ve Microsoft Entra Id tarafından desteklenen diğer kimlik doğrulama biçimlerini etkinleştirerek parolaların depolanmasını ortadan kaldırabilir.

  • Microsoft Entra kimlik doğrulaması, veritabanı düzeyinde kimlik doğrulaması yapmak için kapsanan veritabanı kullanıcılarını kullanır.

  • Microsoft Entra ID, SQL Veritabanı ve SQL Yönetilen Örneği bağlanan uygulamalar için belirteç tabanlı kimlik doğrulamasını destekler.

  • Microsoft Entra kimlik doğrulaması şu desteği destekler:

    • Microsoft Entra yalnızca bulut kimlikleri.
    • Destekleyen Microsoft Entra karma kimlikleri:
      • Sorunsuz çoklu oturum açma (SSO) Geçiş kimlik doğrulaması ve parola karması kimlik doğrulaması ile birlikte iki seçenek içeren bulut kimlik doğrulaması.
      • Şirket içi kimlik doğrulaması.
    • Microsoft Entra kimlik doğrulama yöntemleri ve hangisinin seçileceği hakkında daha fazla bilgi için aşağıdaki makaleye bakın:
  • SQL Server Management Studio, çok faktörlü kimlik doğrulaması ile Microsoft Entra kullanan bağlantıları destekler. Çok faktörlü kimlik doğrulaması, telefon araması, kısa mesaj, pinli akıllı kartlar veya mobil uygulama bildirimi gibi çeşitli kolay doğrulama seçenekleriyle güçlü kimlik doğrulaması sağlar. Daha fazla bilgi için bkz. Azure SQL Veritabanı, SQL Yönetilen Örneği ve Azure Synapse ile Microsoft Entra çok faktörlü kimlik doğrulaması için SSMS desteği

  • SQL Server Veri Araçları (SSDT), Microsoft Entra ID ile çok çeşitli kimlik doğrulama seçeneklerini de destekler. Daha fazla bilgi için bkz. SQL Server Veri Araçları'de (SSDT) Microsoft Entra ID desteği.

Yapılandırma adımları, Microsoft Entra kimlik doğrulamasını yapılandırmak ve kullanmak için aşağıdaki yordamları içerir.

  1. Microsoft Entra kiracısı oluşturma ve doldurma.
  2. İsteğe bağlı: Azure Aboneliğinizle ilişkili geçerli dizini ilişkilendirin veya değiştirin.
  3. Bir Microsoft Entra yöneticisi oluşturun.
  4. İstemci bilgisayarlarınızı yapılandırın.
  5. Veritabanınızda Microsoft Entra kimliklerine eşlenmiş bağımsız veritabanı kullanıcıları oluşturun.
  6. Microsoft Entra kimlikleriyle veritabanınıza Bağlan.

Not

Azure SQL, Azure VM'leri ve SQL Server 2022 için Microsoft Entra kimlik doğrulaması yalnızca Microsoft Entra Kimliği'nden kaynaklanan ve üçüncü taraf erişim belirteçlerini desteklemeyen erişim belirteçlerini destekler. Microsoft Entra Id, Microsoft Entra ID sorgularının üçüncü taraf uç noktalarına yönlendirilmesini de desteklemez. Bu, Microsoft Entra kimlik doğrulamasını destekleyen tüm SQL platformları ve tüm işletim sistemleri için geçerlidir.

Güven mimarisi

  • Microsoft Entra ID, SQL Veritabanı, SQL Yönetilen Örneği, Windows Azure VM'lerinde SQL Server ve Azure Synapse'in yalnızca bulut bölümü Microsoft Entra yerel kullanıcı parolalarını desteklemek için kabul edilir.
  • Windows çoklu oturum açma kimlik bilgilerini (veya Windows kimlik bilgileri için kullanıcı/parola) desteklemek için, geçiş ve parola karması kimlik doğrulaması için sorunsuz çoklu oturum açma için yapılandırılmış bir federasyon veya yönetilen etki alanından Microsoft Entra kimlik bilgilerini kullanın. Daha fazla bilgi için bkz. Microsoft Entra sorunsuz çoklu oturum açma.
  • Federasyon kimlik doğrulamasını (veya Windows kimlik bilgileri için kullanıcı/parola) desteklemek için ADFS bloğuyla iletişim gereklidir.

Microsoft Entra karma kimlikleri, kurulum ve eşitleme hakkında daha fazla bilgi için aşağıdaki makalelere bakın:

ADFS altyapısı (veya Windows kimlik bilgileri için kullanıcı/parola) ile örnek bir federasyon kimlik doğrulaması için aşağıdaki diyagrama bakın. Oklar iletişim yollarını gösterir.

Diagram of Microsoft Entra authentication for Azure SQL.

Aşağıdaki diyagramda, istemcinin bir belirteç göndererek veritabanına bağlanmasına izin veren federasyon, güven ve barındırma ilişkileri gösterilir. Belirtecin kimliği Microsoft Entra Kimliği ile doğrulanır ve veritabanı tarafından güvenilir. Müşteri 1 yerel kullanıcılarla Microsoft Entra Kimliğini veya federasyon kullanıcılarıyla Microsoft Entra Id'yi temsil edebilir. Müşteri 2, içeri aktarılan kullanıcılar da dahil olmak üzere olası bir çözümü temsil eder. Bu örnekte, ADFS'nin Microsoft Entra Kimliği ile eşitlendiği federasyon Microsoft Entra Kimliği'nden gelir. Microsoft Entra kimlik doğrulamasını kullanarak bir veritabanına erişimin barındırma aboneliğinin Microsoft Entra Kimliği ile ilişkilendirilmesi gerektiğini anlamak önemlidir. Azure SQL Veritabanı, SQL Yönetilen Örneği veya Azure Synapse kaynaklarını oluşturmak için aynı abonelik kullanılmalıdır.

Diagram shows the relationship between subscriptions in the Microsoft Entra configuration.

Yönetici istrator yapısı

Microsoft Entra kimlik doğrulamasını kullanırken iki Yönetici istrator hesabı vardır: özgün Azure SQL Veritabanı yöneticisi ve Microsoft Entra yöneticisi. Aynı kavramlar Azure Synapse için de geçerlidir. Yalnızca bir Microsoft Entra hesabını temel alan yönetici, bir kullanıcı veritabanındaki ilk Microsoft Entra kimliğine sahip veritabanı kullanıcısını oluşturabilir. Microsoft Entra yönetici oturum açma bilgileri bir Microsoft Entra kullanıcısı veya Bir Microsoft Entra grubu olabilir. Yönetici bir grup hesabı olduğunda, herhangi bir grup üyesi tarafından kullanılabilir ve sunucu için birden çok Microsoft Entra yöneticisi etkinleştirilebilir. Yönetici olarak grup hesabı kullanmak, SQL Veritabanı veya Azure Synapse'teki kullanıcıları veya izinleri değiştirmeden Microsoft Entra Id'de grup üyelerini merkezi olarak eklemenizi ve kaldırmanızı sağlayarak yönetilebilirliği artırır. İstediğiniz zaman yalnızca bir Microsoft Entra yöneticisi (kullanıcı veya grup) yapılandırılabilir.

Diagram shows the administrator structure for Microsoft Entra ID used with SQL Server.

Not

Azure SQL ile Microsoft Entra kimlik doğrulaması yalnızca Azure SQL kaynağının bulunduğu tek Bir Microsoft Entra kiracısını destekler. Bu kiracıdaki tüm Microsoft Entra nesneleri, bu kiracıda Azure SQL'e erişim izni veren kullanıcılar olarak ayarlanabilir. Microsoft Entra yöneticisi de Azure SQL kaynağının kiracısından olmalıdır. Farklı kiracılardan Azure SQL'e erişen Microsoft Entra çok kiracılı kimlik doğrulaması desteklenmez.

İzinler

Yeni kullanıcılar oluşturmak için veritabanında izniniz ALTER ANY USER olmalıdır. İzin ALTER ANY USER herhangi bir veritabanı kullanıcısına verilebilir. İzinALTER ANY USER, sunucu yöneticisi hesapları ve bu veritabanı için veya ALTER ON DATABASE iznine CONTROL ON DATABASE sahip veritabanı kullanıcıları ve veritabanı rolünün db_owner üyeleri tarafından da tutulur.

Azure SQL Veritabanı, Azure SQL Yönetilen Örneği veya Azure Synapse'te bağımsız veritabanı kullanıcısı oluşturmak için, Microsoft Entra kimliği kullanarak veritabanına veya örneğe bağlanmanız gerekir. İlk bağımsız veritabanı kullanıcısını oluşturmak için, bir Microsoft Entra yöneticisi (veritabanının sahibi olan) kullanarak veritabanına bağlanmanız gerekir. Bu, SQL Veritabanı veya Azure Synapse ile Microsoft Entra kimlik doğrulamayı yapılandırma ve yönetme makalesinde gösterilmiştir. Microsoft Entra kimlik doğrulaması yalnızca Microsoft Entra yöneticisi Azure SQL Veritabanı, Azure SQL Yönetilen Örneği veya Azure Synapse için oluşturulduysa mümkündür. Microsoft Entra yöneticisi sunucudan kaldırılırsa, daha önce sunucu içinde oluşturulan mevcut Microsoft Entra kullanıcıları artık Microsoft Entra kimlik bilgilerini kullanarak veritabanına bağlanamıyor.

Microsoft Entra özellikleri ve sınırlamaları

  • Microsoft Entra Id'nin aşağıdaki üyeleri Azure SQL Veritabanı için sağlanabilir:

    • Microsoft Entra kullanıcıları: Microsoft Entra kiracısında iç, dış, konuklar ve üyeler de dahil olmak üzere her tür kullanıcı . Microsoft Entra ID ile federasyon için yapılandırılmış bir Active Directory etki alanının üyeleri de desteklenir ve sorunsuz çoklu oturum açma için yapılandırılabilir.
    • Uygulamalar: Azure'da bulunan uygulamalar, doğrudan Azure SQL Veritabanı kimlik doğrulaması yapmak için hizmet sorumlularını veya yönetilen kimlikleri kullanabilir. Kimlik doğrulaması için yönetilen kimliklerin kullanılması, parolasız olması ve geliştirici tarafından yönetilen kimlik bilgilerine olan ihtiyacı ortadan kaldırması nedeniyle tercih edilir.
    • Microsoft Entra grupları, grup üyeliklerine göre uygun kullanıcı ve uygulama erişimini yöneterek kuruluşunuz genelinde erişim yönetimini basitleştirebilir.
  • Veritabanı rolünün üyesi db_owner olan bir grubun parçası olan Microsoft Entra kullanıcıları, Azure SQL Veritabanı ve Azure Synapse için CREATE DATABASE SCOPED CREDENTIAL söz dizimini kullanamaz. Aşağıdaki hatayı görürsünüz:

    SQL Error [2760] [S0001]: The specified schema name 'user@mydomain.com' either doesn't exist or you do not have permission to use it.

    CREATE DATABASE SCOPED CREDENTIAL sorununu azaltmak için, rolü tek tek Microsoft Entra kullanıcısına db_owner doğrudan ekleyin.

  • Bu sistem işlevleri desteklenmez ve Microsoft Entra sorumluları tarafından yürütürken NULL değerler döndürür:

    • SUSER_ID()
    • SUSER_NAME(<ID>)
    • SUSER_SNAME(<SID>)
    • SUSER_ID(<name>)
    • SUSER_SID(<name>)
  • Azure SQL Veritabanı, Microsoft Entra grup üyeliği kapsamında oturum açan kullanıcılar için örtük kullanıcılar oluşturmaz. Bu nedenle, Microsoft Entra grubu bu izinlere sahip bir role üye olarak eklense bile sahiplik ataması gerektiren çeşitli işlemler başarısız olur.

    Örneğin, db_ddladmin rolüne sahip bir Microsoft Entra grubu aracılığıyla veritabanında oturum açan bir kullanıcı, şema açıkça tanımlanmadan CREATE SCHEMA, ALTER SCHEMA ve diğer nesne oluşturma deyimlerini yürütemez (örneğin, tablo, görünüm veya tür gibi). Bu sorunu çözmek için bu kullanıcı için bir Microsoft Entra kullanıcısı oluşturulmalıdır veya DEFAULT_SCHEMA dbo'ya atamak için Microsoft Entra grubu değiştirilmelidir.

SQL Yönetilen Örnek

  • Microsoft Entra sunucu sorumluları (oturum açma bilgileri) ve kullanıcılar SQL Yönetilen Örneği için desteklenir.

  • Bir Microsoft Entra grubuna eşlenen Microsoft Entra oturum açma bilgilerinin veritabanı sahibi olarak ayarlanması SQL Yönetilen Örneği'da desteklenmez.

    • Bunun bir uzantısı, sunucu rolünün dbcreator bir parçası olarak bir grup eklendiğinde, bu gruptaki kullanıcıların SQL Yönetilen Örneği bağlanıp yeni veritabanları oluşturabilmesidir, ancak veritabanına erişemez. Bunun nedeni, yeni veritabanı sahibinin Microsoft Entra kullanıcısı değil SA olmasıdır. Bu sorun, tek tek kullanıcının sunucu rolüne eklenip eklenmediğini dbcreator göstermez.
  • SQL Aracısı yönetimi ve işleri yürütme, Microsoft Entra oturum açma işlemleri için desteklenir.

  • Veritabanı yedekleme ve geri yükleme işlemleri Microsoft Entra sunucu sorumluları (oturum açma bilgileri) tarafından yürütülebilir.

  • Microsoft Entra sunucu sorumluları (oturum açma bilgileri) ve kimlik doğrulama olaylarıyla ilgili tüm deyimlerin denetlenilmesi desteklenir.

  • Sysadmin sunucu rolünün üyesi olan Microsoft Entra sunucu sorumluları (oturum açma bilgileri) için ayrılmış yönetici bağlantısı desteklenir.

    • SQLCMD Yardımcı Programı ve SQL Server Management Studio aracılığıyla desteklenir.
  • Oturum açma tetikleyicileri, Microsoft Entra sunucu sorumlularından (oturum açma bilgileri) gelen oturum açma olayları için desteklenir.

  • Hizmet Aracısı ve DB postası bir Microsoft Entra sunucu sorumlusu (oturum açma) kullanılarak ayarlanabilir.

Microsoft Entra kimliklerini kullanarak ögesine bağlanma

Microsoft Entra kimlik doğrulaması, Microsoft Entra kimliklerini kullanarak veritabanına bağlanmak için aşağıdaki yöntemleri destekler:

  • Microsoft Entra Parolası
  • Microsoft Entra tümleşik
  • Çok faktörlü kimlik doğrulaması ile Microsoft Entra Universal
  • Uygulama belirteci kimlik doğrulamayı kullanma

Microsoft Entra sunucu sorumluları (oturum açma bilgileri) için aşağıdaki kimlik doğrulama yöntemleri desteklenir:

  • Microsoft Entra Parolası
  • Microsoft Entra tümleşik
  • Çok faktörlü kimlik doğrulaması ile Microsoft Entra Universal

Dikkat edilecek diğer noktalar

  • Yönetilebilirliği geliştirmek için yönetici olarak ayrılmış bir Microsoft Entra grubu sağlamanızı öneririz.
  • SQL Veritabanı veya Azure Synapse'teki bir sunucu için herhangi bir zamanda yalnızca bir Microsoft Entra yöneticisi (kullanıcı veya grup) yapılandırılabilir.
    • SQL Yönetilen Örneği için Microsoft Entra sunucu sorumlularının (oturum açma bilgileri) eklenmesi, role eklenebilen sysadmin birden çok Microsoft Entra sunucu sorumlusu (oturum açma bilgileri) oluşturma olanağı sağlar.
  • Yalnızca sunucunun Microsoft Entra yöneticisi başlangıçta bir Microsoft Entra hesabı kullanarak sunucuya veya yönetilen örneğe bağlanabilir. Microsoft Entra yöneticisi, sonraki Microsoft Entra veritabanı kullanıcılarını yapılandırabilir.
  • 2048'den fazla Microsoft Entra güvenlik grubunun üyesi olan Microsoft Entra kullanıcılarının ve hizmet sorumlularının (Microsoft Entra uygulamaları), SQL Veritabanı, SQL Yönetilen Örneği veya Azure Synapse'te veritabanında oturum açması desteklenmez.
  • Bağlantı zaman aşımını 30 saniye olarak ayarlamanızı öneririz.
  • Visual Studio 2015 için SQL Server 2016 Management Studio ve SQL Server Veri Araçları (sürüm 14.0.60311.1April 2016 veya üzeri) Microsoft Entra kimlik doğrulamasını destekler. (Microsoft Entra kimlik doğrulaması, SqlServer için .NET Framework Veri Sağlayıcısı tarafından desteklenir; en az .NET Framework 4.6 sürümü). Bu nedenle, bu araçların ve veri katmanı uygulamalarının (DAC ve BACPAC) en yeni sürümleri Microsoft Entra kimlik doğrulamasını kullanabilir.
  • 15.0.1 sürümünden itibaren sqlcmd yardımcı programı ve bcp yardımcı programı, çok faktörlü kimlik doğrulaması ile Active Directory Etkileşimli kimlik doğrulamasını destekler.
  • Visual Studio 2015 için SQL Server Veri Araçları en azından Veri Araçları'nın Nisan 2016 sürümünü (sürüm 14.0.60311.1) gerektirir. Şu anda Microsoft Entra kullanıcıları SSDT Nesne Gezgini gösterilmiyor. Geçici bir çözüm olarak, sys.database_principals'da kullanıcıları görüntüleyin.
  • SQL Server için Microsoft JDBC Driver 6.0, Microsoft Entra kimlik doğrulamasını destekler. Ayrıca bkz. Bağlan ion Özelliklerini Ayarlama.
  • PolyBase, Microsoft Entra kimlik doğrulamasını kullanarak kimlik doğrulaması yapamaz.
  • Microsoft Entra kimlik doğrulaması, Azure SQL Veritabanı ve Azure Synapse için Azure portalı veritabanını içeri ve dışarı aktarma dikey pencereleri kullanılarak desteklenir. Microsoft Entra kimlik doğrulamayı kullanarak içeri ve dışarı aktarma bir PowerShell komutundan da desteklenir.
  • Microsoft Entra kimlik doğrulaması CLI kullanılarak SQL Veritabanı, SQL Yönetilen Örneği ve Azure Synapse için desteklenir. Daha fazla bilgi için bkz. SQL Veritabanı veya Azure Synapse ve SQL Server ile Microsoft Entra kimlik doğrulamasını yapılandırma ve yönetme - az sql server.

Sonraki adımlar