Skip to content

Commit 144ce43

Browse files
committed
Freshness review - 11-12
1 parent cd67eaf commit 144ce43

File tree

4 files changed

+30
-28
lines changed

4 files changed

+30
-28
lines changed

articles/event-grid/security-authentication.md

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
11
---
2-
title: Authenticate event delivery to event handlers (Azure Event Grid)
2+
title: Authenticate event delivery to event handlers
33
description: This article describes different ways of authenticating delivery to event handlers in Azure Event Grid.
4-
ms.topic: conceptual
5-
ms.date: 08/31/2023
4+
ms.topic: concept-article
5+
ms.date: 11/12/2024
6+
# Customer intent: I want to learn how to authenticate delivery of events to event handlers.
67
---
78

89
# Authenticate event delivery to event handlers (Azure Event Grid)
@@ -14,7 +15,7 @@ Azure Event Grid uses different authentication methods to deliver events to even
1415
| Authentication method | Supported event handlers | Description |
1516
|--|--|--|
1617
Access key | - Event Hubs<br/>- Service Bus<br/>- Storage Queues<br/>- Relay Hybrid Connections<br/>- Azure Functions<br/>- Storage Blobs (Deadletter) | Access keys are fetched using Event Grid service principal's credentials. The permissions are granted to Event Grid when you register the Event Grid resource provider in their Azure subscription. |
17-
Managed System Identity <br/>&<br/> Role-based access control | - Event Hubs<br/>- Service Bus<br/>- Storage Queues<br/>- Storage  Blobs (Deadletter) | Enable managed system identity for the topic and add it to the appropriate role on the destination. For details, see [Use system-assigned identities for event delivery](#use-system-assigned-identities-for-event-delivery). |
18+
Managed System Identity <br/>&<br/> Role-based access control | - Event Hubs<br/>- Service Bus<br/>- Storage Queues<br/>- Storage  Blobs (Deadletter) | Enable managed system identity for the topic and add it to the appropriate role on the destination. For details, see [Use system-assigned identities for event delivery](#use-system-assigned-identities-for-event-delivery). |
1819
|Bearer token authentication with Microsoft Entra protected webhook | Webhook | See the [Authenticate event delivery to webhook endpoints](#authenticate-event-delivery-to-webhook-endpoints) section for details. |
1920
Client secret as a query parameter | Webhook | See the [Using client secret as a query parameter](#using-client-secret-as-a-query-parameter) section for details. |
2021

@@ -26,7 +27,7 @@ You can enable a system-assigned managed identity for a topic or domain and use
2627

2728
Here are the steps:
2829

29-
1. Create a topic or domain with a system-assigned identity, or update an existing topic or domain to enable identity. For more information, see [Enable managed identity for a system topic](enable-identity-system-topics.md) or [Enable managed identity for a custom topic or a domain](enable-identity-custom-topics-domains.md)
30+
1. Create a topic or domain with a system-assigned identity, or enable identity on an existing topic or domain. For more information, see [Enable managed identity for a system topic](enable-identity-system-topics.md) or [Enable managed identity for a custom topic or a domain](enable-identity-custom-topics-domains.md)
3031
1. Add the identity to an appropriate role (for example, Service Bus Data Sender) on the destination (for example, a Service Bus queue). For more information, see [Grant identity the access to Event Grid destination](add-identity-roles.md)
3132
1. When you create event subscriptions, enable the usage of the identity to deliver events to the destination. For more information, see [Create an event subscription that uses the identity](managed-service-identity.md).
3233

@@ -54,5 +55,5 @@ For more information on delivering events to webhooks, see [Webhook event delive
5455
If you're already familiar with Event Grid, you might be aware of the endpoint validation handshake for preventing abuse. CloudEvents v1.0 implements its own [abuse protection semantics](end-point-validation-cloud-events-schema.md) by using the **HTTP OPTIONS** method. To read more about it, see [HTTP 1.1 Web Hooks for event delivery - Version 1.0](https://github.com/cloudevents/spec/blob/v1.0/http-webhook.md#4-abuse-protection). When you use the CloudEvents schema for output, Event Grid uses the CloudEvents v1.0 abuse protection in place of the Event Grid validation event mechanism. For more information, see [Use CloudEvents v1.0 schema with Event Grid](cloud-event-schema.md).
5556

5657

57-
## Next steps
58+
## Related content
5859
See [Authenticate publishing clients](security-authenticate-publishing-clients.md) to learn about authenticating clients publishing events to topics or domains.

articles/event-hubs/event-hubs-auto-inflate.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ title: Automatically scale up throughput units in Azure Event Hubs
33
description: Enable Auto-inflate on a namespace to automatically scale up throughput units (standard tier).
44
ms.topic: article
55
ms.custom: devx-track-arm-template
6-
ms.date: 07/28/2023
6+
ms.date: 11/12/2024
77
---
88

99
# Automatically scale up Azure Event Hubs throughput units (standard tier)

articles/service-bus-messaging/service-bus-amqp-protocol-guide.md

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
title: AMQP 1.0 in Azure Service Bus and Event Hubs protocol guide | Microsoft Docs
33
description: Protocol guide to expressions and description of AMQP 1.0 in Azure Service Bus and Event Hubs
44
ms.topic: article
5-
ms.date: 06/08/2023
5+
ms.date: 11/12/2024
66
---
77

88
# AMQP 1.0 in Azure Service Bus and Event Hubs protocol guide
@@ -263,10 +263,10 @@ To begin transactional work, the controller must obtain a `txn-id` from the coor
263263

264264
| Client (Controller) | Direction | Service Bus (Coordinator) |
265265
| :--- | :---: | :--- |
266-
| attach(<br/>name={link name},<br/>... ,<br/>role=**sender**,<br/>target=**Coordinator**<br/>) | ------> | |
267-
| | <------ | attach(<br/>name={link name},<br/>... ,<br/>target=Coordinator()<br/>) |
268-
| transfer(<br/>delivery-id=0, ...)<br/>{ AmqpValue (**Declare()**)}| ------> | |
269-
| | <------ | disposition( <br/> first=0, last=0, <br/>state=**Declared**(<br/>**txn-id**={transaction ID}<br/>))|
266+
| `attach(<br/>name={link name},<br/>... ,<br/>role=**sender**,<br/>target=**Coordinator**<br/>)` | ------> | |
267+
| | <------ | `attach(<br/>name={link name},<br/>... ,<br/>target=Coordinator()<br/>)` |
268+
| `transfer(<br/>delivery-id=0, ...)<br/>{ AmqpValue (**Declare()**)}`| ------> | |
269+
| | <------ | `disposition( <br/> first=0, last=0, <br/>state=**Declared**(<br/>**txn-id**={transaction ID}<br/>))`|
270270

271271
#### Discharging a transaction
272272

@@ -276,33 +276,33 @@ The controller concludes the transactional work by sending a `discharge` message
276276
277277
| Client (Controller) | Direction | Service Bus (Coordinator) |
278278
| :--- | :---: | :--- |
279-
| transfer(<br/>delivery-id=0, ...)<br/>{ AmqpValue (Declare())}| ------> | |
280-
| | <------ | disposition( <br/> first=0, last=0, <br/>state=Declared(<br/>txn-id={transaction ID}<br/>))|
279+
| `transfer(<br/>delivery-id=0, ...)<br/>{ AmqpValue (Declare())}`| ------> | |
280+
| | <------ | `disposition( <br/> first=0, last=0, <br/>state=Declared(<br/>txn-id={transaction ID}<br/>))`|
281281
| | . . . <br/>Transactional work<br/>on other links<br/> . . . |
282-
| transfer(<br/>delivery-id=57, ...)<br/>{ AmqpValue (<br/>**Discharge(txn-id=0,<br/>fail=false)**)}| ------> | |
283-
| | <------ | disposition( <br/> first=57, last=57, <br/>state=**Accepted()**)|
282+
| `transfer(<br/>delivery-id=57, ...)<br/>{ AmqpValue (<br/>**Discharge(txn-id=0,<br/>fail=false)**)}`| ------> | |
283+
| | <------ | `disposition( <br/> first=57, last=57, <br/>state=**Accepted()**)`|
284284

285285
#### Sending a message in a transaction
286286

287287
All transactional work is done with the transactional delivery state `transactional-state` that carries the txn-id. When sending messages, the transactional-state is carried by the message's transfer frame.
288288

289289
| Client (Controller) | Direction | Service Bus (Coordinator) |
290290
| :--- | :---: | :--- |
291-
| transfer(<br/>delivery-id=0, ...)<br/>{ AmqpValue (Declare())}| ------> | |
292-
| | <------ | disposition( <br/> first=0, last=0, <br/>state=Declared(<br/>txn-id={transaction ID}<br/>))|
293-
| transfer(<br/>handle=1,<br/>delivery-id=1, <br/>**state=<br/>TransactionalState(<br/>txn-id=0)**)<br/>{ payload }| ------> | |
294-
| | <------ | disposition( <br/> first=1, last=1, <br/>state=**TransactionalState(<br/>txn-id=0,<br/>outcome=Accepted()**))|
291+
| `transfer(<br/>delivery-id=0, ...)<br/>{ AmqpValue (Declare())}`| ------> | |
292+
| | <------ | `disposition( <br/> first=0, last=0, <br/>state=Declared(<br/>txn-id={transaction ID}<br/>))`|
293+
| `transfer(<br/>handle=1,<br/>delivery-id=1, <br/>**state=<br/>TransactionalState(<br/>txn-id=0)**)<br/>{ payload }`| ------> | |
294+
| | <------ | `disposition( <br/> first=1, last=1, <br/>state=**TransactionalState(<br/>txn-id=0,<br/>outcome=Accepted()**))`|
295295

296296
#### Disposing a message in a transaction
297297

298298
Message disposition includes operations like `Complete` / `Abandon` / `DeadLetter` / `Defer`. To perform these operations within a transaction, pass the `transactional-state` with the disposition.
299299

300300
| Client (Controller) | Direction | Service Bus (Coordinator) |
301301
| :--- | :---: | :--- |
302-
| transfer(<br/>delivery-id=0, ...)<br/>{ AmqpValue (Declare())}| ------> | |
303-
| | <------ | disposition( <br/> first=0, last=0, <br/>state=Declared(<br/>txn-id={transaction ID}<br/>))|
304-
| | <------ |transfer(<br/>handle=2,<br/>delivery-id=11, <br/>state=null)<br/>{ payload }|
305-
| disposition( <br/> first=11, last=11, <br/>state=**TransactionalState(<br/>txn-id=0,<br/>outcome=Accepted()**))| ------> |
302+
| `transfer(<br/>delivery-id=0, ...)<br/>{ AmqpValue (Declare())}`| ------> | |
303+
| | <------ | `disposition( <br/> first=0, last=0, <br/>state=Declared(<br/>txn-id={transaction ID}<br/>))`|
304+
| | <------ |`transfer(<br/>handle=2,<br/>delivery-id=11, <br/>state=null)<br/>{ payload }`|
305+
| `disposition( <br/> first=11, last=11, <br/>state=**TransactionalState(<br/>txn-id=0,<br/>outcome=Accepted()**))`| ------> |
306306

307307

308308
## Advanced Service Bus capabilities

articles/service-bus-messaging/service-bus-auto-forwarding.md

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
---
22
title: Autoforwarding Azure Service Bus messaging entities
33
description: This article describes how to chain an Azure Service Bus queue or subscription to another queue or topic.
4-
ms.topic: article
5-
ms.date: 07/27/2022
4+
ms.topic: concept-article
5+
ms.date: 11/12/2024
66
ms.custom: devx-track-csharp
7+
# Customer intent: I want to learn how to automatically forward messages received by one entity to another entity in Azure Service Bus.
78
---
89

910
# Chaining Service Bus entities with autoforwarding
@@ -23,7 +24,7 @@ You can use autoforwarding to scale out an individual topic. Service Bus limits
2324
![Diagram of an autoforwarding scenario showing a message processed through an Orders Topic that can branch to any of three second-level Orders Topics.][0]
2425

2526
### Decouple message senders from receivers
26-
You can also use autoforwarding to decouple message senders from receivers. For example, consider an Enterprise Resource Planning (ERP) system that consists of three modules: order processing, inventory management, and customer relations management. Each of these modules generates messages that are enqueued into a corresponding topic. Alice and Bob are sales representatives that are interested in all messages that relate to their customers. To receive those messages, Alice and Bob each create a personal queue and a subscription on each of the ERP topics that automatically forward all messages to their queue.
27+
You can also use autoforwarding to decouple message senders from receivers. For example, consider an Enterprise Resource Planning (ERP) system that consists of three modules: order processing, inventory management, and customer relations management. Each of these modules generates messages that are enqueued into a corresponding topic. John Doe and Jane are sales representatives who are interested in all messages that relate to their customers. To receive those messages, John Doe and Jane Doe each create a personal queue and a subscription on each of the ERP topics that automatically forward all messages to their queue.
2728

2829
![Diagram of an autoforwarding scenario showing three processing modules sending messages through three corresponding topics to two separate queues.][1]
2930

@@ -47,7 +48,7 @@ If Alice goes on vacation, her personal queue, rather than the ERP topic, fills
4748
- Source queue tries to forward messages to the destination entity in the same order it received, but the destination could be a topic that doesn't support ordering. If either the source or destination entity is a partitioned entity, order isn't guaranteed.
4849

4950

50-
## Next steps
51+
## Related content
5152
To learn how to enable or disable auto forwarding in different ways (Azure portal, PowerShell, CLI, Azure Resource Management template, etc.), see [Enable auto forwarding for queues and subscriptions](enable-auto-forward.md).
5253

5354

0 commit comments

Comments
 (0)