0

After performing CICD from dev to qa of ADF, all other resources are in place but linked service didnot setup properly with the following error

The data factory Data-Factory-Ds-qa has no MI provisioned. Please update the data factory following: https://docs.microsoft.com/en-us/azure/data-factory/data-factory-service-identity#generate-service-identity-using-powershell The managed identity of entity data-factory-Ds-qa was not found.

What does this error mean ? and how to resolve it .

Screenshot attached of LS connection. Screenshot attached of LS connection.

11
  • Hi there, May I know if you have been using Azure Data Factory pipeline or Azure DevOps pipeline for CI/CD? Thx. Commented May 10, 2024 at 1:32
  • Hi . I am using Azure Devops pipeline for CICD Commented May 10, 2024 at 6:11
  • Thanks for the reply. Assuming your Azure DevOps pipeline was using ARM json templates to deploy ADF entities from dev to qa, there should be no error during deployment, right? Have you tested to deploy the same templates via Azure Portal or Azure CLI to see if the issue is reproducible? It is helpful for us to narrow down the cause of the issue. Thx. Commented May 10, 2024 at 6:36
  • Hi @AlvinZhao-MSFT. I have successfully deployed from dev to qa. In Adf-qa, all the linked services and pipelines are pushed. However, After I make connection to Git on new branch say qa-branch. Here , The linked services ain't coming up. what could have went wrong? Commented May 10, 2024 at 7:16
  • 1
    So, the issue was irrelevant to the AzureKeyVault1 link service in your screenshot, right? From the error message itself, it seemed your qa ADF instance hadn't enabled Managed Identity. May I know if your dev and qa environments are two ADF instances? If yes, you may navigate to the qa ADF resource under your Azure Subscription in Azure Portal -> select the Settings section and Managed identities blade -> check if the System assgined managed identity status is turned On. Commented May 10, 2024 at 7:57

1 Answer 1

1

Update

The issue was irrelevant to which type of linked service type was selected. I could reproduce the issue by disabling the Managed identities (MI) feature for the Azure Data Factory resource, which resulted in the lack of service principal to authenticate access to Azure Key Vault secrets on behalf of the SQL server linked service. Hence even given the linked service type of SQL Server, the issue was also reproducible, when the Azure Data Factory Instance was not enabled with MI.

Image

Please enable the MI feature for your qa instance by navigating to this Azure Data Factory resource under your subscription in Azure Portal following the steps in the image below.

Image

Since it will generate a new service principal (system assigned MI) in your AAD, please also grant the MI with the required permission according to your need to retrieve secrets from the Azure Key Vault.

Image Once the above steps were completed, the linked service of SQL server was able to authenticate against the system assigned MI to access the Azure Key Vault and proceed to list secrets with different versions.

Image


I could only reproduce the issue when the System Assigned managed identity of the target ADF instance was disabled. After the ARM template deployment via Azure DevOps pipeline completed successfully, I could see the entities like linked services, pipelines and triggers were published. However, when clicking on the Test connection button of my linked service of AzureSqlDatabase1, I encountered the error in the screenshot below.

Image

To fix the issue, I navigated to the target ADF resource under my subscription in Azure Portal and enabled the System assigned managed Identity for it. Since it will create a new enterprise app in your AAD, please grant the new service principle with required permissions to access your linked services. enter image description here

Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.