@@ -28,13 +28,14 @@ Powertools are available as NuGet packages. You can install the packages from [N
28
28
29
29
This utility requires additional permissions to work as expected. See the table below:
30
30
31
- Provider | Function/Method | IAM Permission
32
- ------------------------------------------------- | ------------------------------------------------- | ---------------------------------------------------------------------------------
33
- SSM Parameter Store | ` SsmProvider.Get(string) ` ` SsmProvider.Get<T>(string) ` | ` ssm:GetParameter `
34
- SSM Parameter Store | ` SsmProvider.GetMultiple(string) ` ` SsmProvider.GetMultiple<T>(string) ` | ` ssm:GetParametersByPath `
35
- Secrets Manager | ` SecretsProvider.Get(string) ` ` SecretsProvider.Get<T>(string) ` | ` secretsmanager:GetSecretValue `
36
- DynamoDB | ` DynamoDBProvider.Get(string) ` ` DynamoDBProvider.Get<T>(string) ` | ` dynamodb:GetItem `
37
- DynamoDB | ` DynamoDBProvider.GetMultiple(string) ` ` DynamoDBProvider.GetMultiple<T>(string) ` | ` dynamodb:Query `
31
+ | Provider | Function/Method | IAM Permission |
32
+ | ------------------- | -------------------------------------------------------------------------------- | ------------------------------------------------------- |
33
+ | SSM Parameter Store | ` SsmProvider.Get(string) ` ` SsmProvider.Get<T>(string) ` | ` ssm:GetParameter ` |
34
+ | SSM Parameter Store | ` SsmProvider.GetMultiple(string) ` ` SsmProvider.GetMultiple<T>(string) ` | ` ssm:GetParametersByPath ` |
35
+ | SSM Parameter Store | If using ** ` WithDecryption() ` ** option | You must add an additional permission ` kms:Decrypt ` |
36
+ | Secrets Manager | ` SecretsProvider.Get(string) ` ` SecretsProvider.Get<T>(string) ` | ` secretsmanager:GetSecretValue ` |
37
+ | DynamoDB | ` DynamoDBProvider.Get(string) ` ` DynamoDBProvider.Get<T>(string) ` | ` dynamodb:GetItem ` |
38
+ | DynamoDB | ` DynamoDBProvider.GetMultiple(string) ` ` DynamoDBProvider.GetMultiple<T>(string) ` | ` dynamodb:Query ` |
38
39
39
40
## SSM Parameter Store
40
41
@@ -138,10 +139,12 @@ in order to get data from other regions or use specific credentials.
138
139
139
140
The AWS Systems Manager Parameter Store provider supports two additional arguments for the ` Get() ` and ` GetMultiple() ` methods:
140
141
141
- | Option | Default | Description |
142
- | ---------------| ---------| -------------|
143
- | ** WithDecryption()** | ` False ` | Will automatically decrypt the parameter. |
144
- | ** Recursive()** | ` False ` | For ` GetMultiple() ` only, will fetch all parameter values recursively based on a path prefix. |
142
+ | Option | Default | Description |
143
+ | -------------------- | ------- | --------------------------------------------------------------------------------------------- |
144
+ | ** WithDecryption()** | ` False ` | Will automatically decrypt the parameter. |
145
+ | ** Recursive()** | ` False ` | For ` GetMultiple() ` only, will fetch all parameter values recursively based on a path prefix. |
146
+
147
+ You can create ` SecureString ` parameters, which are parameters that have a plaintext parameter name and an encrypted parameter value. If you don't use the ` WithDecryption() ` option, you will get an encrypted value. Read [ here] ( https://docs.aws.amazon.com/kms/latest/developerguide/services-parameter-store.html ) about best practices using KMS to secure your parameters.
145
148
146
149
** Example:**
147
150
@@ -350,8 +353,8 @@ DynamoDB provider can be customized at initialization to match your table struct
350
353
| -------------- | --------- | ------- | ---------------------------------------------------------------------------------------------------------- |
351
354
| ** table_name** | ** Yes** | * (N/A)* | Name of the DynamoDB table containing the parameter values. |
352
355
| ** key_attr** | No | ` id ` | Hash key for the DynamoDB table. |
353
- | ** sort_attr** | No | ` sk ` | Range key for the DynamoDB table. You don't need to set this if you don't use the ` GetMultiple() ` method. |
354
- | ** value_attr** | No | ` value ` | Name of the attribute containing the parameter value.
356
+ | ** sort_attr** | No | ` sk ` | Range key for the DynamoDB table. You don't need to set this if you don't use the ` GetMultiple() ` method. |
357
+ | ** value_attr** | No | ` value ` | Name of the attribute containing the parameter value. |
355
358
356
359
=== "DynamoDBProvider"
357
360
0 commit comments