Get a Microsoft Entra token and use it send events to an event hub
See Authenticate from an application for an overview of getting a Microsoft Entra token.
This article gives you an example of getting a Microsoft Entra token that you can use to send events to and receive events from an Event Hubs namespace. It uses the Postman tool for testing purposes.
- Follow instructions from Quickstart: Use Azure portal to create an event hub on Azure to create an Event Hubs namespace and an event hub in the namespace.
- Download and install Postman desktop app.
First step is to register your application with the Microsoft Entra tenant and note down the values of tenant ID, client ID, and client secret. You use these values latest when testing the REST API using the Postman tool.
Sign in to the Azure portal.
In the search bar, search for Microsoft Entra ID, and select it from the drop-down list.
On the Microsoft Entra ID page, select App Registrations link on the left menu, and then select + New registration on the toolbar.
Enter a name for the app, and select Register.
On the home page for the application, note down the values of Application (client) ID and Directory (tenant) ID. You use these values to get a token from Microsoft Entra ID.
Now, select Certificates & secrets on the left menu, and select + New client secret.
Enter a description, select when the secret will expire, and select Add.
Select the copy button next to the secret value in the Client secrets list to copy the value to the clipboard. Paste it somewhere. You use it later to get a token from Microsoft Entra ID.
In this example, we're only sending messaging to the event hub, so add the application to the Azure Event Hubs Data Sender role.
On the Event Hubs Namespace page, select Access control from the left menu, and then select Add on the Add a role assignment tile.
On the Add role assignment page, select Azure Event Hubs Data Sender for Role, and select your application (in this example, ServiceBusRestClientApp) for the service principal.
Select Save on the Add role assignment page to save the role assignment.
Launch Postman.
For the method, select GET.
For the URI, enter
https://login.microsoftonline.com/<TENANT ID>/oauth2/token
. Replace<TENANT ID>
with the tenant ID value you copied earlier.On the Headers tab, add Content-Type key and
application/x-www-form-urlencoded
for the value.Switch to the Body tab, and add the following keys and values.
Select form-data.
Add
grant_type
key, and typeclient_credentials
for the value.Add
client_id
key, and paste the value of client ID you noted down earlier.Add
client_secret
key, and paste the value of client secret you noted down earlier.Add
resource
key, and typehttps://eventhubs.azure.net
for the value.
Select Send to send the request to get the token. You see the token in the result. Save the token (excluding double quotes). You use it later.
In Postman, open a new tab.
Select POST for the method.
Enter URI in the following format:
https://<EVENT HUBS NAMESPACE NAME>.servicebus.windows.net/<QUEUE NAME>/messages
. Replace<EVENT HUBS NAMESPACE NAME>
with the name of the Event Hubs namespace. Replace<QUEUE NAME>
with the name of the queue.On the Headers tab, add the following two headers.
On the Body tab, select raw for the data type, and enter
This is a message
or any message for the body.Select Send to send the message to the queue. You see the status as
Created
with the code 201 as shown in the following image.On the namespace page in the Azure portal, you can see that the messages are posted to the queue.
See the following articles: