turbot/steampipe-mod-terraform-azure-compliance

Control: FTPS should be required in your Web App

Description

Enable FTPS enforcement for enhanced security. For enhanced security, you should allow FTP over TLS/SSL only. You can also disable both FTP and FTPS if you don't use FTP deployment

Usage

Run the control in your terminal:

powerpipe control run terraform_azure_compliance.control.appservice_web_app_ftps_enabled

Snapshot and share results via Turbot Pipes:

powerpipe login
powerpipe control run terraform_azure_compliance.control.appservice_web_app_ftps_enabled --share

SQL

This control uses a named query:

select
address as resource,
case
when (attributes_std -> 'site_config') is null then 'alarm'
when (attributes_std -> 'site_config' ->> 'ftps_state')::text = 'FtpsOnly' then 'ok'
else 'alarm'
end status,
split_part(address, '.', 2) || case
when (attributes_std -> 'site_config') is null then ' ''site_config'' not defined'
when (attributes_std -> 'site_config' ->> 'ftps_state')::text = 'FtpsOnly' then ' FTPS enabled'
else ' FTPS disabled'
end || '.' reason
, path || ':' || start_line
from
terraform_resource
where
type = 'azurerm_app_service';

Tags