azure analyis service使用Azure数据工厂中的.NET Activity处理如何从Azure获取ServicePrincipalAuth信息

时间:2017-09-21 09:21:19

标签: azure azure-data-factory azure-analysis-services

以下Azure参考站点,用于分析服务处理服装.NET活动

https://github.com/Azure/Azure-DataFactory/tree/master/Samples/AzureAnalysisServicesProcessSample

在这个例子中,我们有Pipeline to Process Cube

`       "TabularDatabaseName": "<DATABASE_NAME>",
        "AzureADAuthority": "https://login.windows.net/<TENANT_ID>",
        "AzureADResource": "https://<LOCATION>.asazure.windows.net",
        "AzureADClientId": "<CLIENT_ID>",
        "AzureADClientSecret": "<CLIENT_SECRET>"` 

首先我们需要知道如何获取AzureADResource和AzureADAuthority信息。

当我们传递硬编码密码而不是{0)

时,此管道也正常工作

所以我们不明白问题出在哪里。是我们在这里提供的ServicePrincipalAuth是正确的还是必须提供密码

此致 和Manish

1 个答案:

答案 0 :(得分:0)

请遵循MSDN中的这篇文章,其中提到了如何在AD中创建应用程序并创建AD服务主体。

https://docs.microsoft.com/en-us/azure/data-factory/data-factory-create-data-factories-programmatically

步骤7将返回AD服务主体。

此外,为了能够运行管道,在创建与ADF的连接时需要客户端,这需要客户端ID,客户端密钥,订阅ID和租户ID。

这是我为ADF创建客户端的方式。

# Create example data frame
species <- c("a","a","a","b","b","b","c","c","c","d","d","d","e","e","e","f","f","f","g","h","h","h","i","i","i")
category <- c("h","l","m","h","l","m","h","l","m","h","l","m","h","l","m","h","l","m","l","h","l","m","h","l","m")
minus <- c(31,14,260,100,70,200,91,152,842,16,25,75,60,97,300,125,80,701,104,70,7,124,24,47,251)
plus <- c(2,0,5,0,1,1,4,4,30,1,0,0,2,0,5,0,0,3,0,0,0,0,0,0,4)
df <- data.frame(species, category, minus, plus, stringsAsFactors = FALSE)

# Load packages
library(dplyr)
library(purrr)

# Process the data
df2 <- df %>%
  group_by(species) %>%
  slice(c(1, 2, 1, 3, 2, 3)) %>%
  mutate(test = rep(1:(n()/2), each = 2)) %>%
  group_by(species, test) %>%
  do(data_frame(species = first(.$species),
                test = first(.$test[1]),
                category1 = first(.$category),
                category2 = last(.$category),
                data = list(matrix(c(.$minus, .$plus), ncol = 2)))) %>%
  mutate(chi_test = map(data, chisq.test, correct = FALSE)) %>%
  mutate(p.value = map_dbl(chi_test, "p.value")) %>%
  ungroup() %>%
  select(species, category1, category2, p.value)

df2
# A tibble: 25 x 4
   species category1 category2   p.value
     <chr>     <chr>     <chr>     <dbl>
 1       a         h         l 0.3465104
 2       a         h         m 0.1354680
 3       a         l         m 0.6040227
 4       b         h         l 0.2339414
 5       b         h         m 0.4798647
 6       b         l         m 0.4399181
 7       c         h         l 0.4714005
 8       c         h         m 0.6987413
 9       c         l         m 0.5729834
10       d         h         l 0.2196806
# ... with 15 more rows

从MSDN执行步骤时提供的应用程序名称将返回应用程序的名称,并记下应用程序名称&amp;通过Azure Active Directory在Azure门户上找到它 - &gt;应用注册 - &gt; 。与之对应的是您的应用程序ID,即客户端ID

要创建客户端密钥,请单击应用程序名称,然后转到“密钥”部分并添加密钥说明和验证并保存。保存后,将显示该值,这是您的客户端密钥。请注意,下次访问此页面时会显示,但当然,您可以创建另一个页面。

点击帮助 - &gt;可以下载租户ID 。显示诊断。将下载一个文件,您可以从中搜索租户ID。

希望这能解决你的问题!