无法使用Visual Studio 2015运行Azure数据工厂管道

时间:2018-04-23 10:38:51

标签: azure azure-data-factory

我已按照Azure文档步骤创建从Blob到SQL的简单复制数据工厂。

现在我想通过VS代码运行管道。 我检查了身份验证密钥,分配的角色是正确的。

以下是代码 -

var context = new AuthenticationContext("https://login.windows.net/" + tenantID);
ClientCredential cc = new ClientCredential(applicationId, authenticationKey);
AuthenticationResult result = context.AcquireTokenAsync("https://management.azure.com/", cc).Result;
ServiceClientCredentials cred = new TokenCredentials(result.AccessToken);
var client = new DataFactoryManagementClient(cred) { SubscriptionId = subscriptionId };

Console.WriteLine("Creating pipeline run...");
var st = client.Pipelines.Get(resourceGroup, dataFactoryName, pipelineName);
CreateRunResponse runResponse = client.Pipelines.CreateRunWithHttpMessagesAsync(resourceGroup, dataFactoryName, pipelineName).Result.Body;
Console.WriteLine("Pipeline run ID: " + runResponse.RunId);

但是,我得到Forbidden error

  

对象ID为'xxxx'的客户端'xxxx'无权执行操作'Microsoft.DataFactory / factories / pipelinelines / read'over scope'/ subscriptions / xxxxx / resourceGroups /'

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

  

我该如何解决这个问题?

根据异常消息,它表明您没有将相应的角色分配给应用程序以访问数据工厂。

我使用Azure Datafactory(V2)测试您的代码,它可以正常工作。以下是我的详细步骤。

  1. Registry an Azure AD WebApp application

  2. Get the clientId and clientscret from created Application

  3. 指定应用程序的角色以访问datafactory。

  4. enter image description here

    1. 我身边的测试代码。

      enter image description here