cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
lkaspar
Resolver I
Resolver I

Azure API Management Custom Connector in Dataverse for Teams (D4T) Environment

Hi All

 

We've created a custom connector using Azure API Management as outlined in this blog post. The custom connector then gets exported to our Development (full Dataverse environment, this connector is called BusinessCentral) and the Dataverse for Teams environment (this one is called BusinessCentralTeams - more on that later). The big benefit of this is that users without a per-app or per-user can use the connector within Microsoft Teams.

 

The development of the app is done in a full Dataverse environment and then deployed downstream as a managed solution. At this point the BusinessCentral custom connector is part of the managed solution. When importing into the Dataverse for Teams environment, non-licensed users get a 'You require a premium license' error when opening the app. This is despite the fact that when opening the canvas app in the editor, the connection is not marked as premium.

 

lkaspar_2-1653458103040.png

 

The current workaround is to create an unmanaged layer in the Dataverse for Teams environment and do the following in the app:

 

1. Remove the BusinessCentral connection (when searching for it, it's marked premium)

2. Add the BusinessCentralTeams connector

3. Re-publish the app

 

lkaspar_3-1653458354182.png

 

 

This will remove the message for users and allow them to use the app.

 

The biggest downside is that it makes the deployment process complex and error-prone:

 

1. Import Managed Solution

2. Remove unmanaged layer

3. Edit the app and switch connections

4. Re-publish

 

Users also need to re-consent to the custom connector every time after completing this process (I think this can be solved by switching to oAuth).

 

The two connectors are obviously identical. The only difference is that one got deployed to a full Dataverse environment and then deployed as a managed solution. The other was directly deployed to a Dataverse for Teams environment from Azure API Management.

 

Question for the community/Microsoft:

 

How can we avoid having to create the unmanaged layer? Is there something I can configure in our Development environment prior to deployment? 

 

Any advise would be most welcome.

 

@mods - please move if this post should be in a different board

1 REPLY 1
lkaspar
Resolver I
Resolver I

Anyone?

Helpful resources

Announcements
October Events

Mark Your Calendars

So many events that are happening this month - don't miss out!

Ignite 2022

WHAT’S NEXT AT MICROSOFT IGNITE 2022

Explore the latest innovations, learn from product experts and partners, level up your skillset, and create connections from around the world.

Power Apps Africa Challenge 2022

Power Apps Africa Challenge

Your chance to join an engaging competition of Power Platform enthusiasts.

Top Solution Authors
Top Kudoed Authors
Users online (3,771)