Control: App Service API apps should only be accessible over HTTPS
Description
Use of HTTPS ensures server/service authentication and protects data in transit from network layer eavesdropping attacks.
Usage
Run the control in your terminal:
powerpipe control run azure_compliance.control.appservice_api_app_use_https
Snapshot and share results via Turbot Pipes:
powerpipe loginpowerpipe control run azure_compliance.control.appservice_api_app_use_https --share
SQL
This control uses a named query:
with all_api_app as ( select id from azure_app_service_web_app where exists ( select from unnest(regexp_split_to_array(kind, ',')) elem where elem like '%api' ))select a.id as resource, case when b.id is null then 'skip' when not https_only then 'alarm' else 'ok' end as status, case when b.id is null then a.title || ' is ' || a.kind || ' kind.' when not https_only then a.name || ' does not redirect all HTTP traffic to HTTPS.' else a.name || ' redirects all HTTP traffic to HTTPS.' end as reason , a.resource_group as resource_group , sub.display_name as subscriptionfrom azure_app_service_web_app as a left join all_api_app as b on a.id = b.id, azure_subscription as subwhere sub.subscription_id = a.subscription_id;