MS Excelは、さまざまなスプレッドシート操作操作を実行できる強力なツールです。データの整理、計算の適用、グラフの生成、VBAモジュールを使用したカスタムロジックの定義などを行うことができます。 MS Excelが提供する重要な機能は、Excelファイルの暗号化と復号化です。これに従って、この記事では、Node.jsアプリケーションでExcelファイルを暗号化/復号化およびパスワード保護する方法について説明します。
Excelファイルを暗号化および復号化するNode.jsAPI
Excelファイルの暗号化と復号化には、Java経由のNode.js用のAspose.Cellsを使用します。これは機能豊富なAPIであり、数行のコードでワークブックを暗号化および復号化できます。さらに、Excelファイルをシームレスにパスワードで保護できます。 APIをダウンロードするか、次のnpmコマンドを使用してインストールできます。
> npm install aspose.cells
Node.jsでExcelXLSXまたはXLSファイルを暗号化する
Javaを介したNode.jsのAspose.Cellsは、Excel2003ファイルに次の暗号化タイプを提供します。
- XOR
- 互換性(Office 97/2000互換)
- 強化された暗号化プロバイダーV1
- 強力な暗号化プロバイダー
一方、SHAおよびAES暗号化技術は、2007/2010ワークブックに使用されます。以下は、Node.jsでExcelファイルを暗号化する手順です。
- Workbookクラスを使用してExcelファイルをロードします。
- Workbook.getSettings().setPassword(string)メソッドを使用してパスワードを設定します。
- Workbook.setEncryptionOptions(EncryptionType, int)メソッドを使用してExcelファイルを暗号化します。
- Workbook.save(string)メソッドを使用して暗号化されたブックを保存します。
次のコードサンプルは、Node.jsでExcelXLSXファイルを暗号化する方法を示しています。
// Excelファイルを開きます
var workbook = new aspose.cells.Workbook("Excel.xlsx");
// ファイルをパスワードで保護する
workbook.getSettings().setPassword("1234");
// 強力な暗号化タイプを指定する(RC4、Microsoftの強力な暗号化プロバイダー)
workbook.setEncryptionOptions(aspose.cells.EncryptionType.STRONG_CRYPTOGRAPHIC_PROVIDER, 128);
// ファイルを保存します
workbook.save("encrypted.xlsx");
Node.jsでExcelファイルを復号化する
暗号化されたExcelファイルを復号化するには、そのパスワードを指定する必要があります。以下は、Node.jsでExcelファイルを復号化する手順です。
- LoadOptionsクラスのインスタンスを作成します。
- LoadOptions.setPassword(string)メソッドを使用してパスワードを指定します。
- Workbookクラスのインスタンスを作成し、ファイルのパスとLoadOptionsオブジェクトをコンストラクターに渡します。
- Workbook.getSettings().setPassword(string)メソッドを使用して、パスワードをnullに設定します。
- 完了したら、Workbook.save(string)メソッドを使用して復号化されたブックを保存します。
次のコードサンプルは、Node.jsでパスワードで保護されたExcelファイルを復号化する方法を示しています。
// 読み込みオプションを初期化します
var loadOptions = new aspose.cells.LoadOptions(LoadFormat.XLSX);
// 元のパスワードを設定する
loadOptions.setPassword("1234");
// Excelファイルのパスを使用してWorkbookオブジェクトをインスタンス化します
var workbook = new aspose.cells.Workbook("encrypted-workbook.xlsx", loadOptions);
// パスワードをnullに設定
workbook.getSettings().setPassword(null);
// ファイルを保存します
workbook.save("decrypted.xlsx");
無料のAPIライセンスを取得する
評価の制限なしでAPIを試してみたい場合は、無料の一時ライセンスを取得できます。
結論
この記事では、Node.jsアプリケーションでExcelファイルを暗号化または復号化する方法を学びました。提供されたコードをNode.jsアプリケーションに統合するだけで、XLSX/XLSファイルを暗号化/復号化できます。 Node.jsスプレッドシート操作APIについて詳しく知りたい場合は、ドキュメントにアクセスしてください。また、フォーラムから質問することもできます。