StandardS3EncryptionService

文档中心 › 组件索引 › StandardS3EncryptionService

StandardS3EncryptionService Controller Service

类型全限定名:cn.org.acal.lynxus.processors.aws.s3.encryption.StandardS3EncryptionService

所属 Bundle:cn.org.acal.lynxus:lynxus-aws-nar:2.11.8

描述

向 S3 Put 和 S3 Fetch 操作添加可配置加密。

标签

serviceawss3encryptionencryptdecryptiondecryptkey

属性

下表中,加粗的属性为必填项;其余为可选项。表格同时标注默认值、是否支持表达式语言,以及是否为敏感属性(值会被加密)。

名称默认值可选值描述
Encryption StrategyNONE
  • None — 不加密。
  • Server-side S3 — 使用服务器端、S3 托管的加密。
  • Server-side KMS — 使用服务器端 KMS 密钥执行加密。
  • Server-side Customer Key — 使用服务器端、客户提供的密钥执行加密。
  • Client-side KMS — 使用客户端 KMS 密钥执行加密。
  • Client-side Customer Key — 使用客户端、客户提供的密钥执行加密。
用于 S3 数据加密和解密的策略。
KMS Key ID用于服务器端或客户端 KMS 加密的 KMS 密钥的 ID (ARN)。
敏感属性:是
支持表达式语言:是(仅使用环境/系统变量求值)
Key Material用于服务器端或客户端客户密钥加密的密钥材料。密钥材料必须以 Base64 编码形式指定。对于服务器端客户密钥,密钥必须是 AES-256 密钥。对于客户端客户密钥,可以是 AES-256、AES-192 或 AES-128 密钥。
敏感属性:是
支持表达式语言:是(仅使用环境/系统变量求值)
Commitment PolicyREQUIRE_ENCRYPT_REQUIRE_DECRYPT
  • Require Encrypt Require Decrypt — 要求加密和解密都使用密钥承诺(key-committing)算法套件。这是最安全的选项,但不会解密使用较旧的非密钥承诺算法加密的数据。
  • Require Encrypt Allow Decrypt — 要求加密使用密钥承诺算法套件,但允许解密使用密钥承诺或非密钥承诺算法加密的数据。在从较旧加密迁移期间使用此选项。
  • Forbid Encrypt Allow Decrypt — 禁止加密,但允许解密使用密钥承诺或非密钥承诺算法加密的数据。将其用于对遗留加密数据的只读访问。
客户端加密的承诺策略。密钥承诺确保用于加密的数据密钥与密文加密绑定。这可以防止攻击者操纵密文的某些类型的攻击。从旧版加密(4.0.0 之前的 S3 加密客户端)迁移时,使用「要求加密允许解密」以使用密钥提交算法加密新数据,同时仍能解密旧数据。

状态管理

该组件不存储状态。

受限 (Restricted)

该组件不受限。

提供的 Service API

  • AmazonS3EncryptionService (cn.org.acal.lynxus-lynxus-aws-service-api-nar-2.11.8)

详细说明

S3EncryptionService

说明

StandardS3EncryptionService 管理一种加密策略,并把该策略应用于各种 S3 操作。 注意: 当 Processor 设置了 Server Side Encryption 属性时,该服务 不起作用。要让此类 Processor 使用该服务,请先创建服务实例,把 Encryption Strategy 设为 Server-side S3,禁用 Processor 的 Server Side Encryption 设置,最后把 Processor 关联到该服务。

配置详情

Encryption Strategy

该服务在加密和解密 S3 操作时使用的具体加密策略名称。

  • None - 不配置也不应用加密。
  • Server-side S3 - 加密和解密由 S3 管理,不需要密钥。
  • Server-side KMS - 加密和解密由 S3 使用配置的 KMS 密钥执行。
  • Server-side Customer Key - 加密和解密由 S3 使用提供的客户密钥执行。
  • Client-side KMS - 与 Server-side KMS 策略类似,但加密和解密由客户端执行。
  • Client-side Customer Key - 与 Server-side Customer Key 策略类似, 但加密和解密由客户端执行。

Key ID or Key Material

配置为 Server-side 或 Client-side KMS 策略时,该字段应包含 KMS Key ID。

配置为 Server-side 或 Client-side Customer Key 策略时,该字段应包含 密钥材料,且材料必须经过 base64 编码。

其他加密策略会忽略该字段。

KMS Region

KMS 密钥的区域(如果有)。提供该值时必须与 KMS 密钥的实际区域一致。