Skip to content

Commit 460849a

Browse files
committed
steps for using user-assigned mqtt
1 parent b376367 commit 460849a

File tree

2 files changed

+12
-9
lines changed

2 files changed

+12
-9
lines changed

articles/iot-operations/connect-to-cloud/howto-configure-adlsv2-endpoint.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -349,7 +349,7 @@ dataLakeStorageSettings:
349349

350350
### User-assigned managed identity
351351

352-
To use user-managed identity for authentication, you must first deploy Azure IoT Operations with secure settings enabled. To learn more, see [Enable secure settings in Azure IoT Operations deployment](../deploy-iot-ops/howto-enable-secure-settings.md).
352+
To use user-assigned managed identity for authentication, you must first deploy Azure IoT Operations with secure settings enabled. To learn more, see [Enable secure settings in Azure IoT Operations deployment](../deploy-iot-ops/howto-enable-secure-settings.md).
353353

354354
Then, specify the user-assigned managed identity authentication method along with the client ID, tenant ID, and scope of the managed identity.
355355

articles/iot-operations/connect-to-cloud/howto-configure-mqtt-endpoint.md

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -226,12 +226,15 @@ Now that the topic space is created, you need to assign the managed identity of
226226

227227
<!-- TODO: refactor or make the get managed identity / extension name an include? -->
228228

229-
In Azure portal, go to the Arc-connected Kubernetes cluster and select **Settings** > **Extensions**. In the extension list, find the name of your Azure IoT Operations extension. Copy the name of the extension.
229+
If you select system-assigned managed identity, in Azure portal, go to the Arc-connected Kubernetes cluster and select **Settings** > **Extensions**. In the extension list, find the name of your Azure IoT Operations extension. This is your system-assigned managed identity. Copy the name of the extension.
230230

231231
Then, go to the Event Grid namespace > **Access control (IAM)** > **Add role assignment**. Assign the managed identity of the Azure IoT Operations Arc extension with an appropriate role like `EventGrid TopicSpaces Publisher` or `EventGrid TopicSpaces Subscriber`. This gives the managed identity the necessary permissions to send or receive messages for all topic spaces in the namespace.
232232

233233
Alternatively, you can assign the role at the topic space level. Go to the topic space > **Access control (IAM)** > **Add role assignment**. Assign the managed identity of the Azure IoT Operations Arc extension with an appropriate role like `EventGrid TopicSpaces Publisher` or `EventGrid TopicSpaces Subscriber`. This gives the managed identity the necessary permissions to send or receive messages for the specific topic space.
234234

235+
> [!NOTE]
236+
> For system-assigned managed identity on the Members tab, for **Assign access to**, select **User, group, or service principal** option. For user-assigned managed identity select **Managed identity** option.
237+
235238
### Create dataflow endpoint
236239

237240
Once the Event Grid namespace is configured, you can create a dataflow endpoint for the Event Grid MQTT broker.
@@ -249,7 +252,7 @@ Once the Event Grid namespace is configured, you can create a dataflow endpoint
249252
| -------------------- | ------------------------------------------------------------------------------------------------- |
250253
| Name | The name of the dataflow endpoint. |
251254
| Host | The hostname and port of the Event Grid MQTT broker. Use the format `<NAMESPACE>.<REGION>-1.ts.eventgrid.azure.net:8883` |
252-
| Authentication method | The method used for authentication. Choose *System assigned managed identity* |
255+
| Authentication method | The method used for authentication. Choose *System assigned managed identity*, or *User assigned managed identity*. |
253256

254257
1. Select **Apply** to provision the endpoint.
255258

@@ -281,8 +284,7 @@ resource remoteMqttBrokerDataflowEndpoint 'Microsoft.IoTOperations/instances/dat
281284
mqttSettings: {
282285
host: eventGridHostName
283286
authentication: {
284-
method: 'SystemAssignedManagedIdentity'
285-
systemAssignedManagedIdentitySettings: {}
287+
// See available authentication methods below
286288
}
287289
tls: {
288290
mode: 'Enabled'
@@ -313,9 +315,7 @@ spec:
313315
mqttSettings:
314316
host: <NAMESPACE>.<REGION>-1.ts.eventgrid.azure.net:8883
315317
authentication:
316-
method: SystemAssignedManagedIdentity
317-
systemAssignedManagedIdentitySettings:
318-
{}
318+
# See available authentication methods below
319319
tls:
320320
mode: Enabled
321321
```
@@ -552,7 +552,10 @@ mqttSettings:
552552

553553
To use user-managed identity for authentication, you must first deploy Azure IoT Operations with secure settings enabled. To learn more, see [Enable secure settings in Azure IoT Operations deployment](../deploy-iot-ops/howto-enable-secure-settings.md).
554554

555-
Then, specify the user-assigned managed identity authentication method along with the client ID and tenant ID of the managed identity.
555+
Before you configure the endpoint, make sure that the user-assigned managed identity has the necessary permissions to connect to the MQTT broker.
556+
557+
1. Assign a role to the user-assigned managed identity that grants permission to connect to the MQTT broker. For example, with Azure Event Grid MQTT broker, assign the managed identity to the Event Grid namespace or topic space with [an appropriate role](../../event-grid/mqtt-client-microsoft-entra-token-and-rbac.md#authorization-to-grant-access-permissions).
558+
1. Specify the user-assigned managed identity authentication method along with the client ID and tenant ID of the managed identity.
556559

557560
# [Portal](#tab/portal)
558561

0 commit comments

Comments
 (0)