MDS Integration
On this page
- Set up Azure Relay
- Create WCF Relay
- Get management credentials
- Configure on-premises MDS server
- Verify configuration
In this article, you will learn how to expose on-premises MDS to CluedIn in Azure by using Azure Relay.
Prerequisites:
-
An outbound internet connection from on-premises MDS server.
-
Administrator access to on-premises MDS server for one-time reconfiguration.
-
An Azure subscription. If you don’t have one, create a free account before you begin.
Set up Azure Relay
-
Sign in to the Azure portal.
-
Select Create a resource.
-
Search for Relay. Then, select Create.
-
In the Subscription field, select an Azure subscription in which to create the namespace.
-
In the Resource group field, choose an existing resource group in which to place the namespace, or create a new one.
-
In the Name field, enter a namespace name.
-
In the Location field, select the country or region in which your namespace should be hosted.
-
Select Create.
The Azure portal creates your namespace and enables it. After a few minutes, the system provisions resources for your account.
Create WCF Relay
-
Select WCF Relays, and then select + WCF Relay.
-
In the Name field, enter mds.
-
In Relay Type, select Http.
-
Clear the Requires Client Authorization checkbox. Authorization will be performed by the MDS service itself.
-
Select Create.
Get management credentials
-
Select All resources, and then select the newly created namespace name.
-
Select Shared access policies, and then select RootManageSharedAccessKey.
-
In the SAS Policy: RootManageSharedAccessKey pane, do the following:
-
Select the Copy button next to Primary Connection String. This action copies the connection string to your clipboard for later use. Paste this value into Notepad or some other temporary location.
-
Select the Copy button next to Primary Key. This action copies the primary key to your clipboard for later use. Paste this value into Notepad or some other temporary location.
-
Configure on-premises MDS server
-
Using IIS, locate the physical path for the MDS website. The default location for SQL Server 2019 Master Data Services is
C:\Program Files\Microsoft SQL Server\150\Master Data Services\WebApplication
. -
Download WindowsAzure.ServiceBus from nuget and extract Microsoft.ServiceBus.dll to the bin folder in the previously located path.
-
Make the following modifications to the
web.config
file in the previously located path. Note that you may need to create the parent nodes if not already present.
Add the following behaviour to
system.serviceModel/behaviors/endpointBehaviors
.<behavior name="AzureRelay"> <transportClientEndpointBehavior> <tokenProvider> <sharedAccessSignature keyName="RootManageSharedAccessKey" key="[YOUR_KEY]"/> </tokenProvider> </transportClientEndpointBehavior> </behavior>
Add the
basicHttpRelayBinding
tosystem.serviceModel/bindings
.<basicHttpRelayBinding> <binding isDynamic="false"> <security mode="TransportWithMessageCredential" relayClientAuthenticationType="None"> <message clientCredentialType="UserName"/> </security> </binding> </basicHttpRelayBinding>
Add the following to the
system.serviceModel/services/service
node whosename
attribute matches your MDS service name. For a default install the name attribute will beMDS1
.<endpoint address="https://[YOUR_NAMESPACE].servicebus.windows.net/mds" binding="basicHttpRelayBinding" contract="Microsoft.MasterDataServices.Services.ServiceContracts.IService" behaviorConfiguration="AzureRelay"/>
Add the following to
system.serviceModel/extensions/behaviorExtensions
<add name="transportClientEndpointBehavior" type="Microsoft.ServiceBus.Configuration.TransportClientEndpointBehaviorElement, Microsoft.ServiceBus"/>
Add the following to
system.serviceModel/extensions/bindingExtensions
<add name="basicHttpRelayBinding" type="Microsoft.ServiceBus.Configuration.BasicHttpRelayBindingCollectionElement, Microsoft.ServiceBus"/>
Verify configuration
-
Verify the configuration by loading the service endpoint. For this, perform the sequence of steps as displayed on the following screenshot.
As a result, you will see the screenshot similar to the following.
-
Verify that the on-premises MDS service has registered successfully with the Relay.