Azure Internet of Things built-in role
IoT Hub Data Reader
IoT Hub Data Reader provides broad read access to IoT Hub service data-plane properties and can receive, complete, or abandon file-upload notifications through IoT Hub service-API DataActions. It grants no Azure Resource Manager Actions, so it does not configure the IoT hub resource or create Azure role assignments.
Role-definition permissions are imported from Microsoft Learn. Practical scope, use cases, prerequisites, best practices, security considerations, assignment guidance, and relationships have been reviewed against the official sources below.
Role definition ID: b447c946-2db7-41ec-983d-d8bf3b1c77e3
Control-plane actions (0)
None — this role grants no control-plane management actions.
Data-plane actions (2)
Microsoft.Devices/IotHubs/*/readMicrosoft.Devices/IotHubs/fileUpload/notifications/action
Excluded actions (0)
None
Assignable scopes (1)
/
Practical scope
Assign on the individual IoT hub. IoT Hub does not support a smaller Azure assignment scope for a device identity, so resource-group, subscription, or management-group assignments broaden access to every inherited hub.
Common use cases (2)
- Let a support or inventory client inspect device identities, twins, jobs, configurations, and service statistics without changing them.
- Process file-upload notifications in a service client while retaining read-only access to the rest of the IoT Hub service API surface.
Prerequisites (2)
- The user, group, application, service principal, or managed identity must authenticate to the IoT Hub service API with a Microsoft Entra OAuth token; device APIs still use symmetric-key or X.509 device authentication.
- For portal access, grant Azure Reader separately so the principal can navigate to the hub without receiving list-keys access through a broad management role.
Best practices (2)
- Assign the narrowest IoT Hub data role directly on one hub and create a custom role when the client needs fewer service API operations.
- Prefer Microsoft Entra authentication for service clients and avoid roles containing listKeys; do not disable shared-access policies while linked Device Provisioning Service workflows still depend on them.
Security considerations (2)
- The role can read service-side device and configuration metadata across the hub and can change the processing state of file-upload notifications even though it does not mutate devices or twins.
- These roles authorize IoT Hub service APIs, not device-to-cloud device authentication and not Azure control-plane management. A parent-scope assignment affects every inherited hub.
Assignment guidance
Assign IoT Hub Data Reader to the service client or operator on the one IoT hub only after matching the required API operations to this role. Use a narrower built-in or custom data role when the complete published capability is unnecessary, and add Azure Reader separately only for portal navigation.
Related roles (2)
- IoT Hub Data Contributor: Adds full service-API mutation and command operations.
- IoT Hub Twin Contributor: Adds write access specifically to device and module twins.
Editorial sources (6)
- Azure built-in roles for Internet of Things - Azure RBAC | Microsoft Learn →
Supports: Description, Security considerations. Retrieved 2026-07-17.
- Understand Azure role definitions →
Supports: Description, Security considerations. Retrieved 2026-07-17.
- Steps to assign an Azure role →
Supports: Assignment guidance. Retrieved 2026-07-17.
- Understand scope for Azure RBAC →
Supports: Practical scope, Assignment guidance. Retrieved 2026-07-17.
- Best practices for Azure RBAC →
Supports: Best practices, Assignment guidance. Retrieved 2026-07-17.
- Control access to IoT Hub by using Microsoft Entra ID →
Supports: Description, Practical scope, Common use cases, Prerequisites, Best practices, Security considerations, Assignment guidance, Related roles. Retrieved 2026-07-17.