turbot/steampipe-mod-aws-compliance

Control: DMS endpoints for Neptune databases should have IAM authorization enabled

Description

This control checks whether an AWS DMS endpoint for an Amazon Neptune database is configured with IAM authorization. The control fails if the DMS endpoint doesn't have IAM authorization enabled.

Usage

Run the control in your terminal:

powerpipe control run aws_compliance.control.dms_endpoint_neptune_database_iam_authorization_enabled

Snapshot and share results via Turbot Pipes:

powerpipe login
powerpipe control run aws_compliance.control.dms_endpoint_neptune_database_iam_authorization_enabled --share

SQL

This control uses a named query:

select
arn as resource,
case
when endpoint_type <> 'TARGET' then 'skip'
when neptune_settings is null then 'skip'
when (neptune_settings -> 'IamAuthEnabled')::bool then 'ok'
else 'alarm'
end as status,
case
when endpoint_type <> 'TARGET' then title || ' endpoint is not of target type.'
when neptune_settings is null then title || ' endpoint is not of neptune engine type.'
when (neptune_settings -> 'IamAuthEnabled')::bool then title || ' IAM authorization for neptune database enabled.'
else title || ' IAM authorization for neptune database disabled.'
end as reason
, region, account_id
from
aws_dms_endpoint;

Tags