Skip to content

Commit fbccc1a

Browse files
Merge pull request #290361 from PatAltimore/patricka-scrub-authorization-release-aio-ga
Add MQTT authorization feedback
2 parents 26191ea + 28bddef commit fbccc1a

File tree

3 files changed

+66
-66
lines changed

3 files changed

+66
-66
lines changed

articles/iot-operations/connect-to-cloud/concept-dataflow-enrich.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ For example, consider the following dataset with a few records, represented as J
3232
}
3333
```
3434

35-
The mapper accesses the reference dataset stored in the Azure IoT Operations [distributed state store (DSS)](../create-edge-apps/concept-about-state-store-protocol.md) by using a key value based on a *condition* specified in the mapping configuration. Key names in the DSS correspond to a dataset in the dataflow configuration.
35+
The mapper accesses the reference dataset stored in the Azure IoT Operations [state store](../create-edge-apps/concept-about-state-store-protocol.md) by using a key value based on a *condition* specified in the mapping configuration. Key names in the state store correspond to a dataset in the dataflow configuration.
3636

3737
# [Bicep](#tab/bicep)
3838

@@ -64,7 +64,7 @@ datasets:
6464
6565
When a new record is being processed, the mapper performs the following steps:
6666
67-
* **Data request:** The mapper sends a request to the DSS to retrieve the dataset stored under the key `Position`.
67+
* **Data request:** The mapper sends a request to the state store to retrieve the dataset stored under the key `Position`.
6868
* **Record matching:** The mapper then queries this dataset to find the first record where the `Position` field in the dataset matches the `Position` field of the incoming record.
6969

7070
# [Bicep](#tab/bicep)
@@ -102,7 +102,7 @@ When a new record is being processed, the mapper performs the following steps:
102102

103103
---
104104

105-
In this example, the `WorkingHours` field is added to the output record, while the `BaseSalary` is used conditionally only when the incoming record doesn't contain the `BaseSalary` field (or the value is `null` if it's a nullable field). The request for the contextualization data doesn't happen with every incoming record. The mapper requests the dataset and then it receives notifications from DSS about the changes, while it uses a cached version of the dataset.
105+
In this example, the `WorkingHours` field is added to the output record, while the `BaseSalary` is used conditionally only when the incoming record doesn't contain the `BaseSalary` field (or the value is `null` if it's a nullable field). The request for the contextualization data doesn't happen with every incoming record. The mapper requests the dataset and then it receives notifications from the state store about the changes, while it uses a cached version of the dataset.
106106

107107
It's possible to use multiple datasets:
108108

@@ -169,7 +169,7 @@ inputs: [
169169

170170
---
171171

172-
The input references use the key of the dataset like `position` or `permission`. If the key in DSS is inconvenient to use, you can define an alias:
172+
The input references use the key of the dataset like `position` or `permission`. If the key in state store is inconvenient to use, you can define an alias:
173173

174174
# [Bicep](#tab/bicep)
175175

articles/iot-operations/connect-to-cloud/howto-create-dataflow.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ ms.author: patricka
66
ms.service: azure-iot-operations
77
ms.subservice: azure-data-flows
88
ms.topic: how-to
9-
ms.date: 11/06/2024
9+
ms.date: 11/11/2024
1010
ai-usage: ai-assisted
1111

1212
#CustomerIntent: As an operator, I want to understand how to create a dataflow to connect data sources.
@@ -509,9 +509,9 @@ builtInTransformationSettings:
509509

510510
### Enrich: Add reference data
511511

512-
To enrich the data, you can use the reference dataset in the Azure IoT Operations [distributed state store (DSS)](../create-edge-apps/concept-about-state-store-protocol.md). The dataset is used to add extra data to the source data based on a condition. The condition is specified as a field in the source data that matches a field in the dataset.
512+
To enrich the data, you can use the reference dataset in the Azure IoT Operations [state store](../create-edge-apps/concept-about-state-store-protocol.md). The dataset is used to add extra data to the source data based on a condition. The condition is specified as a field in the source data that matches a field in the dataset.
513513

514-
You can load sample data into the DSS by using the [DSS set tool sample](https://github.com/Azure-Samples/explore-iot-operations/tree/main/samples/dss_set). Key names in the distributed state store correspond to a dataset in the dataflow configuration.
514+
You can load sample data into the state store by using the [DSS set tool sample](https://github.com/Azure-Samples/explore-iot-operations/tree/main/samples/dss_set). Key names in the state store correspond to a dataset in the dataflow configuration.
515515

516516
# [Portal](#tab/portal)
517517

articles/iot-operations/manage-mqtt-broker/howto-configure-authorization.md

Lines changed: 59 additions & 59 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ ms.subservice: azure-mqtt-broker
77
ms.topic: how-to
88
ms.custom:
99
- ignite-2023
10-
ms.date: 11/08/2024
10+
ms.date: 11/11/2024
1111

1212
#CustomerIntent: As an operator, I want to configure authorization so that I have secure MQTT broker communications.
1313
ms.service: azure-iot-operations
@@ -21,7 +21,7 @@ Authorization policies determine what actions the clients can perform on the bro
2121

2222
## Link BrokerAuthorization to BrokerListener
2323

24-
To link a *BrokerListener* to a *BrokerAuthorization* resource, specify the `authenticationRef` field in the `ports` setting of the *BrokerListener* resource. Similar to BrokerAuthentication, the *BrokerAuthorization* resource can be linked to multiple *BrokerListener* ports. The authorization policies apply to all linked listener ports. However, there's one key difference compared with BrokerAuthentication:
24+
To link a *BrokerListener* to a *BrokerAuthorization* resource, specify the `authorizationRef` field in the `ports` setting of the *BrokerListener* resource. Similar to BrokerAuthentication, the *BrokerAuthorization* resource can be linked to multiple *BrokerListener* ports. The authorization policies apply to all linked listener ports. However, there's one key difference compared with BrokerAuthentication:
2525

2626
> [!IMPORTANT]
2727
> To have the *BrokerAuthorization* configuration apply to a listener port, at least one BrokerAuthentication must also be linked to that listener port.
@@ -176,34 +176,34 @@ In the broker authorization rules for your authorization policy, use the followi
176176

177177
```json
178178
[
179-
{
180-
"brokerResources": [
181-
{
182-
"clientIds": [
183-
"{principal.attributes.building}*"
184-
],
185-
"method": "Connect",
186-
"topics": []
187-
},
188-
{
189-
"clientIds": [],
190-
"method": "Publish",
191-
"topics": [
192-
"sensors/{principal.attributes.building}/{principal.clientId}/telemetry"
193-
]
194-
}
179+
{
180+
"brokerResources": [
181+
{
182+
"clientIds": [
183+
"{principal.attributes.building}*"
195184
],
196-
"principals": {
197-
"attributes": [
198-
{
199-
"building": "building22"
200-
},
201-
{
202-
"building": "building23"
203-
}
204-
]
185+
"method": "Connect",
186+
"topics": []
187+
},
188+
{
189+
"clientIds": [],
190+
"method": "Publish",
191+
"topics": [
192+
"sensors/{principal.attributes.building}/{principal.clientId}/telemetry"
193+
]
194+
}
195+
],
196+
"principals": {
197+
"attributes": [
198+
{
199+
"building": "building22"
200+
},
201+
{
202+
"building": "building23"
205203
}
204+
]
206205
}
206+
}
207207
]
208208
```
209209

@@ -339,36 +339,36 @@ In the Broker authorization rules for your authorization policy, use the followi
339339

340340
```json
341341
[
342-
{
343-
"brokerResources": [
344-
{
345-
"clientIds": [],
346-
"method": "Connect",
347-
"topics": []
348-
},
349-
{
350-
"clientIds": [],
351-
"method": "Publish",
352-
"topics": [
353-
"odd-numbered-orders"
354-
]
355-
},
356-
{
357-
"clientIds": [],
358-
"method": "Subscribe",
359-
"topics": [
360-
"orders"
361-
]
362-
}
363-
],
364-
"principals": {
365-
"attributes": [
366-
{
367-
"group": "authz-sat"
368-
}
369-
]
342+
{
343+
"brokerResources": [
344+
{
345+
"clientIds": [],
346+
"method": "Connect",
347+
"topics": []
348+
},
349+
{
350+
"clientIds": [],
351+
"method": "Publish",
352+
"topics": [
353+
"odd-numbered-orders"
354+
]
355+
},
356+
{
357+
"clientIds": [],
358+
"method": "Subscribe",
359+
"topics": [
360+
"orders"
361+
]
362+
}
363+
],
364+
"principals": {
365+
"attributes": [
366+
{
367+
"group": "authz-sat"
370368
}
369+
]
371370
}
371+
}
372372
]
373373
```
374374

@@ -453,7 +453,7 @@ metadata:
453453
namespace: azure-iot-operations
454454
spec:
455455
authorizationPolicies:
456-
enableCache: false
456+
cache: Enabled
457457
rules:
458458
- principals:
459459
attributes:
@@ -472,11 +472,11 @@ spec:
472472

473473
To learn more with an example, see [Set up Authorization Policy with Dapr Client](../create-edge-apps/howto-develop-dapr-apps.md).
474474

475-
## Distributed state store
475+
## State store
476476

477-
MQTT broker provides a distributed state store (DSS) that clients can use to store state. The DSS can also be configured to be highly available.
477+
MQTT broker provides a [state store](../create-edge-apps/concept-about-state-store-protocol.md) that clients can use to store state. The state store can also be configured to be highly available.
478478

479-
To set up authorization for clients that use the DSS, provide the following permissions:
479+
To set up authorization for clients that use the state store, provide the following permissions:
480480

481481
- Permission to publish to the system key value store `$services/statestore/_any_/command/invoke/request` topic
482482
- Permission to subscribe to the response-topic (set during initial publish as a parameter) `<response_topic>/#`

0 commit comments

Comments
 (0)