
使用 MS Excel 文件来存储、表示和共享业务数据是一项例行任务。 Excel 工作簿还可能包含机密信息,在组织外部共享时可能会成为安全风险。幸运的是,有一项功能可以使用密码锁定 Excel 电子表格,这样第三方就无法打开文件并访问数据。但是,我们可以使用密码保护服务以编程方式自动化整个过程。此 GroupDocs.Merger Cloud SDK for Node.js 提供了有效使用密码保护 Excel 文件的功能。
本博文将涵盖以下几点:
安装密码保护服务
该密码保护服务的安装过程非常简单。由于我们将在基于 Node.js 的项目中设置此 API,并且 GroupDocs.Merger Cloud SDK for Node.js 可在 NPM 包注册表中找到。
因此,您可以运行以下命令来安装此Node.js SDK来实现文件锁定功能:
npm install groupdocs-merger-cloud
如何获取 API 凭证以使用 GroupDocs.Merger Cloud SDK?
安装成功后,下一步是按照以下步骤获取客户端 ID 和客户端密钥:
- 导航至仪表板并登录。
- 创建新的应用程序和存储。
- 点击“保存”按钮,您可以通过导航到新创建的应用程序来获取 API 凭据。
整个流程如下图所示:

在 Node.js 中以编程方式保护 Excel 文件?
我们已准备好使用 GroupDocs.Merger Cloud SDK for Node.js 实现向 Excel 文件添加密码的功能。此外,我们不仅会编写对电子表格进行密码保护的步骤,还会编写将密码无缝添加到 Excel 工作簿的代码片段。
以下是使用此密码保护服务的步骤:
- 在您的应用程序中包含 groupdocs-merger-cloud 模块。
- 使用 Client ID 和 Client Secret 初始化配置对象。
- 使用配置对象初始化 FileApi 类的实例。
- 从光盘中打开 IOStream 中的文件。
- 调用fs.readFile方法读取文件。
- 初始化UploadFileRequest类的对象以发出文件上传请求。
- 通过调用 uploadFile 方法上传文件。
- 使用 API 凭据实例化 SecurityApi。
- 通过设置 filePath、password、outputPath 等值来准备一个 Options 类的对象。
- 调用 addPassword 方法对 Excel 文件进行密码保护,该文件将在云端保存结果文件。
- 通过初始化 DownloadFileRequest 类的对象来创建下载结果文件的请求。
- 通过调用 downloadFile 方法下载文件。
将以下代码复制并粘贴到主文件中,然后运行项目以通过编程方式锁定 Excel 电子表格:
您可以使用要受密码保护的源 Excel 文件。
// 在您的应用程序中包含 groupdocs-merger-cloud 模块。
const groupdocs_merger_cloud = require("groupdocs-merger-cloud");
const fs = require("fs");
clientId = "xxxxxxxxxxxxxxxxx";
clientSecret = "xxxxxxxxxxxxxxxxx";
myStorage = "test";
// 使用 Client ID 和 clientSecret 初始化 Configuration 对象。
const configuration = new groupdocs_merger_cloud.Configuration(clientId, clientSecret);
configuration.apiBaseUrl = "https://api.groupdocs.cloud";
// 使用配置对象初始化 FileApi 类的实例。
var fileApi = new groupdocs_merger_cloud.FileApi(configuration);
// 从光盘中打开 IOStream 中的文件。
var resourcesFolder = '/sample.xlsx';
// 调用fs.readFile方法读取文件。
fs.readFile(resourcesFolder, (err, fileStream) => {
// 初始化UploadFileRequest类的对象以发出文件上传请求。
var request = new groupdocs_merger_cloud.UploadFileRequest("sample.xlsx", fileStream, myStorage);
// 通过调用 uploadFile 方法上传文件。
fileApi.uploadFile(request).then(()=>{
// 使用 API 凭据实例化 SecurityApi。
const securityApi = groupdocs_merger_cloud.SecurityApi.fromKeys(clientId, clientSecret);
// 通过设置 filePath、password、outputPath 等值来准备一个 Options 类的对象。
let options = new groupdocs_merger_cloud.Options();
options.fileInfo = new groupdocs_merger_cloud.FileInfo();
options.fileInfo.filePath = "sample.xlsx";
options.fileInfo.password = "qwerty";
options.outputPath = "Output/sample-protected.xlsx";
// 调用 addPassword 方法对 Excel 文件进行密码保护并保存结果文件。
securityApi.addPassword(new groupdocs_merger_cloud.AddPasswordRequest(options)).then((data)=>{
// 通过初始化 DownloadFileRequest 类的对象来创建下载结果文件的请求。
let request = new groupdocs_merger_cloud.DownloadFileRequest("/Output/sample-protected.xlsx", myStorage);
// 通过调用 downloadFile 方法下载文件。
fileApi.downloadFile(request).then(function(response){
fs.writeFile("/sample-protected.xlsx", response, "binary", function (err) { })
})
});
});
});
成功运行后,您将看到文件sample-protected.xlsx下载到您的计算机上。打开此文件后,您将看到下图所示的输出:

在线为 Excel 文件添加密码
您可以使用我们的在线工具立即锁定Excel电子表格。此外,它是免费的,您无需任何订阅或创建帐户即可使用它。

结论
这篇博文到此结束。我们学习了如何使用 GroupDocs.Merger Cloud SDK for Node.js 对 Excel 文件进行密码保护。此外,我们还完成了该密码保护服务的安装和设置过程。如果您希望以编程方式自动执行锁定 Excel 电子表格的过程,本指南将为您提供帮助。此外,您可以直接在浏览器中与我们的API进行交互,并且您可以在GitHub上找到Node.js SDK的源代码。
此外,我们建议您遵循我们的入门指南。
最后,groupdocs.cloud 一直在撰写新文章。所以,请继续关注最新更新。
问一个问题
您可以在我们的论坛上告诉我们您的问题或疑问。
常见问题 – 常见问题解答
如何使用密码保护Excel文件?
您可以使用 GroupDocs.Merger Cloud SDK for Node.js 自动执行向 Excel 工作簿添加密码的过程。另外,请点击此链接了解详细答案。
如何使用Python对Excel文件进行密码保护?
GroupDocs.Merger Cloud SDK for Python 可让您以编程方式对 Excel 文件进行密码保护。请访问文档了解更多详细信息。