你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

将 Microsoft Fabric 中的 SQL 数据库与 Service Connector 集成

此页显示了支持的身份验证方法和客户端,并演示了使用 Service Connector 将应用连接到 Microsoft Fabric 中的 SQL 数据库的示例代码。 此页面还显示你在创建服务连接时获得的默认环境变量名称和值。

受支持的计算服务

服务连接器可用于将以下计算服务连接到 Fabric 中的 SQL 数据库:

  • Azure 应用服务
  • Azure 容器应用 (Azure Container Apps)
  • Azure Functions(Azure 功能服务)
  • Azure Kubernetes 服务 (AKS)

受支持的身份验证类型和客户端类型

下表显示了使用 Service Connector 将计算服务连接到 Fabric 中的 SQL 数据库时支持的身份验证方法和客户端的组合。 “是”表示支持组合,而“否”则表示不支持该组合。

客户端类型 系统分配的托管标识 用户分配的管理标识 机密/连接字符串 服务主体
.NET 是的 是的
走吧 是的 是的
爪哇岛 是的 是的
Java - Spring Boot 是的 是的
Python语言 是的 是的
没有 是的 是的

此表指示根据 Fabric 行为,仅允许通过托管标识进行身份验证。

.NET、Java、Java - Spring Boot、Python、Go 和 None 客户端类型支持系统分配的托管标识和用户分配的托管标识方法。 这些方法不支持其他任何类型。

重要

目前手动访问共享是完成加入所必需的。 请参阅 在 Fabric 中共享对 SQL 数据库的访问

默认环境变量名称或应用程序属性和示例代码

请参阅以下选项卡中介绍的连接详细信息和示例代码,以将计算服务连接到 Fabric 中的 SQL 数据库。 有关命名约定的详细信息,请参阅服务连接器内部一文。

注释

尽管 Fabric 中的 SQL 数据库不同于 Azure SQL 数据库,但可以通过与 Azure SQL 数据库相同的方式在 Fabric 中连接和查询 SQL 数据库。 了解详细信息

系统分配的托管标识

默认环境变量名称 DESCRIPTION 示例值
FABRIC_SQL_CONNECTIONSTRING Azure SQL 数据库连接字符串 Data Source=tcp:<Fabric-SQL-Identifier>.msit-database.fabric.microsoft.com,1433;Initial Catalog=<SQL-DB-name>-<Fabric-DB-Identifier>;Authentication=ActiveDirectoryManagedIdentity

示例代码

下面概述了使用系统分配的托管标识连接到 Fabric 中的 SQL 数据库的步骤和代码片段。

  1. 安装依赖项。

    dotnet add package Microsoft.Data.SqlClient
    
  2. 从 Service Connector 添加的环境变量中检索 Microsoft Fabric 连接字符串中的 SQL 数据库。

    using Microsoft.Data.SqlClient;
    
    string connectionString = 
        Environment.GetEnvironmentVariable("FABRIC_SQL_CONNECTIONSTRING")!;
    
    using var connection = new SqlConnection(connectionString);
    connection.Open();
    

    有关详细信息,请参阅 使用 Active Directory 托管标识身份验证

有关详细信息,请参阅 Microsoft Fabric 中的“连接到 SQL 数据库”。

用户分配的托管标识

默认环境变量名称 DESCRIPTION 示例值
FABRIC_SQL_CONNECTIONSTRING Azure SQL 数据库连接字符串 Data Source=tcp:<Fabric-SQL-Identifier>.msit-database.fabric.microsoft.com,1433;Initial Catalog=<SQL-DB-name>-<Fabric-DB-Identifier>;User ID=<msiClientId>;Authentication=ActiveDirectoryManagedIdentity

示例代码

下面概述了使用用户分配的托管标识连接到 Fabric 中的 SQL 数据库的步骤和代码片段。

  1. 安装依赖项。

    dotnet add package Microsoft.Data.SqlClient
    
  2. 从 Service Connector 添加的环境变量中检索 Microsoft Fabric 连接字符串中的 SQL 数据库。

    using Microsoft.Data.SqlClient;
    
    string connectionString = 
        Environment.GetEnvironmentVariable("FABRIC_SQL_CONNECTIONSTRING")!;
    
    using var connection = new SqlConnection(connectionString);
    connection.Open();
    

    有关详细信息,请参阅 使用 Active Directory 托管标识身份验证

有关详细信息,请参阅 Microsoft Fabric 中的“连接到 SQL 数据库”。

在 Fabric 中共享对 SQL 数据库的访问

  1. 完成在 Cloud Shell 上或本地 Azure CLI 上创建服务连接。

  2. 创建连接后,在 Azure 门户中打开计算服务资源,打开服务连接器菜单,并在 Fabric 服务连接中找到 SQL 数据库。 选择 SQL 数据库 以导航到 Fabric 门户。

    Azure 门户的屏幕截图,选择“SQL 数据库”链接以导航到 Fabric 门户。

  3. 在 Fabric 门户中,找到 “安全 ”选项卡,然后选择“ 管理 SQL 安全性”。

    Fabric 门户的屏幕截图,选择“管理 SQL 安全性”。

  4. 选择角色db_ddladmin,然后 管理访问权限

    Fabric 门户的屏幕截图,选择db_ddladmin角色,然后单击“管理访问权限”。

  5. 你应该会看到系统分配的托管标识的名称,以及/或任何用户分配的托管标识,它具有与 Fabric 中此 SQL 数据库的服务连接。 选择 “共享数据库”。 如果未看到 “共享数据库 ”选项,则无需继续执行其余步骤。

    Fabric 门户的屏幕截图,查看添加到角色的组列表,然后单击“共享数据库”。

  6. 输入并选择新创建的系统分配的托管标识的名称,以及/或显示在 “管理访问 ”窗格中的任何用户分配的托管标识。 根据需要添加任何其他标识。 选中“使用 SQL 数据库读取所有数据”复选框,然后选择“授予”。

    Fabric 门户的屏幕截图,键入任何分配的托管标识的名称,选择“使用 SQL 数据库读取所有数据”,然后单击“授予”。

  7. 现在,你已准备好使用与 Fabric 中的 SQL 数据库的新服务连接。

后续步骤

请参阅以下文章,了解有关服务连接器的详细信息。