Azure Active Directory kimlik doğrulaması kullanUse Azure Active Directory authentication

Uygulama hedefi: Azure SQL veritabanı Azure SQL yönetilen örneği Azure SYNAPSE Analytics

Azure Active Directory (Azure AD) kimlik doğrulaması, Azure AD 'deki kimlikleri kullanarak Azure SQL veritabanı, Azure SQL yönetilen ÖRNEĞIve SYNAPSE SQL 'e bağlanmak için kullanılan bir mekanizmadır.Azure Active Directory (Azure AD) authentication is a mechanism for connecting to Azure SQL Database, Azure SQL Managed Instance, and Synapse SQL in Azure Synapse Analytics by using identities in Azure AD.

Not

Bu makale Azure SQL veritabanı, SQL yönetilen örneği ve Azure SYNAPSE Analytics için geçerlidir.This article applies to Azure SQL Database, SQL Managed Instance, and Azure Synapse Analytics.

Azure AD kimlik doğrulaması ile veritabanı kullanıcılarının ve diğer Microsoft hizmetlerinin kimliklerini tek merkezden yönetebilirsiniz.With Azure AD authentication, you can centrally manage the identities of database users and other Microsoft services in one central location. 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.Central ID management provides a single place to manage database users and simplifies permission management. Avantajları şunlardır:Benefits include the following:

  • SQL Server kimlik doğrulaması için bir alternatif sağlar.It provides an alternative to SQL Server authentication.

  • Sunucu genelindeki Kullanıcı kimliklerinin uzamasını durdurmaya yardımcı olur.It helps stop the proliferation of user identities across servers.

  • Tek bir yerde parola döndürmeye izin verir.It allows password rotation in a single place.

  • Müşteriler, dış (Azure AD) gruplarını kullanarak veritabanı izinlerini yönetebilir.Customers can manage database permissions using external (Azure AD) groups.

  • Tümleşik Windows kimlik doğrulamasını ve Azure Active Directory tarafından desteklenen diğer kimlik doğrulama biçimlerini etkinleştirerek parolaların depolanmasını ortadan kaldırabilir.It can eliminate storing passwords by enabling integrated Windows authentication and other forms of authentication supported by Azure Active Directory.

  • Azure AD kimlik doğrulaması, veritabanı düzeyinde kimliklerin kimliğini doğrulamak için kapsanan veritabanı kullanıcılarını kullanır.Azure AD authentication uses contained database users to authenticate identities at the database level.

  • Azure AD, SQL veritabanı ve SQL yönetilen örneği 'ne bağlanan uygulamalar için belirteç tabanlı kimlik doğrulamasını destekler.Azure AD supports token-based authentication for applications connecting to SQL Database and SQL Managed Instance.

  • Azure AD kimlik doğrulaması şunları destekler:Azure AD authentication supports:

  • Azure AD, Multi-Factor Authentication içeren Active Directory evrensel kimlik doğrulaması kullanan SQL Server Management Studio bağlantıları destekler.Azure AD supports connections from SQL Server Management Studio that use Active Directory Universal Authentication, which includes Multi-Factor Authentication. Multi-Factor Authentication, kolay bir doğrulama seçenekleriyle güçlü kimlik doğrulaması içerir: telefon araması, SMS mesajı, PIN ile akıllı kartlar veya mobil uygulama bildirimi.Multi-Factor Authentication includes strong authentication with a range of easy verification options — phone call, text message, smart cards with pin, or mobile app notification. Daha fazla bilgi için bkz. Azure SQL veritabanı, SQL yönetilen örneği ve Azure SYNAPSE Azure AD Multi-Factor Authentication Için SSMS desteğiFor more information, see SSMS support for Azure AD Multi-Factor Authentication with Azure SQL Database, SQL Managed Instance, and Azure Synapse

  • Azure AD, Active Directory Etkileşimli Kimlik Doğrulaması'nın kullanıldığı SQL Server Veri Araçları'ndan (SSDT) gelen benzer bağlantıları destekler.Azure AD supports similar connections from SQL Server Data Tools (SSDT) that use Active Directory Interactive Authentication. Daha fazla bilgi için bkz. SQL Server Veri Araçları Azure Active Directory desteği (SSDT)For more information, see Azure Active Directory support in SQL Server Data Tools (SSDT)

Not

Azure sanal makinesi (VM) üzerinde çalıştırılan bir SQL Server örneğine bağlanma işlemi, Azure Active Directory hesabı kullanıldığında desteklenmez.Connecting to a SQL Server instance that's running on an Azure virtual machine (VM) is not supported using an Azure Active Directory account. Bunun yerine etki alanı Active Directory hesabı kullanın.Use a domain Active Directory account instead.

Yapılandırma adımları Azure Active Directory kimlik doğrulaması yapılandırmak ve kullanmak için aşağıdaki yordamları içerir.The configuration steps include the following procedures to configure and use Azure Active Directory authentication.

  1. Azure AD 'yi oluşturun ve doldurun.Create and populate Azure AD.
  2. İsteğe bağlı: Azure aboneliğinizle ilişkili olan Active Directory 'yi Ilişkilendirin veya değiştirin.Optional: Associate or change the active directory that is currently associated with your Azure Subscription.
  3. Azure Active Directory Yöneticisi oluşturun.Create an Azure Active Directory administrator.
  4. İstemci bilgisayarlarınızı yapılandırın.Configure your client computers.
  5. Veritabanınızda Azure AD kimlikleriyle eşlenmiş kapsanan veritabanı kullanıcıları oluşturun.Create contained database users in your database mapped to Azure AD identities.
  6. Azure AD kimliklerini kullanarak veritabanınıza bağlanın.Connect to your database by using Azure AD identities.

Not

Azure AD 'yi oluşturma ve doldurma hakkında bilgi edinmek ve Azure SYNAPSE Analytics 'te Azure SQL veritabanı, SQL yönetilen örneği ve SYNAPSE SQL ile Azure AD 'yi yapılandırmak için bkz. Azure ad 'Yi Azure SQL veritabanı Ile yapılandırma.To learn how to create and populate Azure AD, and then configure Azure AD with Azure SQL Database, SQL Managed Instance, and Synapse SQL in Azure Synapse Analytics, see Configure Azure AD with Azure SQL Database.

Güven mimarisiTrust architecture

  • Azure AD yerel kullanıcı parolalarını desteklemek için yalnızca Azure AD, SQL veritabanı, SQL yönetilen örneği ve Azure SYNAPSE bulut bölümü kabul edilir.Only the cloud portion of Azure AD, SQL Database, SQL Managed Instance, and Azure Synapse is considered to support Azure AD native user passwords.
  • Windows çoklu oturum açma kimlik bilgilerini (veya Windows kimlik bilgileri için Kullanıcı/parola) desteklemek için, geçişli 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 Azure Active Directory kimlik bilgilerini kullanın.To support Windows single sign-on credentials (or user/password for Windows credential), use Azure Active Directory credentials from a federated or managed domain that is configured for seamless single sign-on for pass-through and password hash authentication. Daha fazla bilgi için bkz. kesintisiz çoklu oturum açma Azure Active Directory.For more information, see Azure Active Directory Seamless Single Sign-On.
  • Federal kimlik doğrulamasını (veya Windows kimlik bilgileri için Kullanıcı/parola) desteklemek için, ADFS bloğundan iletişim gerekir.To support Federated authentication (or user/password for Windows credentials), the communication with ADFS block is required.

Azure AD karma kimlikleri, kurulum ve eşitleme hakkında daha fazla bilgi için aşağıdaki makalelere bakın:For more information on Azure AD hybrid identities, the setup, and synchronization, see the following articles:

ADFS altyapısıyla (veya Windows kimlik bilgileri için Kullanıcı/parola) örnek bir Federasyon kimlik doğrulaması için aşağıdaki diyagrama bakın.For a sample federated authentication with ADFS infrastructure (or user/password for Windows credentials), see the diagram below. Oklar, iletişim yollarını gösterir.The arrows indicate communication pathways.

aad kimlik doğrulama diyagramı

Aşağıdaki diyagramda, bir istemcinin bir belirteci göndererek bir veritabanına bağlanmasına izin veren Federasyon, güven ve barındırma ilişkileri belirtilmektedir.The following diagram indicates the federation, trust, and hosting relationships that allow a client to connect to a database by submitting a token. Belirtecin kimliği bir Azure AD tarafından doğrulanır ve veritabanı tarafından güvenilir.The token is authenticated by an Azure AD, and is trusted by the database. Müşteri 1, yerel kullanıcılar veya bir Azure AD ile federe kullanıcılarla bir Azure Active Directory temsil edebilir.Customer 1 can represent an Azure Active Directory with native users or an Azure AD with federated users. Müşteri 2, içeri aktarılan kullanıcılar dahil olası bir çözümü temsil eder. Bu örnekte, ADFS ile Azure Active Directory eşitlenen bir federal Azure Active Directory geliyor.Customer 2 represents a possible solution including imported users, in this example coming from a federated Azure Active Directory with ADFS being synchronized with Azure Active Directory. Azure AD kimlik doğrulaması kullanarak bir veritabanına erişimin, barındırma aboneliğinin Azure AD ile ilişkilendirilmesini gerektirdiğini anlamak önemlidir.It's important to understand that access to a database using Azure AD authentication requires that the hosting subscription is associated to the Azure AD. Azure SQL veritabanı, SQL yönetilen örneği veya Azure SYNAPSE kaynaklarını oluşturmak için aynı aboneliğin kullanılması gerekir.The same subscription must be used to create the Azure SQL Database, SQL Managed Instance, or Azure Synapse resources.

Abonelik ilişkisi

Yönetici yapısıAdministrator structure

Azure AD kimlik doğrulaması kullanılırken, iki yönetici hesabı vardır: özgün Azure SQL veritabanı yöneticisi ve Azure AD yöneticisi.When using Azure AD authentication, there are two Administrator accounts: the original Azure SQL Database administrator and the Azure AD administrator. Aynı kavramlar Azure SYNAPSE için de geçerlidir.The same concepts apply to Azure Synapse. Yalnızca bir Azure AD hesabını temel alan yönetici, bir kullanıcı veritabanında ilk Azure AD kapsanan veritabanı kullanıcısını oluşturabilir.Only the administrator based on an Azure AD account can create the first Azure AD contained database user in a user database. Azure AD yönetici oturumu, bir Azure AD kullanıcısı veya bir Azure AD grubu olabilir.The Azure AD administrator login can be an Azure AD user or an Azure AD group. Yönetici bir grup hesabı olduğunda, sunucu için birden çok Azure AD yöneticisini etkinleştirerek herhangi bir grup üyesi tarafından kullanılabilir.When the administrator is a group account, it can be used by any group member, enabling multiple Azure AD administrators for the server. Grup hesabını yönetici olarak kullanmak, SQL veritabanı veya Azure SYNAPSE 'de kullanıcıları veya izinleri değiştirmeden Azure AD 'de grup üyelerini merkezi olarak eklemenize ve kaldırmanıza olanak tanıyarak yönetilebilirlik geliştirir.Using group account as an administrator enhances manageability by allowing you to centrally add and remove group members in Azure AD without changing the users or permissions in SQL Database or Azure Synapse. Herhangi bir anda yalnızca bir Azure AD Yöneticisi (bir kullanıcı veya grup) yapılandırılabilir.Only one Azure AD administrator (a user or group) can be configured at any time.

Yönetici yapısı

İzinlerPermissions

Yeni kullanıcılar oluşturmak için, veritabanında izninizin olması gerekir ALTER ANY USER .To create new users, you must have the ALTER ANY USER permission in the database. ALTER ANY USERHerhangi bir veritabanı kullanıcısına izin verilebilir.The ALTER ANY USER permission can be granted to any database user. ALTER ANY USERAyrıca, bu izin Sunucu Yöneticisi hesapları tarafından ve CONTROL ON DATABASE Bu veritabanı için veya iznine sahip veritabanı kullanıcıları ALTER ON DATABASE ve veritabanı rolünün üyeleri tarafından tutulur db_owner .The ALTER ANY USER permission is also held by the server administrator accounts, and database users with the CONTROL ON DATABASE or ALTER ON DATABASE permission for that database, and by members of the db_owner database role.

Azure SQL veritabanı, SQL yönetilen örneği veya Azure SYNAPSE içinde kapsanan bir veritabanı kullanıcısı oluşturmak için, bir Azure AD kimliği kullanarak veritabanına veya örneğe bağlanmanız gerekir.To create a contained database user in Azure SQL Database, SQL Managed Instance, or Azure Synapse, you must connect to the database or instance using an Azure AD identity. İlk kapsanan veritabanı kullanıcısını oluşturmak için, bir Azure AD Yöneticisi (veritabanının sahibi olan) kullanarak veritabanına bağlanmanız gerekir.To create the first contained database user, you must connect to the database by using an Azure AD administrator (who is the owner of the database). Bu, Azure Active Directory kimlik DOĞRULAMASıNı SQL veritabanı veya Azure SYNAPSE Ile yapılandırma ve yönetmebölümünde gösterilmiştir.This is demonstrated in Configure and manage Azure Active Directory authentication with SQL Database or Azure Synapse. Azure AD kimlik doğrulaması yalnızca Azure SQL veritabanı, SQL yönetilen örneği veya Azure SYNAPSE için Azure AD yöneticisi oluşturulduysa mümkündür.Azure AD authentication is only possible if the Azure AD admin was created for Azure SQL Database, SQL Managed Instance, or Azure Synapse. Azure Active Directory Yöneticisi sunucudan kaldırılmışsa, daha önce SQL Server içinde oluşturulan mevcut Azure Active Directory Kullanıcılar artık Azure Active Directory kimlik bilgilerini kullanarak veritabanına bağlanamaz.If the Azure Active Directory admin was removed from the server, existing Azure Active Directory users created previously inside SQL Server can no longer connect to the database using their Azure Active Directory credentials.

Azure AD özellikleri ve sınırlamalarıAzure AD features and limitations

  • Azure AD 'nin aşağıdaki üyeleri Azure SQL veritabanı için sağlanabilir:The following members of Azure AD can be provisioned for Azure SQL Database:

  • Sunucu rolüne sahip bir grubun parçası olan Azure AD kullanıcıları db_owner , Azure SQL veritabanı ve Azure SYNAPSE 'de VERITABANı KAPSAMLı kimlik bilgisi oluştur sözdizimini kullanamaz.Azure AD users that are part of a group that has db_owner server role cannot use the CREATE DATABASE SCOPED CREDENTIAL syntax against Azure SQL Database and Azure Synapse. Aşağıdaki hatayı görürsünüz:You will see the following error:

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

    db_owner VERITABANı KAPSAMLı kimlik bilgileri oluşturma sorununu hafifletmek için role doğrudan tek bir Azure AD kullanıcısına izin verin.Grant the db_owner role directly to the individual Azure AD user to mitigate the CREATE DATABASE SCOPED CREDENTIAL issue.

  • Bu sistem işlevleri, Azure AD sorumluları altında yürütüldüğünde NULL değerler döndürüyor:These system functions return NULL values when executed under Azure AD principals:

    • SUSER_ID()
    • SUSER_NAME(<admin ID>)
    • SUSER_SNAME(<admin SID>)
    • SUSER_ID(<admin name>)
    • SUSER_SID(<admin name>)

SQL Yönetilen ÖrnekSQL Managed Instance

  • Azure AD Server sorumluları (oturumlar) ve kullanıcıları SQL yönetilen örneğiiçin desteklenir.Azure AD server principals (logins) and users are supported for SQL Managed Instance.
  • Bir Azure AD grubuna eşlenen Azure AD Server sorumlularını (oturum açma) SQL yönetilen örneğindeayarlama desteklenmez.Setting Azure AD server principals (logins) mapped to an Azure AD group as database owner is not supported in SQL Managed Instance.
    • Bunun bir uzantısı, bir grup sunucu rolünün bir parçası olarak eklendiğinde dbcreator , bu gruptaki KULLANıCıLAR SQL yönetilen örneğine bağlanabilir ve yeni veritabanları oluşturabilir, ancak veritabanına erişemeyecektir.An extension of this is that when a group is added as part of the dbcreator server role, users from this group can connect to the SQL Managed Instance and create new databases, but will not be able to access the database. Bunun nedeni, yeni veritabanı sahibinin Azure AD kullanıcısı değil, SA.This is because the new database owner is SA, and not the Azure AD user. Bu sorun, bireysel kullanıcı sunucu rolüne eklenirse bildirim yapmaz dbcreator .This issue does not manifest if the individual user is added to the dbcreator server role.
  • SQL Aracısı yönetimi ve işlerin yürütülmesi, Azure AD Server sorumluları (oturumlar) için desteklenir.SQL Agent management and jobs execution are supported for Azure AD server principals (logins).
  • Veritabanı yedekleme ve geri yükleme işlemleri, Azure AD Server sorumluları (oturumlar) tarafından yürütülebilir.Database backup and restore operations can be executed by Azure AD server principals (logins).
  • Azure AD Server sorumluları (oturum açmalar) ve kimlik doğrulama olayları ile ilgili tüm deyimlerin denetlenmesi desteklenir.Auditing of all statements related to Azure AD server principals (logins) and authentication events is supported.
  • Sysadmin sunucu rolünün üyeleri olan Azure AD Server sorumluları (oturumlar) için adanmış yönetici bağlantısı desteklenir.Dedicated administrator connection for Azure AD server principals (logins) which are members of sysadmin server role is supported.
    • SQLCMD yardımcı programı ve SQL Server Management Studio aracılığıyla desteklenir.Supported through SQLCMD Utility and SQL Server Management Studio.
  • Oturum açma Tetikleyicileri, Azure AD Server sorumlularına (oturum açmalar) gelen oturum açma olayları için desteklenir.Logon triggers are supported for logon events coming from Azure AD server principals (logins).
  • Hizmet Aracısı ve DB Mail, bir Azure AD sunucusu sorumlusu (oturum açma) kullanılarak ayarlanabilir.Service Broker and DB mail can be setup using an Azure AD server principal (login).

Azure AD kimliklerini kullanarak bağlanmaConnect by using Azure AD identities

Azure Active Directory kimlik doğrulaması, Azure AD kimliklerini kullanarak bir veritabanına bağlanmak için aşağıdaki yöntemleri destekler:Azure Active Directory authentication supports the following methods of connecting to a database using Azure AD identities:

  • Azure Active Directory parolasıAzure Active Directory Password
  • Azure Active Directory tümleşikAzure Active Directory Integrated
  • Multi-Factor Authentication ile evrensel Azure Active DirectoryAzure Active Directory Universal with Multi-Factor Authentication
  • Uygulama belirteci kimlik doğrulamasını kullanmaUsing Application token authentication

Aşağıdaki kimlik doğrulama yöntemleri Azure AD Server sorumluları (oturum açmalar) için desteklenir:The following authentication methods are supported for Azure AD server principals (logins):

  • Azure Active Directory parolasıAzure Active Directory Password
  • Azure Active Directory tümleşikAzure Active Directory Integrated
  • Multi-Factor Authentication ile evrensel Azure Active DirectoryAzure Active Directory Universal with Multi-Factor Authentication

Diğer konularAdditional considerations

  • Yönetilebilirlik geliştirmek için, bir yönetici olarak adanmış bir Azure AD grubu sağlamanızı öneririz.To enhance manageability, we recommend you provision a dedicated Azure AD group as an administrator.
  • Yalnızca bir Azure AD Yöneticisi (bir kullanıcı veya grup), SQL veritabanı veya Azure SYNAPSE 'de dilediğiniz zaman bir sunucu için yapılandırılabilir.Only one Azure AD administrator (a user or group) can be configured for a server in SQL Database or Azure Synapse at any time.
    • SQL yönetilen örneği için Azure AD Server sorumlularını (oturum açma) ekleme, role eklenebilen birden çok Azure AD Server sorumlusu (oturum açma) oluşturma olasılığa izin verir sysadmin .The addition of Azure AD server principals (logins) for SQL Managed Instance allows the possibility of creating multiple Azure AD server principals (logins) that can be added to the sysadmin role.
  • Yalnızca sunucu için bir Azure AD yöneticisi, Azure Active Directory bir hesabı kullanarak sunucuya veya yönetilen örneğe ilk olarak bağlanabilir.Only an Azure AD administrator for the server can initially connect to the server or managed instance using an Azure Active Directory account. Active Directory Yöneticisi, sonraki Azure AD veritabanı kullanıcılarını yapılandırabilir.The Active Directory administrator can configure subsequent Azure AD database users.
  • Bağlantı zaman aşımını 30 saniyeye ayarlamayı öneririz.We recommend setting the connection timeout to 30 seconds.
  • SQL Server 2016 Management Studio ve SQL Server Veri Araçları Visual Studio 2015 için (sürüm 14.0.60311.1 Nisan 2016 veya üzeri) Azure Active Directory kimlik doğrulamasını destekler.SQL Server 2016 Management Studio and SQL Server Data Tools for Visual Studio 2015 (version 14.0.60311.1April 2016 or later) support Azure Active Directory authentication. (Azure AD kimlik doğrulaması, SqlServer için .NET Framework veri sağlayıcısı tarafından desteklenir; en az sürüm .NET Framework 4,6).(Azure AD authentication is supported by the .NET Framework Data Provider for SqlServer; at least version .NET Framework 4.6). Bu nedenle, bu araçların ve veri katmanı uygulamalarının (DAC ve BACPAC) en yeni sürümleri Azure AD kimlik doğrulaması kullanabilir.Therefore the newest versions of these tools and data-tier applications (DAC and BACPAC) can use Azure AD authentication.
  • Sürüm 15.0.1 ile başlayarak, sqlcmd yardımcı programı ve bcp yardımcı programı , Multi-Factor Authentication ile etkileşimli kimlik doğrulama desteği Active Directory.Beginning with version 15.0.1, sqlcmd utility and bcp utility support Active Directory Interactive authentication with Multi-Factor Authentication.
  • Visual Studio 2015 için SQL Server Veri Araçları, en az veri araçları 'nın 2016 Nisan sürümü (sürüm 14.0.60311.1) gerektirir.SQL Server Data Tools for Visual Studio 2015 requires at least the April 2016 version of the Data Tools (version 14.0.60311.1). Şu anda, Azure AD kullanıcıları SSDT Nesne Gezgini gösterilmez.Currently, Azure AD users are not shown in SSDT Object Explorer. Geçici bir çözüm olarak, sys.database_principalskullanıcıları görüntüleyin.As a workaround, view the users in sys.database_principals.
  • SQL Server Için MICROSOFT JDBC sürücüsü 6,0 , Azure AD kimlik doğrulamasını destekler.Microsoft JDBC Driver 6.0 for SQL Server supports Azure AD authentication. Ayrıca bkz. bağlantı özelliklerini ayarlama.Also, see Setting the Connection Properties.
  • PolyBase, Azure AD kimlik doğrulamasını kullanarak kimlik doğrulaması yapamaz.PolyBase cannot authenticate by using Azure AD authentication.
  • Azure AD kimlik doğrulaması, Azure SQL veritabanı ve Azure SYNAPSE için Azure portal Içeri aktarma veritabanı ve dışarı aktarma veritabanı dikey pencereleri kullanılarak desteklenir.Azure AD authentication is supported for Azure SQL Database and Azure Synapse by using the Azure portal Import Database and Export Database blades. Azure AD kimlik doğrulaması kullanarak içeri ve dışarı aktarma, bir PowerShell komutundan de desteklenir.Import and export using Azure AD authentication is also supported from a PowerShell command.
  • CLı kullanılarak SQL veritabanı, SQL yönetilen örneği ve Azure SYNAPSE için Azure AD kimlik doğrulaması desteklenir.Azure AD authentication is supported for SQL Database, SQL Managed Instance, and Azure Synapse with using the CLI. Daha fazla bilgi için bkz. Azure AD kimlik DOĞRULAMASıNı SQL veritabanı veya Azure SYNAPSE Ile yapılandırma ve yönetme SQL Server-az SQL Server.For more information, see Configure and manage Azure AD authentication with SQL Database or Azure Synapse and SQL Server - az sql server.

Sonraki adımlarNext steps