aws / aws/aws-encryption-sdk-java

Support MultiProvider Encrypt when not all providers are available

Open
#25 8 comments 0 reactions 1 assignee Claimed by @mattsb42-aws View on GitHub
enhancement
Dominant language
Java
Stars
240
Forks
125
PR merge metrics
No merged PRs in 30d

Description

First off - what a great library. This solves many problems that a developer would have otherwise needed to handle on their own. Thank you!

We are looking to use this library to provide Multi-Region KMS encrypt and decrypt operations, where if any KMS service in any single region is down, we are not down. This works today for Decrypt operations which is awesome, but not Encrypt operations - all providers must be available to encrypt data. In a sense, what one was attempting to achieve in reducing the risk of an outage by leveraging two different KMS’s (for instance), you actually increase your outage risk on encrypt operations because if a single KMS provider is down in any region, you are down for encrypts.

I would like to see the MultiProviderFactory have some construction options where I can specify the minimum number of providers (or a quorum) that must be available for encrypt to succeed - or something of the sort. Leaving it configurable allows the product to decide how much risk to take on (for encrypting data that can not be decrypted later by every single provider in the event providers are not available)

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.