4.1 Ensure AWS Identity and Access Management (IAM) is in use
Description
AWS Identity and Access Management (IAM) lets you securely control your users' access to AWS services and resources. To manage access control for Amazon DynamoDB, you can create IAM policies that control access to tables and data.
Rationale
IAM policies help you control and maintain access to Amazon DynamoDB as needed.
Impact
N/A
Audit Procedure
Using AWS Console
Open IAM Console
Navigate to Policies
- In the IAM console, in the navigation pane, choose
Policies.
Create Policy
- Choose
Create policy.
- You will be taken to the
Create policy page.
Choose Service
- Click on
Choose a service.
- Type
DynamoDB in the search box and select it.
Configure Actions
- Under the
Actions section, select the actions you want to allow the user to perform.
- For instance, you can select
Read to allow read actions like GetItem, Scan, Query, etc.
Set Resources
- Under the
Resources section, you can specify which tables this policy applies to.
- You can choose "All resources" or specify the ARN (Amazon Resource Name) of specific tables.
Review Policy
- Click on
Review policy.
- Give your policy a name and description.
- Then click
Create policy.
- Now, you have an IAM policy.
Attach Policy
- Navigate to the
Users, Groups, or Roles section in the IAM console.
- Choose an existing user, group, or role, or create a new one.
- Once you've selected a user, group, or role, click
Add permissions.
- Choose
Attach existing policies directly.
- Search for your created policy, select it, and click
Attach policy.
- With these steps, you have attached an IAM policy that controls access to DynamoDB resources.
Expected Result
IAM policies are in place that control access to DynamoDB tables and data, following the principle of least privilege.
Remediation
Using AWS Console
Follow the same steps as the audit procedure to create and attach IAM policies for DynamoDB access control.
Default Value
By default, no IAM policies are created for DynamoDB access. Users with AWS account root credentials have full access.
References
- https://aws.amazon.com/products/databases/
CIS Controls
| Controls Version |
Control |
IG 1 |
IG 2 |
IG 3 |
| v8 |
3.3 Configure Data Access Control Lists |
x |
x |
x |
| v7 |
14.6 Protect Information through Access Control Lists |
x |
x |
x |
Profile
Level 1 | Manual
1---2name: cis-aws-database-4-13description: Ensure AWS Identity and Access Management (IAM) is in use4---56# 4.1 Ensure AWS Identity and Access Management (IAM) is in use78## Description910AWS Identity and Access Management (IAM) lets you securely control your users' access to AWS services and resources. To manage access control for Amazon DynamoDB, you can create IAM policies that control access to tables and data.1112## Rationale1314IAM policies help you control and maintain access to Amazon DynamoDB as needed.1516## Impact1718N/A1920## Audit Procedure2122### Using AWS Console23241. Open IAM Console25 - Sign in to the AWS Management Console and open the IAM console at https://console.aws.amazon.com/iam/.26272. Navigate to Policies28 - In the IAM console, in the navigation pane, choose `Policies`.29303. Create Policy31 - Choose `Create policy`.32 - You will be taken to the `Create policy` page.33344. Choose Service35 - Click on `Choose a service`.36 - Type `DynamoDB` in the search box and select it.37385. Configure Actions39 - Under the `Actions` section, select the actions you want to allow the user to perform.40 - For instance, you can select `Read` to allow read actions like GetItem, Scan, Query, etc.41426. Set Resources43 - Under the `Resources` section, you can specify which tables this policy applies to.44 - You can choose "All resources" or specify the ARN (Amazon Resource Name) of specific tables.45467. Review Policy47 - Click on `Review policy`.48 - Give your policy a name and description.49 - Then click `Create policy`.50 - Now, you have an IAM policy.51528. Attach Policy53 - Navigate to the `Users`, `Groups`, or `Roles` section in the IAM console.54 - Choose an existing user, group, or role, or create a new one.55 - Once you've selected a user, group, or role, click `Add permissions`.56 - Choose `Attach existing policies directly`.57 - Search for your created policy, select it, and click `Attach policy`.58 - With these steps, you have attached an IAM policy that controls access to DynamoDB resources.5960## Expected Result6162IAM policies are in place that control access to DynamoDB tables and data, following the principle of least privilege.6364## Remediation6566### Using AWS Console6768Follow the same steps as the audit procedure to create and attach IAM policies for DynamoDB access control.6970## Default Value7172By default, no IAM policies are created for DynamoDB access. Users with AWS account root credentials have full access.7374## References75761. https://aws.amazon.com/products/databases/7778## CIS Controls7980| Controls Version | Control | IG 1 | IG 2 | IG 3 |81| ---------------- | ----------------------------------------------------- | ---- | ---- | ---- |82| v8 | 3.3 Configure Data Access Control Lists | x | x | x |83| v7 | 14.6 Protect Information through Access Control Lists | x | x | x |8485## Profile8687Level 1 | Manual