2

.NET アプリNodeJS アプリによってアクセスされる Azure にSQL Server データベースがあります。機密情報を含むテーブル列にAlwaysEncryptedを適用しました。Azure Key Vaultを使用して暗号化キーを格納しました。

NodeJS アプリで (復号化された) データを表示できるかどうか疑問に思っていましたか?

これを回避するには、.NET アプリの API エンドポイントを介してクエリするデータを公開し、NodeJS アプリからそのエンドポイントを呼び出しますが、より洗練された方法を探しています。

4

1 に答える 1

2

私の理解に基づいて、あなたが言ったよりエレガントな方法は、JavaScriptを直接使用して、Always Encryptedを適用した列のデータを復号化することだと思います。

直接実行するためのコードが見つかりません。ただし、試すことができる方法は2つあると思います。

  1. 公式ドキュメントUsing Always Encrypted with the JDBC Driverによると、 node パッケージを使用node-javaして、Java を使用して暗号化された列データをクエリする API をブリッジすることができます。以下のコンテンツをノードしてください。

Always Encrypted は、SQL Server 2016 (プレビュー) を使用する SQL Server のMicrosoft JDBC Driver 6.0 (プレビュー)以降でのみサポートされます。

  1. Always Encrypted CryptographySQL Server および Azure SQL Database の Always Encrypted 機能で使用される暗号化マテリアルを取得するための暗号化アルゴリズムとメカニズムについて説明したドキュメントがあります。、 などcrypto-jsのノード パッケージを使用して、データ暗号化アルゴリズムの逆のプロセスを実行することで、暗号化されたデータの復号化を試みることができるようです。bcrypt

それが役に立てば幸い。

于 2016-05-06T09:29:13.953 に答える