2016-10-27 6 views
0

Ich verwende SQL 2016 und wir konvertieren über eine Reihe von SSIS-Paketen (seit 2005). In unserer alten Architektur hatten wir Entwicklung und Produktion. Wir bewegen uns jetzt zur Quellcodeverwaltung in VSO und stellen unsere Bereitstellungen bereit. Wir haben lokale Entwicklung auf Entwicklermaschinen, dann stellen wir auf Dev, dann auf QA, dann auf Staging, dann auf Produktion.SSIS Verbindungsmanager - SQL Auth in Entwicklung, Integriert in Produktion

Wir haben herausgefunden, wie SSIS-Umgebungsvariablen (AWESOME!) Verwendet werden, und wir können die Dateien auf lokalen Dev-Maschinen innerhalb von Visual Studio mit SDT ausführen. Dann stellen wir als Projekt eine ispac-Datei bereit, die wir auf den Dev-Server kopieren und in unseren SSIS-Katalog in SSMS importieren. Dann versuchen wir in SSMS die Variablen für jede Umgebung zu ändern.

Das Problem ist die Datenverbindung. Ich habe die Verbindungszeichenfolge und das Authentifizierungskennwort als Parameter an eine gemeinsame Verbindung übergeben. Daher liest die Verbindung diese Werte bei der Ausführung aus dem Projektparameter. Dann würden wir diese Werte für jede Umgebung ändern. Es stellt sich heraus, dass auf dem Server die integrierte Sicherheit ausgeführt werden muss. Da wir Remote testen, können wir die integrierte Sicherheit auf unseren lokalen Computern nicht verwenden. Im Grunde genommen ist der lokale Entwickler die SQL-Authentifizierung, aber Dev-, QA-, Staging- und Produktionsumgebungen werden alle auf Servern mit integrierter Sicherheit getestet.

Ich kann nicht scheinen, dass dies richtig funktioniert. Ich habe zwei Projektparameter DB_ConnectionString und DB_Password. Ich habe auch eine gemeinsame Verbindung (OLEDB SQL), die im Paket parametrisiert ist. Wir verwenden die Projektparameter für die Verbindung, so dass bei der Ausführung die Projektparameter verwendet werden, um die Zeichenfolge und das Passwort zu verbinden.

Wenn ich post um zu leben, brauche ich Integriert. Also habe ich versucht, eine integrierte Sicherheitsverbindungszeichenfolge in das Umgebungskennwort von DB_ConnectionString zu setzen, und dann erfordert es ein Passwort. Aber das funktioniert nicht richtig. Ich erhalte einen Verbindungsfehler.

SSIS Fehlercode DTS_OLEDBERROR „Ungültige Berechtigungsangabe“

Antwort

0

Wenn Sie Parameter verwenden vermeiden können Sie meiner Meinung nach besser dran. Beim Veröffentlichen im Katalog können Sie Ihre Verbindungszeichenfolgen basierend auf Ihrer Umgebung festlegen. Auf diese Weise können Sie sql auth auf Entwicklungsmaschinen und integrierte Auth haben, wenn Sie in einer Ihrer Serverumgebungen laufen.

Verwandte Themen