turbot/steampipe-mod-azure-compliance

Query: ad_mfa_service_mgmt_api

Usage

powerpipe query azure_compliance.query.ad_mfa_service_mgmt_api

SQL

with distinct_tenant as (
select
distinct tenant_id,
display_name,
subscription_id,
_ctx
from
azure_tenant
),
conditional_access_policy as (
select
tenant_id,
count(*) as conditional_access_policy_count
from
azuread_conditional_access_policy
where
users -> 'includeUsers' ? 'All'
and applications -> 'includeApplications' ? '797f4846-ba00-4fd7-ba43-dac1f8f63013'
and built_in_controls @> '[1]'::jsonb
and state = 'enabled'
group
by tenant_id
)
select
t.tenant_id as resource,
case
when conditional_access_policy_count > 0 then 'ok'
else 'alarm'
end as status,
case
when conditional_access_policy_count > 0 then t.display_name || ' has conditional access policy which requires MFA for the Service Management API.'
else t.display_name || ' does not have a conditional access policy which requires MFA for the Service Management API.'
end as reason,
t.tenant_id
from
distinct_tenant as t
left join conditional_access_policy as p on p.tenant_id = t.tenant_id;

Controls

The query is being used by the following controls: