What is requesting my azure servicebus queue - azure

I am using a service bus queue that uses sessions, and currently, something is receiving and deleting my messages.
The problem is that I don't know what is requesting the service bus queue.
Is there someway for me to see what/who is requesting my Azure service bus queue?
let me know if you need more information.

If you have shared the SAS token and now you don't want to do that. I recommand that you could regenerate the policy key from Azure portal.

Related

Service Bus or Queue Processing

Probably a stupid question.
Generally what is the best approach to have a program listening to an MQTT feed (done), placing messages onto a queue or service bus and then have those automated processed via Azure?
How would I process the messages on a queue? Is there a way for some Azure function/feature to automatically then put that into a storage account and a database after some manipulation? Generally what's the best approach? Ideally using C#.
Feed listens for data feeds (done)
Puts message onto queue or service bus (easily done)
Something on Azure will take that item and put it on a Storage Account and Cosmos database. (stuck on best appoach)
Thanks.
You just need to add a message no a Service Bus Queue or Storage Account Queue. Both provide bindinds for Azure Functions, which would be the consumer. Also using Azure functions, you can use output bindings and persist to Storage Account (blob) or Cosmos DB.
Here are useful links:
https://learn.microsoft.com/en-us/azure/azure-functions/functions-bindings-cosmosdb?tabs=csharp
https://learn.microsoft.com/en-us/azure/azure-functions/functions-bindings-storage-blob
https://learn.microsoft.com/en-us/azure/azure-functions/functions-bindings-service-bus

How to secure "Azure Storage Queues" for each tenant?

I'm building a queue messaging system in Azure and what I'm trying to do is an outbound message queue container in Azure Storage Queue that allows my desktop Windows Services to get the latest messages from that queue. The problem I'm facing is that I want to have multiple queues per tenant (each Windows service serves one client) in one storage account. As far as I see, there is no way to restrict the connection string access to each queue. On the other hand, it is not practical for me to create one storage account per tenant. What is the best way to restrict client access to one specific queue with the current security methods available in Azure? I was thinking about using Service Bus Queues, but even that doesn't solve the connection string issue I have in the client application.
I think service bus queues is your answer; they allow a multi-subscriber model with "subjects" and various filters etc.
Storage queues are very simplistic and are not the right answer for this particular scenario.
Sorry, on my mobile so haven't got all the relevant docs to hand.
One option is to use AAD identities and Storage's AAD authentication support (which is currently in public preview).
You would need a Service Principal in Azure AD for each tenant for this,
and add the principal to the Storage Queue Data Reader or Storage Queue Data Contributor role on their respective queue.
You can then use the principal's credentials to get an access token that is tenant-specific.
Documentation:
https://azure.microsoft.com/en-us/blog/announcing-the-preview-of-aad-authentication-for-storage/
https://joonasw.net/view/azure-ad-authentication-with-azure-storage-and-managed-service-identity

Is it possible to send messages to msmq from azure web app

I would like to setup an azure web service and an azure vm that is running msmq. Can I send messages to the vm's msmq? I noticed in the documentation for msmq on azure, that sending messages with http to msmq on azure is not supported, but I thought there might be some other means of sending messages to msmq from an azure web app.
Has anyone actually set this up? If this is not possible do we need to use service bus instead?
I would suggest you to use Azure Storage Queue or Azure Service Bus Queue instead of MSMQ. But still if you want to use MSMQ on Azure Virtual Machine, you have the official documentation here.
Also, the difference between storage queue and service bus queue is here, so you can check out which one suits you the best.

Using Azure Service Bus in a user subscription model

How would you go about using Service Bus in a scenario where only client applications with unexpired subscriptions can receive messages from the service bus? Let's say you have a paid service where users can buy subscriptions to your messages for a period of time, so you want your service bus to send new messages only to a selected group of clients (clients with active subscriptions). It is much preferred if authorization for this is done on the server side and not on the client app. Looking at the service bus models (queues, topics, relays), none of them seem to fit this use case.
One way I was thinking to implement this was to change the SAS Key every day and get client applications to query the SAS key from a Web API. So only clients with valid subscriptions can refresh their SAS and receive from the service bus. I don't know if SAS could be changed through the API, though.
Is there any better support for this kind of scenario in Azure Service Bus, or can you think of a better way to implement it?

Pattern to determine if a specific message is still queued in an Azure Service Bus

I have a pusher which brokers message x into an Azure Service bus. This is a customer request for some order.
A consumer comes along and wants to know "what is the state of message x"? I'd like to know as much as I can about message x, but at a minimum I need to answer "yes/no" is it still in the queue? Is there a recommended pattern for this within Azure Service Bus?
In View content of an Azure Service Bus queue Clemens Vasters explains that there is no browse feature available in Service Bus Queues/Topics at the moment. The only way to know the state is by storing it externally (take Table Storage for example).

Resources