Adventures with Dataverse: Playing with Security Roles

In a previous post, Adventures with Dataverse: Migrating Microsoft SQL Server Tables to Dataverse Tables – Matt Ruma, I walked through migrating a SQL Database to Microsoft Dataverse. In this post, I want to look at adding security roles to control access to the Dataverse entities. The first security role I will create is for…

Adventures with Power Apps: Create a Custom Connector for an API Hosted in Azure APIM Secured with Azure AD

I have an API hosted in Azure APIM with a jwt-policy that validates against Azure AD, boy, that was a mouthful! My jwt-policy is located in the All Operations for my API. I created an app registration for my API. I gave it a more “friendly” Application ID URL and exposed an API in the…

Adventures with Azure: Where is My Service Principal?

When working with the Azure Portal, sometimes the simple tasks can seem difficult to accomplish. In a recent project I needed to to wire up an Azure Key Vault task to retrieve secrets for a deployment in Azure DevOps. In order for the deployment to be able to retrieve the Azure Key Vault secrets the…

Adventures with Azure AD: Group Overage Claim

I have an ASP.NET Core 2.2 Web App. My app authenticates users with OpenIdConnect against Azure Active Directory. I want to use the Security Groups of the authenticated user for role authorization inside my app. To do this, I needed to setup my App Registration in Azure AD to return the Security Groups as claims….

Adventures with Azure AD: Authorizing based on Security Groups

The repository https://github.com/mattruma/SampleAzureADAuthentication has a couple of a sample ASP.NET MVC Core 2.2 applications demonstrating how to authenticate a user against Azure AD and authorize a user based on Security Groups in Azure AD. The first example uses a custom IAuthorizationFilter to look at the groups in principal claims. The second example uses a custom…