ADO.NET-Verbindungs-Manager

Anwendungsbereich: JaSQL Server (alle unterstützten Versionen) ja SSIS-Integrationslaufzeit in Azure Data Factory

Ein ADO.NET -Verbindungs-Manager ermöglicht einem Paket den Zugriff auf Datenquellen mithilfe eines .NET-Anbieters. In der Regel verwenden Sie diesen Verbindungs-Manager für den Zugriff auf Datenquellen wie Microsoft SQL Server. Sie können darüber hinaus auch auf Datenquellen zugreifen, die durch OLE DB und XML in benutzerdefinierten Tasks verfügbar gemacht werden, die mit einer Programmiersprache wie C# in verwaltetem Code geschrieben sind.

Wenn Sie einem Paket einen ADO.NET-Verbindungs-Manager hinzufügen, erstellt SQL Server Integration Services einen Verbindungs-Manager, der zur Runtime als ADO.NET-Verbindung aufgelöst wird. Es werden die Eigenschaften des Verbindungs-Managers festgelegt und der Verbindungs-Manager wird der Sammlung Verbindungen im Paket hinzugefügt.

Die ConnectionManagerType-Eigenschaft des Verbindungs-Managers ist auf ADO.NET festgelegt. Der Wert von ConnectionManagerType ist qualifiziert, um den Namen des .NET-Anbieters einzuschließen, der vom Verbindungs-Manager verwendet wird.

Problembehandlung für den ADO.NET-Verbindungs-Manager

Sie können die vom ADO.NET -Verbindungs-Manager an externe Datenanbieter gerichteten Aufrufe protokollieren. Anschließend können Sie Probleme bei Verbindungen behandeln, die vom ADO.NET-Verbindungs-Manager mit externen Datenquellen hergestellt werden. Aktivieren Sie zum Protokollieren der vom ADO.NET-Verbindungs-Manager an externe Datenprovider gerichteten Aufrufe die Paketprotokollierung, und wählen Sie das Diagnostic-Ereignis auf Paketebene aus. Weitere Informationen finden Sie unter Behandeln von Problemen mit Paketausführungstools.

Daten bestimmter SQL Server-Datumsdatentypen generieren beim Lesen durch einen ADO.NET-Verbindungs-Manager die in der folgenden Tabelle dargestellten Ergebnisse.

SQL Server-Datentyp Ergebnis
time, datetimeoffset Das Paket erzeugt einen Fehler, sofern das Paket keine parametrisierten SQL-Befehle verwendet. Um parametrisierte SQL-Befehle zu verwenden, verwenden Sie den Task SQL ausführen im Paket. Weitere Informationen finden Sie unter SQL ausführen (Task) und Parameter und Rückgabecodes im Task „SQL ausführen“.
datetime2 Der ADO.NET -Verbindungs-Manager schneidet den Millisekundenwert ab.

Hinweis

Weitere Informationen zu SQL Server-Datentypen sowie deren Zuordnung zu Integration Services-Datentypen finden Sie unter Datentypen (Transact-SQL) und SQL Server Integration Services-Datentypen.

Konfiguration des ADO.NET-Verbindungs-Managers

Sie können Eigenschaften mit dem SSIS-Designer oder programmgesteuert festlegen.

  • Stellen Sie eine Verbindungszeichenfolge bereit, die die Anforderungen des ausgewählten .NET-Anbieters erfüllt.

  • Schließen Sie in Abhängigkeit vom Anbieter den Namen der Datenquelle ein, mit der eine Verbindung hergestellt werden soll.

  • Stellen Sie entsprechende Sicherheitsanmeldeinformationen für den ausgewählten Anbieter bereit.

  • Geben Sie an, ob die im Verbindungs-Manager erstellte Verbindung zur Runtime beibehalten wird.

Viele der Konfigurationsoptionen des ADO.NET -Verbindungs-Managers hängen vom .NET-Anbieter ab, der vom Verbindungs-Manager verwendet wird.

Weitere Informationen zu den Eigenschaften, die Sie im SSIS-Designer festlegen können, finden Sie unter Konfigurieren des ADO.NET-Verbindungs-Managers.

Weitere Informationen zum programmgesteuerten Konfigurieren eines Verbindungs-Managers finden Sie unter ConnectionManager und Programmgesteuertes Hinzufügen von Verbindungenfestgelegt.

Konfigurieren des ADO.NET-Verbindungs-Managers

Verwenden Sie das Dialogfeld ADO.NET-Verbindungs-Manager konfigurieren, um eine Verbindung zu einer Datenquelle hinzuzufügen, auf die mithilfe eines .NET Framework-Datenanbieter zugegriffen werden kann. Ein solcher Anbieter ist beispielsweise der SqlClient-Anbieter. Der Verbindungs-Manager kann eine vorhandene Verbindung verwenden, oder Sie können eine neue erstellen.

Weitere Informationen zum ADO.NET-Verbindungs-Manager finden Sie unter ADO.NET Connection Manager.

Tastatur

Datenverbindungen
Wählen Sie in der Liste eine vorhandene ADO.NET.Datenverbindung aus.

Datenverbindungseigenschaften
Zeigt Eigenschaften und Werte für die ausgewählte ADO.NET-Datenverbindung an.

Neu
Erstellen Sie mithilfe des Dialogfelds Verbindungs-Manager eine ADO.NET-Datenverbindung.

Löschen
Wählen Sie eine Verbindung aus, und löschen Sie sie mithilfe von Löschen.

Verwaltete Identitäten für die Authentifizierung von Azure-Ressourcen

Beim Ausführen von SSIS-Paketen in Azure-SSIS Integration Runtime (IR) in Azure Data Factory (ADF) können Sie die AAD-Authentifizierung (Azure Active Directory) mit der angegebenen systemseitig/benutzerseitig zugewiesenen verwalteten Identität für Ihre ADF verwenden, um auf den Azure SQL Database-Server bzw. die verwaltete Azure SQL-Datenbank-Instanz zuzugreifen. Ihre Azure-SSIS IR kann mithilfe dieser verwalteten Identität auf Daten in Ihrer Datenbank zugreifen und Daten daraus oder dort hinein kopieren.

Hinweis

Wenn Sie die AAD-Authentifizierung zum Zugriff auf den Azure SQL Database-Server bzw. die verwaltete Azure SQL-Datenbank-Instanz verwenden, können Probleme bei der Paketausführung oder unerwartete Behavior Changes auftreten. Weitere Informationen finden Sie unter Features und Einschränkungen von AAD.

Führen Sie die folgenden Schritte aus, um die AAD-Authentifizierung mit der angegebenen systemseitig/benutzerseitig zugewiesenen verwalteten Identität für Ihre ADF für den Zugriff auf den Azure SQL Database-Server zu verwenden:

  1. Bereitstellen eines AAD-Administrators für Ihren Azure SQL-Datenbank-Server im Azure-Portal, sofern dies noch nicht geschehen ist. Der AAD-Administrator kann ein AAD-Benutzer oder eine Gruppe sein. Wenn Sie der Gruppe mit der angegebenen systemseitig/benutzerseitig zugewiesenen verwalteten Identität für Ihre ADF eine Administratorrolle zuweisen, überspringen Sie Schritt 2 bis 3. Der Administrator hat Vollzugriff auf Ihren Azure SQL-Datenbank-Server.

  2. Erstellen Sie einen Benutzer einer eigenständigen Datenbank, um die angegebene systemseitig/benutzerseitig zugewiesene verwaltete Identität für Ihre ADF anzugeben. Stellen Sie eine Verbindung mit der Datenbank her, aus der bzw. in die Sie Daten mithilfe von SQL Server Management Studio (SSMS) mit einem AAD-Benutzer kopieren möchten, der mindestens über die Berechtigung ALTER ANY USER verfügt. Führen Sie folgende T-SQL-Anweisung aus:

    CREATE USER [your managed identity name] FROM EXTERNAL PROVIDER;
    

    Wenn Sie die vom System verwaltete Identität für Ihre ADF verwenden, sollte der Name Ihrer verwalteten Identität Ihr ADF-Name sein. Wenn Sie eine benutzerseitig zugewiesene verwaltete Identität für Ihre ADF verwenden, sollte der Name Ihrer verwalteten Identität der Name der angegebenen benutzerseitig zugewiesenen verwalteten Identität sein.

  3. Erteilen Sie der angegebenen systemseitig/benutzerseitig zugewiesenen verwalteten Identität für Ihre ADF die erforderlichen Berechtigungen wie normalerweise SQL-Benutzern. Informationen zu den entsprechenden Rollen finden Sie unter Rollen auf Datenbankebene. Führen Sie folgende T-SQL-Anweisung aus. Weitere Optionen finden Sie in diesem Artikel.

    EXEC sp_addrolemember [role name], [your managed identity name];
    

Führen Sie die folgenden Schritte aus, um die AAD-Authentifizierung mit der angegebenen systemseitig/benutzerseitig zugewiesenen verwalteten Identität für Ihre ADF für den Zugriff auf Azure SQL Managed Instance zu verwenden:

  1. Bereitstellen eines AAD-Administrators für Ihre Azure SQL Managed Instance im Azure-Portal, sofern dies noch nicht geschehen ist. Der AAD-Administrator kann ein AAD-Benutzer oder eine Gruppe sein. Wenn Sie der Gruppe mit der angegebenen systemseitig/benutzerseitig zugewiesenen verwalteten Identität für Ihre ADF eine Administratorrolle zuweisen, überspringen Sie Schritt 2 bis 4. Der Administrator hat Vollzugriff auf Ihre Azure SQL Managed Instance.

  2. Erstellen einer Anmeldung, die der angegebenen systemseitig/benutzerseitig zugewiesenen verwalteten Identität für Ihre ADF zugewiesen ist. Stellen Sie in SSMS über ein SQL Server-Konto (ein Sysadmin-Konto) eine Verbindung mit Azure SQL Managed Instance her. Führen Sie in der master-Datenbank folgende T-SQL-Anweisung aus:

    CREATE LOGIN [your managed identity name] FROM EXTERNAL PROVIDER;
    

    Wenn Sie die vom System verwaltete Identität für Ihre ADF verwenden, sollte der Name Ihrer verwalteten Identität Ihr ADF-Name sein. Wenn Sie eine benutzerseitig zugewiesene verwaltete Identität für Ihre ADF verwenden, sollte der Name Ihrer verwalteten Identität der Name der angegebenen benutzerseitig zugewiesenen verwalteten Identität sein.

  3. Erstellen eines Benutzers einer eigenständigen Datenbank, um die angegebene systemseitig/benutzerseitig zugewiesene verwaltete Identität für Ihre ADF anzugeben. Stellen Sie eine Verbindung mit der Datenbank her, aus der bzw. in die Sie Daten mit SSMS kopieren möchten, und führen Sie folgende T-SQL-Anweisung aus:

    CREATE USER [your managed identity name] FROM EXTERNAL PROVIDER;
    
  4. Erteilen Sie der angegebenen systemseitig/benutzerseitig zugewiesenen verwalteten Identität für Ihre ADF die erforderlichen Berechtigungen wie normalerweise SQL-Benutzern. Führen Sie folgende T-SQL-Anweisung aus. Weitere Optionen finden Sie in diesem Artikel.

    ALTER ROLE [role name e.g., db_owner] ADD MEMBER [your managed identity name];
    

Schließlich können Sie die AAD-Authentifizierung mit der angegebenen systemseitig/benutzerseitig zugewiesenen verwalteten Identität für Ihre ADF im ADO.NET-Verbindungs-Manager konfigurieren. Es gibt dafür folgende Optionen:

  • Konfigurieren zur Entwurfszeit. Klicken Sie im SSIS-Designer mit der rechten Maustaste auf den ADO.NET-Verbindungs-Manager, und wählen Sie Eigenschaften aus. Aktualisieren Sie die Eigenschaft ConnectUsingManagedIdentity auf True.

    Hinweis

    Die Verbindungs-Manager-Eigenschaft ConnectUsingManagedIdentity ist derzeit nicht wirksam (was darauf hinweist, dass die AAD-Authentifizierung mit der angegebenen systemseitig/benutzerseitig zugewiesenen verwalteten Identität für Ihre ADF nicht funktioniert), wenn Sie das Paket im SSIS-Designer oder auf SQL Server ausführen.

  • Konfigurieren zur Laufzeit. Wenn Sie Ihr Paket über SSMS oder Ausführen eines SSIS-Pakets mit der Aktivität „SSIS-Paket ausführen“ in Azure Data Factory ausführen, suchen Sie den ADO.NET-Verbindungs-Manager, und aktualisieren Sie dessen Eigenschaft ConnectUsingManagedIdentity auf True.

    Hinweis

    In Azure-SSIS IR werden alle anderen Authentifizierungsmethoden (z. B. integrierte Sicherheit und Kennwort), die im ADO.NET-Verbindungs-Manager vorkonfiguriert sind, überschrieben, wenn die AAD-Authentifizierung mit der angegebenen systemseitig/benutzerseitig verwalteten Identität für Ihre ADF verwendet wird.

Um die AAD-Authentifizierung mit der angegebenen systemseitig/benutzerseitig verwalteten Identität für Ihre ADF in Ihren vorhandenen Paketen zu konfigurieren, sollten Sie Ihr SSIS-Projekt am besten mindestens einmal mit dem aktuellen SSIS-Designer neu erstellen. Stellen Sie Ihr SSIS-Projekt erneut in Ihrer Azure-SSIS IR bereit, sodass die neue Eigenschaft ConnectUsingManagedIdentity des Verbindungs-Managers automatisch allen ADO.NET-Verbindungs-Managern in Ihrem Projekt hinzugefügt wird. Die alternative Methode ist, Überschreibungen von Eigenschaften direkt mit dem Eigenschaftenpfad \Package.Connections[{Name Ihres Verbindungs-Managers}].Properties[ConnectUsingManagedIdentity] zu verwenden, dem zur Runtime True zugewiesen wird.

Weitere Informationen: