Azure Event Hubs' documentation mentions such terms as client
and publisher
. For example, here
The Event Hubs security model is based on a combination of Shared Access Signature (SAS) tokens and event publishers. An event publisher defines a virtual endpoint for an event hub. The publisher can only be used to send messages to an event hub. It is not possible to receive messages from a publisher.
Typically, an event hub employs one publisher per client. All messages that are sent to any of the publishers of an event hub are enqueued within that event hub. Publishers enable fine-grained access control and throttling.
First, I thought that client
is e.g. some real device, which sends data to the Event Hub, and publisher
is the entry point in the Event Hub, which knows how to receive events from devices.
However, following place in the docs adds greater confusion.
Any entity that sends data to an event hub is an event producer, or event publisher. Event publishers can publish events using HTTPS or AMQP 1.0. Event publishers use a Shared Access Signature (SAS) token to identify themselves to an event hub, and can have a unique identity, or use a common SAS token.
So, what is the difference between them?