aws / aws/aws-dynamodb-encryption-java
Enable Encryption and/or Signing Only when Annotated [Feature Request]
- 主要语言
- Java
- 星标
- 141
- 派生
- 74
- PR 合并指标
- 30 天内没有已合并 PR
描述
Currently the library encrypts and signs every field in all entities by _default_ unless `@DoNotEncrypt` or `@DoNotTouch` are applied to fields or types.
The feedback I'd like to provide is that most all projects that I've been a part of aren't willing to accept the overhead of client-side encryption on every field and table. It's usually just a few sensitive fields, where the overhead is justified (or required from a regulatory standpoint). Imagine a project with 50 tables where only one requires client-side encryption. With the current default users need to annotate 49 entities with `@DoNotTouch` and leave one table without any annotations - the one where we do want to encrypt attributes.
This feature request is to add a way to change the default to not do anything unless one of the following new annotations are found on the entity or field: `@Encrypt` or `@EncryptAndSign`.
贡献指南
调研方向
首先跟踪库当前默认应用加密和签名的方式,然后定位对 @DoNotEncrypt 和 @DoNotTouch 的注解处理。确定实体级和字段级默认值在哪里选择,并找出现有的注解测试;完成的工作应包括 @Encrypt 和 @EncryptAndSign 的新行为,而不要求在无关实体上添加选择退出注解。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- java
- 领域
- database, security
- Issue 类型
- 功能
- 难度
- 5/5
- 预计耗时
- 一周以上
- 活跃度
- 停滞
- 描述清晰度
- 基本清楚
- 新手友好度
- 35/100