Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Wie können wir den Text der verschlüsselten gespeicherten Prozedur in SSMS anzeigen?

Falls eine gespeicherte Prozedur mit der Option ENCRYPTED erstellt wird, speichert SQL Server den Text mit der Definition des Objekts intern in einem verschleierten Format

Die eigentliche Definition eines Objekts wird in der Systemtabelle sys.sysobjvalues ​​gespeichert, auf die nicht direkt zugegriffen werden kann. Durch die Verbindung mit SQL Server über die Dedicated Administrator Connection (DAC) können Sie die imageval-Spalte auswählen, in der die Informationen gespeichert werden

Wenn es Ihnen von Ihrem Unternehmen oder Ihrem Kunden nicht gestattet ist, Tools von Drittanbietern zu verwenden, lesen Sie diesen Beitrag zum Entschlüsseln des verschlüsselten Objekts:

http://www.mssqltips.com/sqlservertip/2964/encrypting-and-decrypting-sql-server-stored-procedures-views-and-userdefined-functions/

Am einfachsten ist es jedoch, die Tools von Drittanbietern

zu verwenden

Eines davon ist ApexSQL Complete, ein KOSTENLOSES SSMS- und VS-Add-In

In ApexSQL Complete werden verschlüsselte Objekte wie alle anderen SQL Server-Objekte behandelt, mit dem Zusatz, dass ihr DDL-Skript angezeigt wird, selbst wenn es mit Verschlüsselte Objekte entschlüsseln verschlüsselt wurde Möglichkeit

Das Skript eines verschlüsselten Objekts wird im Inline-Objektdetails-Dialog angezeigt:

Haftungsausschluss:Ich arbeite für ApexSQL als Supporttechniker