sql >> Databáze >  >> RDS >> Sqlserver

Jak můžeme zobrazit tělo šifrované uložené procedury v SSMS?

V případě, že je uložená procedura vytvořena s možností ENCRYPTED, SQL Server interně ukládá text s definicí objektu v obfuskovaném formátu

Vlastní definice objektu je uložena v systémové tabulce sys.sysobjvalues, která není přímo přístupná. Připojením k serveru SQL Server pomocí připojení Dedicated Administrator Connection (DAC) můžete vybrat sloupec imageval, ve kterém jsou informace uloženy

Pokud vám vaše společnost nebo váš klient nedovolí používat nástroje třetích stran, přečtěte si tento příspěvek o tom, jak dešifrovat šifrovaný objekt:

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

Nejjednodušší způsob je však použít nástroje třetích stran

Jedním z nich je ApexSQL Complete, bezplatný doplněk SSMS a VS

V ApexSQL Complete se zašifrované objekty zpracovávají jako jakýkoli jiný objekt SQL Server, navíc je zobrazen jejich skript DDL, i když je zašifrován pomocí Dešifrování zašifrovaných objektů možnost

Skript zašifrovaného objektu se zobrazí v dialogovém okně podrobností o objektu:

Odmítnutí odpovědnosti:Pracuji pro ApexSQL jako technik podpory



  1. SQL Server - Nejlepší způsob, jak získat identitu vloženého řádku?

  2. MySQL v cloudu – Online migrace z Amazon RDS na váš vlastní server:Část 2

  3. Chyba MySQL 1064 syntaxe, ale vše se zdá být v pořádku

  4. Technické srovnání:Microsoft Access 2016 vs SQL Server 2016