turbot/steampipe-mod-azure-compliance

Control: 9.5 Ensure that Register with Azure Active Directory is enabled on App Service

Description

Managed service identity in App Service makes the app more secure by eliminating secrets from the app, such as credentials in the connection strings. When registering with Azure Active Directory in the app service, the app will connect to other Azure services securely without the need of username and passwords.

App Service provides a highly scalable, self-patching web hosting service in Azure. It also provides a managed identity for apps, which is a turn-key solution for securing access to Azure SQL Database and other Azure services.

Remediation

From Console

  1. Login to Azure Portal and go to App Services.
  2. Click on each App.
  3. Under Settings section, click on Identity.
  4. From System assigned tab, set Status to On.
  5. Click Save.

From Command Line

To set Register with Azure Active Directory feature for an existing app, run the following command:

az webapp identity assign --resource-group <RESOURCE_GROUP_NAME> --name <APP_NAME>

Usage

Run the control in your terminal:

powerpipe control run azure_compliance.control.cis_v130_9_5

Snapshot and share results via Turbot Pipes:

powerpipe login
powerpipe control run azure_compliance.control.cis_v130_9_5 --share

SQL

This control uses a named query:

select
app.id as resource,
case
when identity = '{}' then 'alarm'
else 'ok'
end as status,
case
when identity = '{}' then name || ' register with azure active directory disabled.'
else name || ' register with azure active directory enabled.'
end as reason
, app.resource_group as resource_group
, sub.display_name as subscription
from
azure_app_service_web_app as app,
azure_subscription as sub
where
sub.subscription_id = app.subscription_id;

Tags