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
- 見積もり時間
- 1週間以上
- 活発さ
- 停滞
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 35/100