2016-05-06 47 views
2

我在Azure中一個SQL Server數據庫由一個.NET應用程序,並通過應用的NodeJS訪問。我只是將AlwaysEncrypted應用於包含敏感信息的表列。我使用Azure密鑰庫來存儲加密密鑰。在NodeJS應用程序中顯示來自AlwaysEncrypted列的數據?

我想知道是否可以在我的NodeJS應用程序中顯示(解密)數據?

解決此問題的方法是通過我的.NET應用程序中的API端點公開要查詢的數據,然後從我的NodeJS應用程序中調用該端點,但我正在尋找更優雅的方法做它

回答

1

基於我的理解,我認爲您所說的更優雅的方式是直接使用JavaScript解密應用於始終加密的列的數據。

我找不到任何代碼直接進行。不過,我認爲有兩種方法可以嘗試。

  1. 根據官方文檔Using Always Encrypted with the JDBC Driver,你可以嘗試使用節點包node-java彌合使用Java來查詢加密列數據的API。請節點下面的內容。

始終加密由微軟JDBC驅動程序6.0(預覽版)或更高版本僅支持SQL Server和SQL服務器2016(預覽)。

  • 有一個文件Always Encrypted Cryptography描述加密算法和機制來導出在SQL Server和天青SQL數據庫始終加密特徵使用的密碼材料。看來你可以嘗試解密加密的數據通過與一些節點程序包進行數據加密算法的逆過程就像crypto-jsbcrypt
  • 希望它能幫助。

    +0

    感謝您的回答,我暫時選擇了不那麼優雅的解決方案,因爲逆向工程技術在時間上不夠高效(投入研究部分的時間)。但是,當我有機會時,我會試試這個。乾杯 – Toonsylvania

    相關問題