Skip to content

Commit e79bde7

Browse files
committed
links and formatting
1 parent d2d751a commit e79bde7

File tree

1 file changed

+16
-14
lines changed

1 file changed

+16
-14
lines changed

articles/iot-hub/iot-hub-managed-identity.md

Lines changed: 16 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -131,17 +131,17 @@ az resource show --resource-type Microsoft.Devices/IotHubs --name <iot-hub-resou
131131

132132
In this section, you learn how to add and remove a user-assigned managed identity from an IoT hub using Azure portal.
133133

134-
1. First you need to create a user-assigned managed identity as a standalone resource. To do so, you can follow the instructions in [Manage user-assigned managed identities](./entra/identity/managed-identities-azure-resources/how-manage-user-assigned-managed-identities).
134+
1. First you need to create a user-assigned managed identity as a standalone resource. To do so, you can follow the instructions in [Manage user-assigned managed identities](/entra/identity/managed-identities-azure-resources/how-manage-user-assigned-managed-identities).
135135
2. Go to your IoT hub, navigate to the **Identity** in the IoT Hub portal.
136136
3. Under **User-Assigned** tab, click **Associate a user-assigned managed identity**. Choose the user-assigned managed identity you want to add to your hub and then click **Select**.
137-
4. You can remove a user-assigned identity from an IoT hub. Choose the user-assigned identity you want to remove, and click **Remove** button. Note you are only removing it from IoT hub, and this removal does not delete the user-assigned identity as a resource. To delete the user-assigned identity as a resource, follow the instructions in [Manage user-assigned managed identities](./entra/identity/managed-identities-azure-resources/how-manage-user-assigned-managed-identities).
137+
4. You can remove a user-assigned identity from an IoT hub. Choose the user-assigned identity you want to remove, and click **Remove** button. Note you are only removing it from IoT hub, and this removal does not delete the user-assigned identity as a resource. To delete the user-assigned identity as a resource, follow the instructions in [Manage user-assigned managed identities](/entra/identity/managed-identities-azure-resources/how-manage-user-assigned-managed-identities).
138138

139-
:::image type="content" source="./media/iot-hub-managed-identity/user-assigned.png" alt-text="Screenshot showing how to add user-assigned managed identity for an I O T hub.":::
139+
:::image type="content" source="./media/iot-hub-managed-identity/user-assigned.png" alt-text="Screenshot showing how to add user-assigned managed identity for an IoT hub." lightbox="./media/iot-hub-managed-identity/user-assigned.png":::
140140

141141
### [Azure Resource Manager](#tab/arm)
142142

143143
The following example template can be used to create a hub with user-assigned managed identity. This template creates one user assigned identity with the name *[iothub-name-provided]-identity* and assigned to the IoT hub created. You can change the template to add multiple user-assigned identities as needed.
144-
144+
145145
```json
146146
{
147147
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
@@ -259,8 +259,6 @@ In this section, we use the [message routing](iot-hub-devguide-messages-d2c.md)
259259
> [!NOTE]
260260
> For a storage account, select **Storage Blob Data Contributor** ([*not* Contributor or Storage Account Contributor](../storage/blobs/assign-azure-role-data-access.md)) as the role. For a service bus, select **Azure Service Bus Data Sender**.
261261
262-
:::image type="content" source="~/reusable-content/ce-skilling/azure/media/role-based-access-control/add-role-assignment-role-generic.png" alt-text="Screenshot showing Add role assignment page with Role tab selected.":::
263-
264262
1. On the **Members** tab, select **Managed identity**, and then select **Select members**.
265263

266264
1. For user-assigned managed identities, select your subscription, select **User-assigned managed identity**, and then select your user-assigned managed identity.
@@ -269,7 +267,7 @@ In this section, we use the [message routing](iot-hub-devguide-messages-d2c.md)
269267

270268
1. On the **Review + assign** tab, select **Review + assign** to assign the role.
271269

272-
For more information about role assignments, see [Assign Azure roles using the Azure portal](../role-based-access-control/role-assignments-portal.yml)
270+
For more information about role assignments, see [Assign Azure roles using the Azure portal](../role-based-access-control/role-assignments-portal.yml).
273271

274272
1. If you need to restrict the connectivity to your custom endpoint through a VNet, you need to turn on the trusted Microsoft first party exception, to give your IoT hub access to the specific endpoint. For example, if you're adding an event hub custom endpoint, navigate to the **Firewalls and virtual networks** tab in your event hub and enable **Allow access from selected networks** option. Under the **Exceptions** list, check the box for **Allow trusted Microsoft services to access event hubs**. Click the **Save** button. This also applies to storage account and service bus. Learn more about [IoT Hub support for virtual networks](./virtual-network-support.md).
275273

@@ -322,14 +320,16 @@ IoT Hub's [file upload](iot-hub-devguide-file-upload.md) feature allows devices
322320

323321
1. On the **Review + assign** tab, select **Review + assign** to assign the role.
324322

325-
For more information about role assignments, see [Assign Azure roles using the Azure portal](../role-based-access-control/role-assignments-portal.yml)
323+
For more information about role assignments, see [Assign Azure roles using the Azure portal](../role-based-access-control/role-assignments-portal.yml).
326324

327325
If you need to restrict the connectivity to your storage account through a VNet, you need to turn on the trusted Microsoft first party exception, to give your IoT hub access to the storage account. On your storage account resource page, navigate to the **Firewalls and virtual networks** tab and enable **Allow access from selected networks** option. Under the **Exceptions** list, check the box for **Allow trusted Microsoft services to access this storage account**. Click the **Save** button. Learn more about [IoT Hub support for virtual networks](./virtual-network-support.md).
328326

329327
> [!NOTE]
330328
> You need to complete above steps to assign the managed identity the right access before saving the storage account in IoT Hub for file upload using the managed identity. Please wait a few minutes for the role assignment to propagate.
331-
5. On your IoT hub's resource page, navigate to **File upload** tab.
332-
6. On the page that shows up, select the container that you intend to use in your blob storage, configure the **File notification settings, SAS TTL, Default TTL, and Maximum delivery count** as desired. Choose the preferred authentication type, and click **Save**. If you get an error at this step, temporarily set your storage account to allow access from **All networks**, then try again. You can configure firewall on the storage account once the File upload configuration is complete.
329+
330+
1. On your IoT hub's resource page, navigate to **File upload** tab.
331+
332+
1. On the page that shows up, select the container that you intend to use in your blob storage, configure the **File notification settings, SAS TTL, Default TTL, and Maximum delivery count** as desired. Choose the preferred authentication type, and click **Save**. If you get an error at this step, temporarily set your storage account to allow access from **All networks**, then try again. You can configure firewall on the storage account once the File upload configuration is complete.
333333

334334
:::image type="content" source="./media/iot-hub-managed-identity/file-upload.png" alt-text="Screen shot that shows file upload with msi.":::
335335

@@ -338,7 +338,7 @@ IoT Hub's [file upload](iot-hub-devguide-file-upload.md) feature allows devices
338338
339339
## Configure bulk device import/export with managed identities
340340

341-
IoT Hub supports the functionality to [import/export devices](iot-hub-bulk-identity-mgmt.md)' information in bulk from/to a customer-provided storage blob. This functionality requires connectivity from IoT Hub to the storage account.
341+
IoT Hub supports the functionality to [import/export device information in bulk](iot-hub-bulk-identity-mgmt.md) from or to a customer-provided storage blob. This functionality requires connectivity from IoT Hub to the storage account.
342342

343343
1. In the Azure portal, navigate to your storage account.
344344

@@ -433,13 +433,15 @@ result = iothub_job_manager.create_import_export_job(JobProperties(
433433
```
434434

435435
> [!NOTE]
436+
>
436437
> - If **storageAuthenticationType** is set to **identityBased** and **userAssignedIdentity** property is not **null**, the jobs will use the specified user-assigned managed identity.
437438
> - If the IoT hub is not configured with the user-assigned managed identity specified in **userAssignedIdentity**, the job will fail.
438439
> - If **storageAuthenticationType** is set to **identityBased** the **userAssignedIdentity** property is null, the jobs will use system-assigned identity.
439440
> - If the IoT hub is not configured with the user-assigned managed identity, the job will fail.
440441
> - If **storageAuthenticationType** is set to **identityBased** and neither **user-assigned** nor **system-assigned** managed identities are configured on the hub, the job will fail.
441442
442443
## SDK samples
444+
443445
- [.NET SDK sample](https://aka.ms/iothubmsicsharpsample)
444446
- [Java SDK sample](https://github.com/Azure/azure-iot-sdk-java/tree/main/provisioning/provisioning-device-client/src/main/java/com/microsoft/azure/sdk/iot)
445447
- [Python SDK sample](https://github.com/Azure/azure-iot-hub-python/tree/main/samples)
@@ -448,6 +450,6 @@ result = iothub_job_manager.create_import_export_job(JobProperties(
448450

449451
Use the links below to learn more about IoT Hub features:
450452

451-
* [Message routing](./iot-hub-devguide-messages-d2c.md)
452-
* [File upload](./iot-hub-devguide-file-upload.md)
453-
* [Bulk device import/export](./iot-hub-bulk-identity-mgmt.md)
453+
- [Message routing](./iot-hub-devguide-messages-d2c.md)
454+
- [File upload](./iot-hub-devguide-file-upload.md)
455+
- [Bulk device import/export](./iot-hub-bulk-identity-mgmt.md)

0 commit comments

Comments
 (0)