Loading...

How to query Azure Monitor Log Analytics in Logic Apps with a Managed Identity and output results in a SharePoint list

How to query Azure Monitor Log Analytics in Logic Apps with a Managed Identity and output results in a SharePoint list

Azure Monitor Log Analytics is super powerful to collect data and give you insights on what’s going on with your apps and resources. There is even an Azure Monitor Logs connector for Logic Apps.

⚡ Very unfortunately, the connector doesn’t support authentication with a Managed Identity - which means that you’d need either to be a signed-in user or use an app registration, which comes with its own challenges on secret handling. I explained in my previous blog posts why Managed Identities are a way superior way to authenticate.

Azure Monitor connector

💡 Azure Log Analytics REST API to the rescue!

We can call the Azure Log Analytics REST API from Logic Apps with the generic HTTP action - and authenticate with a Managed Identity. For this example, I chose a user-assigned Managed Identity, so that you can reuse it across resources, but of course you can go with a system-assigned Managed Identity as well.

I wanted to create a sample on how to create a Logic App that queries Log Analytics with a user-assigned Managed Identity that has the Log Analytics Reader assigned. The Managed Identity also has Microsoft Graph permissions with scope Sites.ReadWrite.All assigned in order to create new items in a SharePoint list about the result of a query of Azure Monitor logs. That could be beneficial for users who don’t have access to the logs but should be notified or similar.

Deployment

  1. Fork and clone this repository
  2. Browse to the root folder in your clone
  3. Connect to the Azure subscription that you want this to run in
  4. Run the deploy.ps1 script, it will
    • create the resource group
    • create the resources
    • assign the Log Analytics role to the Managed Identity
    • assign Graph API Sites.ReadWrite.All permissions to the Managed Identity
  5. You will be prompted to provide
    • a location for your resources
    • a Resource group name
    • the siteID of the site your list lives in
    • the listId of the list in which new rows shall be created

Validate deployment

  1. Check in the Azure Portal after you read the success-message Resources deployed successfully, role assigned

    • Resource group
    • Logic App
    • Azure Log Workspace
    • Managed Identity

resource group

  1. In the Logic App, the Authentication works with the Managed Identity LogicApps-auth

  2. Our Managed Identity has the Log Analytics Reader role assigned Managed Identity

  3. Our Managed Identity has the SitesReadWrite.All permission assigned Graph permissions

Our Logic App should look like this:

complete Logic App

💡 Please make sure that you insert a query into the Logic app that makes sense depending on your scenario. Also adjust the body of the Create list item action to match your SharePoint list.

Conclusion

Connectors can be a good way to easily achieve what you need in Logic Apps. However, they sometimes don’t fit your scenario or don’t support your way of doing things - like I really like Managed Identities. Therefore, its always worth a try to call the API directly so that you do not need to rely on the wrapper.

Questions?

If you have questions, want to use this, make it better - please do! Find me either on twitter or on GitHub

sharing is caring

Published on:

Learn more
Luise Freese: Consultant & MVP
Luise Freese: Consultant & MVP

Recent content on Luise Freese: Consultant & MVP

Share post:

Related posts

Azure Developer CLI (azd) – May and June 2026

This is the combined May and June round-up for the Azure Developer CLI (azd). Nine releases shipped across the two months: 1.24.3, 1.25.0, 1.2...

4 hours ago

Which Azure Cosmos DB Role Does My App Need?

In the previous post in the series, we covered the security decisions you make on day one. In this part, we will talk about how to give your a...

16 hours ago

Find and fix app issues - Azure Copilot Observability Agent

Cut through alert noise and move from detection to root cause using the Azure Copilot Observability Agent. It autonomously investigates incide...

1 day ago

Azure Functions MCP Extension: What’s New at Build 2026

A roundup of what shipped in the Azure Functions MCP extension since preview: resource and prompt triggers, MCP Apps, built-in MCP authenticat...

1 day ago

Secure Boot certificate updates for Linux on Azure virtual machines

Microsoft has published new guidance for managing Secure Boot certificate updates for Linux on Azure virtual machines, including Trusted Launc...

2 days ago

Soluzione Earns Microsoft Solutions Partner Designation for Digital & App Innovation (Azure) 

Soluzione is pleased to announce that it has earned the Microsoft Solutions Partner designation for Digital & App Innovation (Azure). This...

2 days ago

Azure SDK Release (May 2026)

Azure SDK releases every month. In this post, you'll find this month's highlights and release notes. The post Azure SDK Release (May 2026) app...

3 days ago

How to Use Deep Agents with Azure Cosmos DB – Plan, act, and verify against operational data

Deep Agents is an agent harness built on LangGraph, for agents that need to work through a task over many steps instead of a single LLM call. ...

3 days ago

Retirement of Azure DevOps issuer in Workload identity federation service connections

We are announcing the deprecation of the Azure DevOps issuer in workload identity federation (WIF) service connections, with planned retiremen...

3 days ago
Stay up to date with latest Microsoft Dynamics 365 and Power Platform news!
* Yes, I agree to the privacy policy