turbot/steampipe-mod-microsoft365-compliance

Query: azuread_local_admin_assignment_limited

Usage

powerpipe query microsoft365_compliance.query.azuread_local_admin_assignment_limited

SQL

select
tenant_id || '/' || id as resource,
case
when azure_ad_join -> 'localAdmins' is null then 'ok'
when azure_ad_join -> 'localAdmins' -> 'registeringUsers' is null then 'ok'
when azure_ad_join -> 'localAdmins' -> 'registeringUsers' ->> '@odata.type' = '#microsoft.graph.enumeratedDeviceRegistrationMembership'
or azure_ad_join -> 'localAdmins' -> 'registeringUsers' ->> '@odata.type' = '#microsoft.graph.noDeviceRegistrationMembership' then 'ok'
else 'alarm'
end as status,
case
when azure_ad_join -> 'localAdmins' is null then tenant_id || ' has local administrator assignment limited during Entra join (setting not configured, default behavior).'
when azure_ad_join -> 'localAdmins' -> 'registeringUsers' is null then tenant_id || ' has local administrator assignment limited during Entra join (registeringUsers not set).'
when azure_ad_join -> 'localAdmins' -> 'registeringUsers' ->> '@odata.type' = '#microsoft.graph.enumeratedDeviceRegistrationMembership' then tenant_id || ' has local administrator assignment limited to selected users or groups during Entra join.'
when azure_ad_join -> 'localAdmins' -> 'registeringUsers' ->> '@odata.type' = '#microsoft.graph.noDeviceRegistrationMembership' then tenant_id || ' has local administrator assignment disabled (none) during Entra join.'
else tenant_id || ' has local administrator assignment allowed for all users during Entra join.'
end as reason
, tenant_id as tenant_id
from
azuread_device_registration_policy;

Controls

The query is being used by the following controls: