Tato stránka ukazuje podporované metody ověřování a klienty a ukazuje ukázkový kód, který můžete použít k připojení aplikací k databázi SQL v Microsoft Fabric pomocí konektoru služby. Tato stránka také zobrazuje výchozí názvy proměnných prostředí a hodnoty, které získáte při vytváření připojení služby.
Podporované výpočetní služby
Konektor služby je možné použít k připojení následujících výpočetních služeb k databázi SQL ve Fabricu.
- Azure App Service
- Azure Container Apps (aplikace pro kontejnery)
- Azure Functions (cloudové funkce od Microsoftu)
- Azure Kubernetes Service (AKS)
Podporované typy ověřování a typy klientů
Následující tabulka ukazuje, které kombinace metod ověřování a klientů se podporují pro připojení výpočetní služby k databázi SQL v prostředcích Fabric pomocí konektoru Service Connector. "Ano" označuje, že kombinace je podporována, zatímco "Ne" označuje, že není podporována.
| Typ klienta |
Spravovaná identita přiřazená systémem |
Spravovaná identita přiřazená uživatelem |
Tajný kód/připojovací řetězec |
Hlavní služba |
| .SÍŤ |
Ano |
Ano |
Ne |
Ne |
| Jdi |
Ano |
Ano |
Ne |
Ne |
| Java |
Ano |
Ano |
Ne |
Ne |
| Java – Spring Boot |
Ano |
Ano |
Ne |
Ne |
| Krajta |
Ano |
Ano |
Ne |
Ne |
| Žádné |
Ano |
Ano |
Ne |
Ne |
Tato tabulka ukazuje, že podle chování Fabric je povoleno pouze ověřování prostřednictvím spravovaných identit.
Spravované identity přiřazené systémem a metody spravované identity přiřazené uživatelem jsou podporované pro typy klientů .NET, Java, Java – Spring Boot, Python, Go a None. Tyto metody nejsou podporovány pro žádné jiné typy.
Výchozí názvy proměnných prostředí nebo vlastnosti aplikace a ukázkový kód
Projít můžete podrobnosti o připojení a ukázkový kód na následujících kartách, abyste připojili výpočetní služby k SQL databázi ve Fabric. Další informace o konvencích pojmenování najdete v článku o vnitřnostech konektoru služby.
Poznámka:
I když je databáze SQL ve službě Fabric odlišná od Azure SQL Database, můžete se ke své databázi SQL ve Fabric připojit a dotazovat ji stejným způsobem jako Azure SQL Database.
Další informace
Spravovaná identita přiřazená systémem
| Výchozí název proměnných prostředí |
Popis |
Příklad hodnoty |
FABRIC_SQL_CONNECTIONSTRING |
Azure SQL Database připojovací řetězec |
Data Source=tcp:<Fabric-SQL-Identifier>.msit-database.fabric.microsoft.com,1433;Initial Catalog=<SQL-DB-name>-<Fabric-DB-Identifier>;Authentication=ActiveDirectoryManagedIdentity |
| Výchozí název proměnných prostředí |
Popis |
Ukázková hodnota |
FABRIC_SQL_CONNECTIONSTRING |
Azure SQL Database připojovací řetězec |
jdbc:sqlserver://<Fabric-SQL-Identifier>.msit-database.fabric.microsoft.com,1433;databaseName=<SQL-DB-name>-<Fabric-DB-Identifier>;authentication=ActiveDirectoryMSI; |
| Výchozí název proměnných prostředí |
Popis |
Ukázková hodnota |
FABRIC_SQL_CONNECTIONSTRING |
Azure SQL Database připojovací řetězec |
jdbc:sqlserver://<Fabric-SQL-Identifier>.msit-database.fabric.microsoft.com,1433;databaseName=<SQL-DB-name>-<Fabric-DB-Identifier>;authentication=ActiveDirectoryMSI; |
| Výchozí název proměnných prostředí |
Popis |
Příklad hodnoty |
FABRIC_SQL_CONNECTIONSTRING |
Azure SQL Database připojovací řetězec |
Driver={ODBC Driver 17 for SQL Server};Server=tcp:<Fabric-SQL-Identifier>.msit-database.fabric.microsoft.com,1433;Database=<SQL-DB-name>-<Fabric-DB-Identifier>;Authentication=ActiveDirectoryMSI; |
| Výchozí název proměnných prostředí |
Popis |
Příklad hodnoty |
FABRIC_SQL_CONNECTIONSTRING |
Azure SQL Database připojovací řetězec |
server=tcp:<Fabric-SQL-Identifier>.msit-database.fabric.microsoft.com;port=1433;database=<SQL-DB-name>-<Fabric-DB-Identifier>;fedauth=ActiveDirectoryManagedIdentity; |
| Výchozí název proměnných prostředí |
Popis |
Příklad hodnoty |
FABRIC_SQL_CONNECTIONSTRING |
Azure SQL Database připojovací řetězec |
server=tcp:<Fabric-SQL-Identifier>.msit-database.fabric.microsoft.com;port=1433;database=<SQL-DB-name>-<Fabric-DB-Identifier>;fedauth=ActiveDirectoryManagedIdentity; |
Ukázkový kód
Níže jsou popsány kroky a fragmenty kódu pro připojení k databázi SQL ve Fabric pomocí spravované identity přiřazené systémem.
Nainstalujte závislosti.
dotnet add package Microsoft.Data.SqlClient
Načtěte databázi SQL v připojovacím řetězci Microsoft Fabric z proměnné prostředí přidané konektorem služby.
using Microsoft.Data.SqlClient;
string connectionString =
Environment.GetEnvironmentVariable("FABRIC_SQL_CONNECTIONSTRING")!;
using var connection = new SqlConnection(connectionString);
connection.Open();
Další informace najdete v tématu Použití ověřování spravované identity služby Active Directory.
Do souboru pom.xml přidejte následující závislosti:
<dependency>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>mssql-jdbc</artifactId>
<version>10.2.0.jre11</version>
</dependency>
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-identity</artifactId>
<version>1.7.0</version>
</dependency>
Načtěte databázi SQL v připojovacím řetězci Microsoft Fabric z proměnné prostředí přidané konektorem služby.
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;
import com.microsoft.sqlserver.jdbc.SQLServerDataSource;
public class Main {
public static void main(String[] args) {
// FABRIC_SQL_CONNECTIONSTRING should be one of the following:
// For system-assigned managed identity: "jdbc:sqlserver://<Fabric-SQL-Identifier>.msit-database.fabric.microsoft.com,1433;databaseName=<SQL-DB-name>-<Fabric-DB-Identifier>;authentication=ActiveDirectoryMSI;"
// For user-assigned managed identity: "jdbc:sqlserver://<Fabric-SQL-Identifier>.msit-database.fabric.microsoft.com,1433;databaseName=<SQL-DB-name>-<Fabric-DB-Identifier>;msiClientId=<msiClientId>;authentication=ActiveDirectoryMSI;"
String connectionString = System.getenv("FABRIC_SQL_CONNECTIONSTRING");
SQLServerDataSource ds = new SQLServerDataSource();
ds.setURL(connectionString);
try (Connection connection = ds.getConnection()) {
System.out.println("Connected successfully.");
} catch (SQLException e) {
e.printStackTrace();
}
}
}
Další informace najdete v tématu Připojení k databázím Azure ze služby App Service bez tajných kódů pomocí spravované identity.
Pokud pro aplikaci Spring vytvoříte připojení s možností --client-type springboot, Service Connector nastaví na Azure Spring Apps proměnnou prostředí FABRIC_SQL_CONNECTIONSTRING ve formátu hodnoty jdbc:sqlserver://<Fabric-SQL-Identifier>.msit-database.fabric.microsoft.com,1433;databaseName=<SQL-DB-name>-<Fabric-DB-Identifier>;authentication=ActiveDirectoryMSI;.
Pro spravované identity přiřazené uživatelem se přidá msiClientId=<msiClientId>;.
Aktualizujte aplikaci podle kurzu Migrace aplikace v Javě tak, aby používala připojení bez hesla se službou Azure SQL Database. Nezapomeňte odebrat spring.datasource.password vlastnost konfigurace, pokud byla dříve nastavena, a přidat správné závislosti.
spring:
datasource:
url: ${FABRIC_SQL_CONNECTIONSTRING}
Nainstalujte závislosti.
python -m pip install pyodbc
Načtěte databázi SQL v připojovacím řetězci Microsoft Fabric z proměnné prostředí přidané konektorem služby. Pokud používáte Azure Container Apps jako výpočetní službu nebo připojovací řetězec v fragmentu kódu nefunguje, přečtěte si článek o migraci aplikace Python, která používá bez hesel připojení ke službě Azure SQL Database pro připojení k databázi SQL v Microsoft Fabric pomocí přihlašovacích údajů bez hesel.
Authentication=ActiveDirectoryMSI; je vyžadován v připojovacím řetězci při připojování pomocí spravovaných identit.
UID=<msiClientId> je také vyžadován v připojovacím řetězci při připojování pomocí spravované identity přiřazené uživatelem.
import os
import pyodbc, struct
from azure.identity import DefaultAzureCredential
connStr = os.getenv('FABRIC_SQL_CONNECTIONSTRING')
# System-assigned managed identity connection string format
# `Driver={ODBC Driver 17 for SQL Server};Server=tcp:<Fabric-SQL-Identifier>.msit-database.fabric.microsoft.com,1433;Database=<SQL-DB-name>-<Fabric-DB-Identifier>;Authentication=ActiveDirectoryMSI;`
# User-assigned managed identity connection string format
# `Driver={ODBC Driver 17 for SQL Server};Server=tcp:<Fabric-SQL-Identifier>.msit-database.fabric.microsoft.com,1433;Database=<SQL-DB-name>-<Fabric-DB-Identifier>;UID=<msiClientId>;Authentication=ActiveDirectoryMSI;`
conn = pyodbc.connect(connString)
- Nainstalujte závislosti.
go mod init <YourProjectName>
go mod tidy
- Načtěte databázi SQL v připojovacím řetězci Microsoft Fabric z proměnné prostředí přidané konektorem služby.
package main
import (
"github.com/microsoft/go-mssqldb/azuread"
"database/sql"
"context"
"log"
"fmt"
"os"
)
var db *sql.DB
var connectionString = os.Getenv("FABRIC_SQL_CONNECTIONSTRING")
func main() {
var err error
// Create connection pool
db, err = sql.Open(azuread.DriverName, connectionString)
if err != nil {
log.Fatal("Error creating connection pool: ", err.Error())
}
ctx := context.Background()
err = db.PingContext(ctx)
if err != nil {
log.Fatal(err.Error())
}
fmt.Printf("Connected!\n")
}
Další informace najdete v tématu Použití jazyka Go k dotazování databáze ve službě Azure SQL Database.
Další informace najdete v tématu Připojení k databázi SQL v Microsoft Fabric.
Spravovaná identita přiřazená uživatelem
| Výchozí název proměnných prostředí |
Popis |
Příklad hodnoty |
FABRIC_SQL_CONNECTIONSTRING |
Azure SQL Database připojovací řetězec |
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 |
| Výchozí název proměnných prostředí |
Popis |
Ukázková hodnota |
FABRIC_SQL_CONNECTIONSTRING |
Azure SQL Database připojovací řetězec |
jdbc:sqlserver://<Fabric-SQL-Identifier>.msit-database.fabric.microsoft.com,1433;databaseName=<SQL-DB-name>-<Fabric-DB-Identifier>;msiClientId=<msiClientId>;authentication=ActiveDirectoryMSI; |
| Výchozí název proměnných prostředí |
Popis |
Ukázková hodnota |
FABRIC_SQL_CONNECTIONSTRING |
Azure SQL Database připojovací řetězec |
jdbc:sqlserver://<Fabric-SQL-Identifier>.msit-database.fabric.microsoft.com,1433;databaseName=<SQL-DB-name>-<Fabric-DB-Identifier>;msiClientId=<msiClientId>;authentication=ActiveDirectoryMSI; |
| Výchozí název proměnných prostředí |
Popis |
Příklad hodnoty |
FABRIC_SQL_CONNECTIONSTRING |
Azure SQL Database připojovací řetězec |
Driver={ODBC Driver 17 for SQL Server};Server=tcp:<Fabric-SQL-Identifier>.msit-database.fabric.microsoft.com,1433;Database=<SQL-DB-name>-<Fabric-DB-Identifier>;UID=<msiClientId>;Authentication=ActiveDirectoryMSI; |
| Výchozí název proměnných prostředí |
Popis |
Příklad hodnoty |
FABRIC_SQL_CONNECTIONSTRING |
Azure SQL Database připojovací řetězec |
server=tcp:<Fabric-SQL-Identifier>.msit-database.fabric.microsoft.com;port=1433;database=<SQL-DB-name>-<Fabric-DB-Identifier>;user id=<msiClientId>;fedauth=ActiveDirectoryManagedIdentity; |
| Výchozí název proměnných prostředí |
Popis |
Příklad hodnoty |
FABRIC_SQL_CONNECTIONSTRING |
Azure SQL Database připojovací řetězec |
server=tcp:<Fabric-SQL-Identifier>.msit-database.fabric.microsoft.com;port=1433;database=<SQL-DB-name>-<Fabric-DB-Identifier>;user id=<msiClientId>;fedauth=ActiveDirectoryManagedIdentity; |
Ukázkový kód
Níže jsou popsány kroky a fragmenty kódu pro připojení k databázi SQL ve Fabricu pomocí uživatelsky přiřazené spravované identity.
Nainstalujte závislosti.
dotnet add package Microsoft.Data.SqlClient
Načtěte databázi SQL v připojovacím řetězci Microsoft Fabric z proměnné prostředí přidané konektorem služby.
using Microsoft.Data.SqlClient;
string connectionString =
Environment.GetEnvironmentVariable("FABRIC_SQL_CONNECTIONSTRING")!;
using var connection = new SqlConnection(connectionString);
connection.Open();
Další informace najdete v tématu Použití ověřování spravované identity služby Active Directory.
Do souboru pom.xml přidejte následující závislosti:
<dependency>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>mssql-jdbc</artifactId>
<version>10.2.0.jre11</version>
</dependency>
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-identity</artifactId>
<version>1.7.0</version>
</dependency>
Načtěte databázi SQL v připojovacím řetězci Microsoft Fabric z proměnné prostředí přidané konektorem služby.
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;
import com.microsoft.sqlserver.jdbc.SQLServerDataSource;
public class Main {
public static void main(String[] args) {
// FABRIC_SQL_CONNECTIONSTRING should be one of the following:
// For system-assigned managed identity: "jdbc:sqlserver://<Fabric-SQL-Identifier>.msit-database.fabric.microsoft.com,1433;databaseName=<SQL-DB-name>-<Fabric-DB-Identifier>;authentication=ActiveDirectoryMSI;"
// For user-assigned managed identity: "jdbc:sqlserver://<Fabric-SQL-Identifier>.msit-database.fabric.microsoft.com,1433;databaseName=<SQL-DB-name>-<Fabric-DB-Identifier>;msiClientId=<msiClientId>;authentication=ActiveDirectoryMSI;"
String connectionString = System.getenv("FABRIC_SQL_CONNECTIONSTRING");
SQLServerDataSource ds = new SQLServerDataSource();
ds.setURL(connectionString);
try (Connection connection = ds.getConnection()) {
System.out.println("Connected successfully.");
} catch (SQLException e) {
e.printStackTrace();
}
}
}
Další informace najdete v tématu Připojení k databázím Azure ze služby App Service bez tajných kódů pomocí spravované identity.
Pokud pro aplikaci Spring vytvoříte připojení s možností --client-type springboot, Service Connector nastaví na Azure Spring Apps proměnnou prostředí FABRIC_SQL_CONNECTIONSTRING ve formátu hodnoty jdbc:sqlserver://<Fabric-SQL-Identifier>.msit-database.fabric.microsoft.com,1433;databaseName=<SQL-DB-name>-<Fabric-DB-Identifier>;authentication=ActiveDirectoryMSI;.
Pro spravované identity přiřazené uživatelem se přidá msiClientId=<msiClientId>;.
Aktualizujte aplikaci podle kurzu Migrace aplikace v Javě tak, aby používala připojení bez hesla se službou Azure SQL Database. Nezapomeňte odebrat spring.datasource.password vlastnost konfigurace, pokud byla dříve nastavena, a přidat správné závislosti.
spring:
datasource:
url: ${FABRIC_SQL_CONNECTIONSTRING}
Nainstalujte závislosti.
python -m pip install pyodbc
Načtěte databázi SQL v připojovacím řetězci Microsoft Fabric z proměnné prostředí přidané konektorem služby. Pokud používáte Azure Container Apps jako výpočetní službu nebo připojovací řetězec v fragmentu kódu nefunguje, přečtěte si článek o migraci aplikace Python, která používá bez hesel připojení ke službě Azure SQL Database pro připojení k databázi SQL v Microsoft Fabric pomocí přihlašovacích údajů bez hesel.
Authentication=ActiveDirectoryMSI; je vyžadován v připojovacím řetězci při připojování pomocí spravovaných identit.
UID=<msiClientId> je také vyžadován v připojovacím řetězci při připojování pomocí spravované identity přiřazené uživatelem.
import os
import pyodbc, struct
from azure.identity import DefaultAzureCredential
connStr = os.getenv('FABRIC_SQL_CONNECTIONSTRING')
# System-assigned managed identity connection string format
# `Driver={ODBC Driver 17 for SQL Server};Server=tcp:<Fabric-SQL-Identifier>.msit-database.fabric.microsoft.com,1433;Database=<SQL-DB-name>-<Fabric-DB-Identifier>;Authentication=ActiveDirectoryMSI;`
# User-assigned managed identity connection string format
# `Driver={ODBC Driver 17 for SQL Server};Server=tcp:<Fabric-SQL-Identifier>.msit-database.fabric.microsoft.com,1433;Database=<SQL-DB-name>-<Fabric-DB-Identifier>;UID=<msiClientId>;Authentication=ActiveDirectoryMSI;`
conn = pyodbc.connect(connString)
- Nainstalujte závislosti.
go mod init <YourProjectName>
go mod tidy
- Načtěte databázi SQL v připojovacím řetězci Microsoft Fabric z proměnné prostředí přidané konektorem služby.
package main
import (
"github.com/microsoft/go-mssqldb/azuread"
"database/sql"
"context"
"log"
"fmt"
"os"
)
var db *sql.DB
var connectionString = os.Getenv("FABRIC_SQL_CONNECTIONSTRING")
func main() {
var err error
// Create connection pool
db, err = sql.Open(azuread.DriverName, connectionString)
if err != nil {
log.Fatal("Error creating connection pool: ", err.Error())
}
ctx := context.Background()
err = db.PingContext(ctx)
if err != nil {
log.Fatal(err.Error())
}
fmt.Printf("Connected!\n")
}
Další informace najdete v tématu Použití jazyka Go k dotazování databáze ve službě Azure SQL Database.
Další informace najdete v tématu Připojení k databázi SQL v Microsoft Fabric.
Sdílení přístupu k databázi SQL v systému Fabric
Dokončete vytváření připojení služby v Cloud Shellu nebo v místním Azure CLI.
Po vytvoření připojení otevřete prostředek výpočetní služby na webu Azure Portal, otevřete nabídku Konektor služby a vyhledejte databázi SQL v připojení služby Fabric. Výběrem databáze SQL přejděte na portál Fabric.
Na portálu Fabric vyhledejte kartu Zabezpečení a vyberte Spravovat zabezpečení SQL.
Vyberte roli db_ddladmin, poté spravovat přístup.
Měli byste vidět název spravované identity přiřazené systémem a/nebo jakékoli spravované identity přiřazené uživatelem se služebním připojením k této databázi SQL v systému Fabric. Vyberte Sdílet databázi. Pokud možnost Sdílet databázi nevidíte, nemusíte pokračovat ve zbývajících krocích.
Zadejte a vyberte název nově vytvořené spravované identity přiřazené systémem nebo všechny spravované identity přiřazené uživatelem, které se zobrazí v podokně Správa přístupu . Podle potřeby přidejte jakékoli další identity. Zaškrtněte políčko Číst veškerá data pomocí databáze SQL a pak vyberte Povolit.
Nyní jste připraveni používat nové připojení ke SQL databázi v systému Fabric.
Další krok
Další informace o konektoru Service Connector najdete v následujícím článku.