安全文档 - 文档安全 API
PDF4me 安全文档 此功能可让您为 Word 文档添加密码保护和安全限制,并提供全面的安全控制和编辑限制。 API 该服务处理 Word 文件,并应用开放密码保护、文档编辑限制、只读保护、仅注释访问、表单域编辑和版本跟踪等功能。 API 通过以下方式接收 Word 文档内容 REST API 利用电话 Base64 采用加密技术实现安全传输。该解决方案可完全控制安全级别和密码要求,是机密文档、协作编辑和文档访问控制工作流程的理想之选。
验证您的身份 API 要求
要访问 PDF4me REST API每个请求都必须包含正确的身份验证凭据。身份验证可确保通信安全,并验证您作为授权用户的身份。 REST API。
主要特点
- 密码保护添加打开文档的密码要求
- 文档保护:通过各种保护类型限制编辑功能
- 只读安全将文档设置为只读,以防止未经授权的编辑
- 仅评论权限仅允许添加或修改评论
- 表单字段编辑限制编辑范围:仅编辑表单字段
- 修订跟踪仅允许跟踪更改和修订
- 联合安保:同时应用密码保护和编辑限制
- 灵活访问控制针对不同使用场景的不同安全级别
REST API 端点
这 PDF4me REST API 使用标准 HTTP 与资源交互的方法。所有文档安全操作均通过单个端点执行:
- 方法: POST
- 终点:
office/ApiV2Word/ApplySecurity
REST API 参数
安全文档的完整参数列表 REST API参数按类别组织,以便更好地理解和实施。
重要的: 标有星号 (*) 的参数为必填项。启用相应安全选项时,密码参数为必填项。
必需参数
| 范围 | 类型 | 描述 | 例子 |
|---|---|---|---|
| 文档* | Object | 文件参考。必须包含 姓名 (string):带有 .docx 扩展名的 Word 文件名 | { "Name": "document.docx" } |
| 文档内容* | Base64 | Word文档内容编码 Base64本文档已应用安全设置。必须是有效的 Word 文档(.docx、.doc 格式)。 | base64EncodedDocumentContent |
可选参数(安全设置)
| 范围 | 类型 | 描述 | 例子 |
|---|---|---|---|
| secureOnOpen | String | 启用密码保护以打开文档。 "yes" = 需要密码才能打开, "no" = 无需密码即可打开(默认)。需要 secureOnOpenPassword 启用时 | "yes" |
| secureOnOpenPassword | String | 打开文档需要密码。 secureOnOpen 是 "yes"密码强度应较高(8 个字符以上)。区分大小写。 | "SecurePass123!" |
| 安全选项 | Object | 文档保护选项。属性: 保护类型 (string: NoProtection, ReadOnly, AllowComments, AllowFormFields, AllowRevisions), 保护密码 (string当 protectionType 不为“NoProtection”时,此参数为必填项。 | { "protectionType": "ReadOnly", "protectionPassword": "EditPass456!" } |
保护类型选项
这 API 针对文档编辑限制提供不同类型的保护:
| 保护类型 | 描述 | 用例 |
|---|---|---|
| NoProtection | 无编辑限制(默认) | 可以自由编辑的文档 |
| ReadOnly | 文档无法编辑,只能查看。 | 最终文件、已发布的报告 |
| AllowComments | 只有评论可以添加/修改 | 文档审阅工作流程 |
| AllowFormFields | 只有表单字段可以编辑。 | 可填写表格、调查问卷 |
| AllowRevisions | 仅允许跟踪更改/修订 | 协作编辑与变更跟踪 |
安全配置
密码保护(打开密码)
- 目的打开文档需要密码
- 何时使用机密文件、敏感信息
- 要求:
secureOnOpenPassword必须在以下情况下提供secureOnOpen是"yes" - 力量建议至少包含 8 个字符,包括字母、数字和特殊字符。
文档保护(编辑限制)
- 目的限制编辑功能,但允许查看文档
- 何时使用协作编辑、表单分发、审阅工作流程
- 要求:
securityOptions.protectionPassword必须在以下情况下提供securityOptions.protectionType不是“无保护” - 灵活性可与开放式密码结合使用,实现双层安全保护
输出
这 PDF4me 安全文档 REST API 根据处理模式的不同,会返回不同的响应。 API 返回 Word 文档。 Base64-编码字符串 JSON 格式不是二进制数据。
- Success Response
- Asynchronous Processing
- Error Responses
- Response Format Details
同步处理(默认)
这 API 处理请求并返回:
状态码: 200 OK
内容类型: application/json
回复正文:
{
"document": "UEsDBBQABgAIAAAAIQDfpNJsWgEAACAFAAATAAgCW0NvbnRlbnRfVHlwZXNdLnhtbCCiBAIooAAC...",
"fileName": "document.docx",
"success": true,
"errorMessage": null
}
回复字段:
- 文档 (string应用了安全设置的 Word 文档,编码为 Base64 细绳
- 文件名 (string输出的 Word 文件名
- 成功 (boolean):指示请求是否成功
- 错误信息 (string (或 null):成功为假时的错误详情
使用方法:
- 提取
document来自该领域的 JSON 回复 (Base64) - 解码 Base64 获取二进制 Word 文档数据的字符串
- 根据需要保存或处理 Word 文件
- 根据安全设置,该文档在 Word 中打开时需要密码。
示例(JavaScript):
const response = await fetch(url, options);
const data = await response.json();
const wordBytes = atob(data.document); // Decode Base64
// Save or process wordBytes - document is password protected
异步处理
异步行为(202) Accepted 轮询(或轮询)由服务器配置控制,而不是由请求体参数控制。启用后, API 可能会返回 202 状态码,并进行轮询 URL 在 Location 标题。轮询 URL 和 GET 直到收到 200 个请求为止 OK 响应格式相同(文档、文件名、成功、错误消息)。
错误响应
这 API 退货标准 HTTP 错误代码及错误详情:
- 无效的请求参数
- 缺少必填字段
文档和姓名,文档内容) - 需要密码
secureOnOpen是“是”(secureOnOpenPassword) - 需要设置保护密码
安全选项当 protectionType 不为“NoProtection”时 - 无效的 Base64 编码
文档内容 - 无效或损坏的 Word 文档
- 无效的保护类型
- 弱密码(建议少于 8 个字符)
- 无效或缺失 API 钥匙
- API 钥匙未正确 Base64 编码 Authorization 标题
- 丢失的
授权方式:基本标题
- 服务器端处理错误
- Word文档处理失败
- 应用安全设置时出错
- 从字节加载文档时出错
错误响应格式:
{
"error": "Error message describing what went wrong"
}
回复格式详情
重要的: 这 API 总是返回 JSON绝不会直接处理二进制 Word 数据。
响应结构:
{
"document": "string", // Base64-encoded Word document with security applied
"fileName": "string", // Output Word filename
"success": true,
"errorMessage": "string or null"
}
内容类型标头:
- 成功:
application/json - Word 文档以嵌入方式呈现。 Base64 字符串内部 JSON 回复
为什么 Base64?
- JSON-二进制数据的安全编码
- 易于传输 HTTP
- 与所有编程语言兼容
- 可以直接嵌入 JSON 不回避问题
解码 Base64 转换为 Word 文档:
JavaScript/Node.js:
const base64 = response.document;
const binary = atob(base64); // Browser
// OR
const binary = Buffer.from(base64, 'base64'); // Node.js
Python:
import base64
word_bytes = base64.b64decode(response['document'])
with open('output.docx', 'wb') as f:
f.write(word_bytes)
C#:
byte[] wordBytes = Convert.FromBase64String(response.document);
File.WriteAllBytes("output.docx", wordBytes);
请求示例
标题
Content-Type: application/json
Authorization: Basic YOUR_BASE64_ENCODED_API_KEY
笔记:
- 获得你的 API 钥匙 PDF4me 仪表板
- 这 API 关键必须是 Base64 编码后以“Basic”为前缀 Authorization 标题
- 例如:如果你的 API 关键是
abc123将其编码为 Base64 并使用Authorization: Basic YWJjMTIz
有效载荷
基本示例(仅密码保护):
{
"document": { "Name": "document.docx" },
"docContent": "base64EncodedDocumentContent",
"secureOnOpen": "yes",
"secureOnOpenPassword": "SecurePass123!"
}
高级示例(密码保护 + 只读保护):
{
"document": { "Name": "document.docx" },
"docContent": "base64EncodedDocumentContent",
"secureOnOpen": "yes",
"secureOnOpenPassword": "SecurePass123!",
"securityOptions": {
"protectionType": "ReadOnly",
"protectionPassword": "EditPass456!"
}
}
仅评论保护示例:
{
"document": { "Name": "document.docx" },
"docContent": "base64EncodedDocumentContent",
"secureOnOpen": "no",
"securityOptions": {
"protectionType": "AllowComments",
"protectionPassword": "ReviewPass789!"
}
}
表单字段保护示例:
{
"document": { "Name": "form.docx" },
"docContent": "base64EncodedDocumentContent",
"secureOnOpen": "no",
"securityOptions": {
"protectionType": "AllowFormFields",
"protectionPassword": "FormPass2024!"
}
}
代码示例
这 PDF4me 安全文档 REST API 提供多种编程语言的代码示例。请选择最适合您开发环境的语言:
- C#
- Java
- JavaScript
- Python
- Salesforce
- n8n
- Google Script
- AWS Lambda
行业应用案例及应用
- Legal & Professional Services
- Business & Enterprise
- Education & Research
- Finance & Banking
法律及专业服务用例
- 客户机密文件对敏感法律文件应用密码保护
- 合同安全:为客户审核提供只读保护的安全合同
- 法律表格分发对法律表单应用表单字段保护
- 文件审查:对法律文件审查使用仅评论保护
商业及企业应用案例
- 提案安全对机密提案应用密码保护
- 客户文件审核:对客户文档审阅启用仅评论保护
- 营销表格分发对营销表单应用表单字段保护
- 销售文档协作对销售文档编辑启用版本保护
教育与研究应用案例
- 患者文件安全对机密患者文件应用密码保护
- 医疗报告保护:具有只读保护功能的安全医疗报告
- 研究文件协作:对研究文档编辑使用修订保护
- 学术和机构文件确保课程大纲、拨款申请和内部文件的安全。
金融与银行业应用案例
- 财务报告安全对机密财务报告应用密码保护
- 审计文件保护使用只读保护机制保护审计文档。
- 预算表分发对预算表单应用表单字段保护
- 合规文件:对合规性文档编辑使用修订保护