Recapping Integrate 2020

Last week I’ve attended the Integrate conference once again. It was my 5th time attending the conference, and the 4th time I’ve participate as a speaker.

But Integrate 2020  was quite a different experience from the last years. Dubbed Integrate 2020 Remote, to reflect the fact that was yet another event that had to adapt to the pandemic reality that assaulted the planet since the end of last year. Kovai, the company formerly know as BizTalk 360, and the event organizer since its inception in 2012, took some time to decide that the event would go ahead, but when decided that it would be in a new format, didn’t pull any stops to get it running. With almost 1000 online attendees – which is impressive for a paid event, Integrate 2020 had 28 speakers, between Microsoft Program Managers and Microsoft MVPs and as many technical sessions distributed across three days.

Continue reading “Recapping Integrate 2020”

MS Build Recap – The AIS Edition

This year’s MS Build was very different – we all know that. But for most of us, me included, was the first opportunity to join the event officially. And what event it was.

Ran across three time zone, with a mix of live sessions, Teams Live events and smaller Teams events, like focus groups, which allowed the attendees to really interact with the product groups and advocates from Microsoft.

This year there were some interesting announcements around the Azure Integration Services technologies. I’ve recently shared those announcements on a Auckland Azure User Group meetup, and thought that, since I already had everything collated, it would be a good idea to just share this with you on the blog as well. So, let’s talk about what is now available, or just \around the corner for AIS

Continue reading “MS Build Recap – The AIS Edition”

API Management – Restrict Operation Access per Product

Last week I had an interesting request from a client. They have been creating generic APIs, using a variety of different backend systems (on-prem APIs, Azure Functions, Logic Apps, cloud APIs). Those APIs were grouped by product but even within a product they would like to restrict access to only some operations, so product A would have access to a group of operations, while product B would have access to different group. Initially I thought that role based access driven by claims, but the issue was that we didn’t have control of the identity providers, or the back end services. In the end we would have to find a solution within API Management to create this ACL like style.

Initally I didn’t like the idea to create our own access controls in APIM, but faced with the other constraints, I slowly warmed up to the idea and learned a couple of things about policies along the way.

Continue reading “API Management – Restrict Operation Access per Product”

Upgrading BizTalk 2013 to BizTalk 2020

Wow, it has been a long while since I wrote a post about good old BizTalk! But we had some interesting findings this week trying to run an in-place upgrade from BizTalk Server 2013 to BizTalk Server 2020.

I know that in-place upgrade is one of the cardinal sins of BizTalk, together with not running the BizTalk database jobs or having a single host to rule them all! But before you take my BizTalk fan club membership card, just understand that we had 5 different environments and so much red tape and reconfiguration for a side by side upgrade, that it was worth taking the risk.

And here is what we found during this process. I say we because although I helped troubleshooting, one of the best consultants from my team, Peter Kenyon, had the pleasure of experience this particular kind of hell – I am pretty sure I owing lunch after all of that…

Continue reading “Upgrading BizTalk 2013 to BizTalk 2020”

2019 – A year in review

Well, it is 31 December 03 January 2020, so it is the official time for a stock take of 2019. I’ve acomplished a lot of things I wanted to do this year, while couldn’t carve time for some other things I would like to do, which I will have to prioritize in 2020. So instead of a long post, here is a list of things I am really proud and things I want to concentrate more:

Continue reading “2019 – A year in review”

Event Grid Advanced Filtering on Logic Apps

“It was the week before Christmas, and…” and I was actually super busy! One of my main tasks on that week was to implement notifications when a legacy Dynamics AX, still running on-premises, had orders ready to delivery.

My solution was relatively simple (although needed to be generic enough to include other notifications later):

Solution diagram

I had a very simple event data being provided by the notification repository:

{
  "NotificationId": "NOT-00001",
  "NotificationType": "SalesOrder.Delivery",
  "CustomerId": "CUST-001",
  "Status": "New",
  "LastModifiedDateTime": "2019-12-20T11:02:28.13"
}

I thought that it was quite an easy setup, but I got stuck for a while setting up the Event Grid Logic App trigger. Why? I was expecting that the trigger would support advanced filters out of the box, on the designer experience, but that’s not the case.

Continue reading “Event Grid Advanced Filtering on Logic Apps”

API Management – Arc Enabled

API Management what enabled? If you haven’t keeping up with the news from MS Ignite 2019, the title might be a bit confusing. Arc (not A.R.C as I read it initially) is a new Service in Azure that allow customer to deploy and manage Azure Services anywhere – and anywhere in this case means any cloud, on-premises infrastructure and at the edge. You can find more about that service here.

During MS Ignite, the API Management team launched the public preview of a new feature, that takes advantage of the Arc technology to deploy API Management gateways anywhere. So let’s take a look of what that looks like.

Continue reading “API Management – Arc Enabled”

I know what you did on your holiday…

Today is officially the last day of my holiday in Brazil with the whole family. We spent four weeks between mine and my wife’s home city, visited family and friend, visited some places that I haven’t before even living in the state most of my life and showed the kids some of our favorite spots.

But I also wrote a blog post, submitted five talks to Ignite, participated in to MVP calls, had a couple of meetings with people at work, replied to my work email to prevent projects go the wrong way.

So, at the end of the trip, I started thinking… With so much focus on quality time and really unplugging during your holiday, this days, should I have done that? Did I really enjoyed this trip as much as I should have?

Continue reading “I know what you did on your holiday…”

Managing personal office communication with MS Flow

It’s 10:00 am of a Wednesday and I am in my childhood home, having a chat with my dad and spending some time relaxing. As it is raining today, beach is not an option, and cinema is scheduled for later today.

So what better to pass the time until later than write a light post? So, instead of focusing on AIS or some “enterprise like” technology, I decided to talk about something I made to make my life simpler, using Microsoft Flow, Teams and Outlook – my ultimate out of office communication.

The requirements

For a bit of background, at Theta we had a long time tradition to indicate people whereabouts on email using a tag like OUT (out in a client), WFH (working from home), etc. That came from the time where the team was quite small and email was the main method of communication. With the team growing, earlier this year we made a request for people to move that kind of notification to Teams, on Theta’s General channel. But then I thought – why do I have to connect to teams to do that every time? There should be a better way…

In the end, the better way for me was a Flow button that allowed me to decide exactly what I wanted to do – I designed the flow to do the following:

  • Choose the type of notification I wanted to send:
    • Out of Office (OUT)
    • Working from Home (WFH)
    • Sick Leave (SICK)
    • Late to Work (LATE)
  • Have an optional text explaining the reason for the notification
  • Send an email to my manager indicating my whereabouts.
    • Optionally, send a copy of the email I send to my manager to a list of people I chose.
  • Optionally, turn on automatic replies and adjust the text and the duration of the automatic replies.
Continue reading “Managing personal office communication with MS Flow”

API call with client certificate policy failing to execute due to message size on Azure API Management

Well, that is a mouthful of a title, but I wanted to capture the exact issue, because I couldn’t find any page to help with this specific error and managed to get it fixed thanks to Vladimir Vinogradsky pointing me out to a tip in one of the APIM docs.

So my scenario was this: my team was working on an API that is protected with a client certificate policy – quite simple, very straightforward. At the API level it had the following policy:

Continue reading “API call with client certificate policy failing to execute due to message size on Azure API Management”