Skip to content

Commit 86c6539

Browse files
auto commit
1 parent 1dedf2b commit 86c6539

File tree

2 files changed

+97
-0
lines changed

2 files changed

+97
-0
lines changed

DynamoDbEncryption/Makefile

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -164,6 +164,21 @@ STRUCTUREDENCRYPTION_INDEX_FILE_PATH=dafny/StructuredEncryption/src/Index.dfy
164164
STRUCTUREDENCRYPTION_INDEX_FILE_WITH_EXTERN_STRING="module {:extern \"software.amazon.cryptography.dbencryptionsdk.structuredencryption.internaldafny\" } StructuredEncryption"
165165
STRUCTUREDENCRYPTION_INDEX_FILE_WITHOUT_EXTERN_STRING="module StructuredEncryption"
166166

167+
# Target to restore all directories in a list
168+
# TODO: remove this once we don't copy all of the directories into implementation and test. This is done by make file target _mv_polymorph_go in smithy-dafny. https://sim.amazon.com/issues/0371eaa5-61b5-490c-ad0b-927b6dc4d2d2
169+
RESTORE_DIRS := README.md
170+
_polymorph_go: restore_directories
171+
restore_directories:
172+
@for dir in $(RESTORE_DIRS); do \
173+
if [ -d "runtimes/go/ImplementationFromDafny-go/$$dir" ]; then \
174+
cp -Rf runtimes/go/ImplementationFromDafny-go/$$dir runtimes/go/; \
175+
rm -rf runtimes/go/ImplementationFromDafny-go/$$dir; \
176+
rm -rf runtimes/go/TestsFromDafny-go/$$dir; \
177+
else \
178+
echo "Directory $$dir not found"; \
179+
fi \
180+
done
181+
167182
_sed_types_file_remove_extern:
168183
$(MAKE) _sed_file SED_FILE_PATH=$(DYNAMODB_TYPES_FILE_PATH) SED_BEFORE_STRING=$(DYNAMODB_TYPES_FILE_WITH_EXTERN_STRING) SED_AFTER_STRING=$(DYNAMODB_TYPES_FILE_WITHOUT_EXTERN_STRING)
169184
$(MAKE) _sed_file SED_FILE_PATH=$(ITEMENCRYPTOR_TYPES_FILE_PATH) SED_BEFORE_STRING=$(ITEMENCRYPTOR_TYPES_FILE_WITH_EXTERN_STRING) SED_AFTER_STRING=$(ITEMENCRYPTOR_TYPES_FILE_WITHOUT_EXTERN_STRING)
Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,82 @@
1+
# AWS Database Encryption SDK for DynamoDB in Go
2+
3+
The AWS Database Encryption SDK (DB-ESDK) for DynamoDB in Go is a client-side encryption
4+
library that allows you to perform attribute-level encryption, enabling you to encrypt specific
5+
attribute values within items before storing them in your DynamoDB table. All encryption and
6+
decryption are performed within your application. This lets you protect sensitive data in-transit
7+
and at-rest, as data cannot be exposed unless decrypted by your application.
8+
9+
For more details about the design and architecture of the DB-ESDK for DynamoDB,
10+
see the [AWS Database Encryption SDK Developer Guide](https://docs.aws.amazon.com/database-encryption-sdk/latest/devguide/).
11+
12+
# Security
13+
14+
If you discover a potential security issue in this project
15+
we ask that you notify AWS/Amazon Security via our
16+
[vulnerability reporting page](http://aws.amazon.com/security/vulnerability-reporting/).
17+
Please **do not** create a public GitHub issue.
18+
19+
# Support Policy
20+
21+
See [Support Policy](./SUPPORT_POLICY.rst) for details
22+
on the current support status of all major versions of this library.
23+
24+
## Giving Feedback
25+
26+
We need your help in making this SDK great.
27+
Please participate in the community and contribute to this effort by
28+
submitting issues,
29+
participating in discussion forums and
30+
submitting pull requests through the following channels:
31+
32+
- Submit [issues](https://github.com/aws/aws-database-encryption-sdk-dynamodb/issues)
33+
\- this is the **preferred** channel to interact with our team
34+
- Articulate your
35+
[feature request](https://github.com/aws/aws-database-encryption-sdk-dynamodb/issues?q=is%3Aopen+is%3Aissue+label%3A%22feature-request%22)
36+
or upvote existing ones
37+
- Ask [questions](https://repost.aws/tags/TAc3VKZnkNQyimpHnCHetNOQ/aws-crypto-tools) on AWS re:Post under AWS Crypto Tools tag
38+
39+
# Getting Started
40+
41+
## Required Prerequisites
42+
43+
To use the DB-ESDK for DynamoDB in Go, you must have:
44+
45+
### A supported version of Go
46+
- Go 1.23 or later is required by AWS Encryption SDK for Go.
47+
48+
For more information on downloading and installing Go, see [Go installation](https://go.dev/doc/install)
49+
50+
### AWS Integration
51+
52+
You need an Amazon Web Services (AWS) account to use the DB-ESDK for DynamoDB as it's specifically designed to work with Amazon DynamoDB. Optionally, you can use AWS Key Management Service (AWS KMS) as your main keyring provider.
53+
54+
- **To create an AWS account**, go to
55+
[Sign In or Create an AWS Account](https://portal.aws.amazon.com/gp/aws/developer/registration/index.html)
56+
and then choose **I am a new user.**
57+
Follow the instructions to create an AWS account.
58+
59+
- **(Optional) To create a key in AWS KMS**, see
60+
[Creating Keys](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html).
61+
62+
### Amazon Corretto Crypto Provider
63+
64+
Many developers find that the Amazon Corretto Crypto Provider (ACCP)
65+
significantly improves the performance of the library.
66+
For help installing and using ACCP, see the
67+
[amazon-corretto-crypto-provider repository](https://github.com/corretto/amazon-corretto-crypto-provider).
68+
69+
## Using the DB-ESDK for DynamoDB in Java
70+
71+
There are several ways to use the library.
72+
More details are provided in the
73+
[AWS Database Encryption SDK Developer Guide](https://docs.aws.amazon.com/database-encryption-sdk/latest/devguide/).
74+
Also see the [Examples](Examples/runtimes/go/).
75+
76+
# Contributing
77+
78+
See [CONTRIBUTING](CONTRIBUTING.md) for more information.
79+
80+
# License
81+
82+
This project is licensed under the Apache-2.0 License.

0 commit comments

Comments
 (0)