Azure Internet of Things built-in role
IoT Hub Data Contributor
IoT Hub Data Contributor provides full access to IoT Hub service data-plane operations 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: 4fc6c259-987e-4a07-842e-c321cc9d413f
Control-plane actions (0)
None — this role grants no control-plane management actions.
Data-plane actions (1)
Microsoft.Devices/IotHubs/*
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)
- Authorize a trusted backend service that must manage device identities and twins, invoke direct methods, send cloud-to-device messages, and manage jobs or configurations.
- Grant the Device Update service principal the documented access it needs on the linked IoT hub to deploy and manage updates.
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 DataAction wildcard spans device identities, twins, jobs, configurations, direct methods, cloud-to-device messaging, and other service APIs, so it is broader than registry-only or twin-only roles.
- 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 Contributor 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 (3)
- IoT Hub Data Reader: Removes service-API mutation while retaining broad read access and file-upload notification handling.
- IoT Hub Registry Contributor: Narrows mutation access to device and module identity registry operations.
- IoT Hub Twin Contributor: Narrows mutation access 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.