none
Zertifikate und dacpac RRS feed

  • Frage

  • Hallo,

    ich habe den datenbankübergreifenden Zugriff von Prozeduren anhand des Blogeintrags Zertifikate für die Ausführung von Prozeduren verwenden von Uwe Ricken realisiert.

    Das funktioniert wunderbar. Das notwendige Zertifikat (cert_PersonalList) ist in der master-Datenbank installiert und der notwenige User login_PersonalList ist angelegt.
    Nun wollte ich von einer solchen Datenbank eine DACPAC-Datei erstellen, um diese in den SSDT weiter zu verwenden. Leider scheitert dies mit der Fehlermeldung:

    Error SQL71501: "Anmelden: [login_PersonalList]" enthält einen nicht aufgelösten Verweis auf "Zertifikat [cert_PersonalList]".

    Was ist der Grund für diese Fehlermeldung und wie könnte ich dies beheben?

    Danke Maik

    Montag, 8. Mai 2017 06:15

Antworten

  • Hallo Maik

    In der Beschreibung der Zertifikatserstellung wird der folgende Hinweis angezeigt

    CREATE CERTIFICATE (Transact-SQL)


    <token style="box-sizing:border-box;">DIESES THEMA GILT FÜR:jaSQL Server (ab 2008)jaAzure SQL-DatenbankjaAzure SQL Data Warehouse jaParallel Data Warehouse</token>

    Fügt einer Datenbank in SQL Server ein Zertifikat hinzu.

    Diese Funktion ist inkompatibel mit Datenbankexport über Data-Tier Application Framework (DACFx). Sie müssen alle Zertifikate vor dem Export löschen.

    Ich vermute mal dass dies der Grund für den Fehler ist.


    Benjamin Hoch
    MCSE: Data Platform & Data Management and Analytics
    MCSA: SQL Server 2012/2014 & 2016 DB Administration
    MCSA: Windows Server 2012


    Dienstag, 9. Mai 2017 06:43

Alle Antworten

  • Hallo Maik,

    Hast Du versucht, einen Datenbankverweis zu der Master-Datenbank hinzuzufügen, wie im folgenden Thread beschrieben wird:
    unresolved reference to object [INFORMATION_SCHEMA].[TABLES]

    Gruß,

    Ivan Dragov


    Bitte haben Sie Verständnis dafür, dass im Rahmen dieses Forums, welches auf dem Community-Prinzip „IT-Pros helfen IT-Pros“ beruht, kein technischer Support geleistet werden kann oder sonst welche garantierten Maßnahmen seitens Microsoft zugesichert werden können.

    Dienstag, 9. Mai 2017 06:05
    Moderator
  • Hallo Maik

    In der Beschreibung der Zertifikatserstellung wird der folgende Hinweis angezeigt

    CREATE CERTIFICATE (Transact-SQL)


    <token style="box-sizing:border-box;">DIESES THEMA GILT FÜR:jaSQL Server (ab 2008)jaAzure SQL-DatenbankjaAzure SQL Data Warehouse jaParallel Data Warehouse</token>

    Fügt einer Datenbank in SQL Server ein Zertifikat hinzu.

    Diese Funktion ist inkompatibel mit Datenbankexport über Data-Tier Application Framework (DACFx). Sie müssen alle Zertifikate vor dem Export löschen.

    Ich vermute mal dass dies der Grund für den Fehler ist.


    Benjamin Hoch
    MCSE: Data Platform & Data Management and Analytics
    MCSA: SQL Server 2012/2014 & 2016 DB Administration
    MCSA: Windows Server 2012


    Dienstag, 9. Mai 2017 06:43
  • Hallo Ivan,

    bis zum Setzen des Verweises komme ich gar nicht. Mein Problem setz bereits viel füher an.
    Ich möchte aus meiner Datenbank eine DACPAC-Datei erzeugen und diese als Grundlage für ein neues Projekt mit den SSDT nutzen. Beim Erstellen der Datei kommt es zu besagtem Fehler.

    Das geschieht im übrigen auch, wenn ich versuche, via Schemavergleich die Objekte aus der Datenbank in ein neues Projekt zu importieren. Die Objekte werden importiert, der Verweis auf die Masterdatenbank ist gesetzt.

    Nun erhalte ich für die Anweisung

    CREATE LOGIN [login_PersonalList]
        FROM CERTIFICATE [cert_PersonalList];

    die oben beschriebene Fehlermeldung. Es muss irgendetwas mit dem Zertifikat zu tun haben.

    Gruß Maik

    Dienstag, 9. Mai 2017 07:57
  • Hallo Benjamin,

    vielen Dank für den Hinweis. Es sieht wirklich so aus, als ob ich mich nun entscheiden muss, ob ich den datenbankübergreifenden Zugriff weiterhin über Zertifikate machen will.

    Einerseits funktioniert dies sehr gut, auf der anderen Seite möchte ich aber auch gern in Zukunft die Datenbankentwicklung unter SSDT mit allen damit verbundenen Vorteilen (Quellcodeverwaltung, Snapshots...) machen.

    Mal sehen.

    Gruß Maik

    Dienstag, 9. Mai 2017 08:23