如何通过Power BI REST API为数据源设置Databricks访问密钥?
解决Power BI REST API设置Databricks访问密钥凭证的问题
核心问题:接口路径错误
你当前调用的是本地网关数据源更新接口,但你的Databricks属于云原生资源,对应Power BI云数据源,正确的操作应该调用数据集级别的数据源凭证更新接口,而非网关接口。
正确操作步骤
1. 使用正确的API路径
替换原有的PATCH请求路径为:
PATCH https://api.powerbi.com/v1.0/myorg/groups/{groupId}/datasets/{datasetId}/datasources/{datasourceId}
将{groupId}、{datasetId}、{datasourceId}替换为你之前获取到的实际值。
2. 修正请求体格式
原请求体中credentialDetails被错误转义为字符串,且云数据源无需手动指定加密算法。正确的请求体如下:
{ "credentialDetails": { "credentialData": [ { "name": "key", "value": "dapiXXXXX-X" } ], "credentialType": "Key", "privacyLevel": "None" } }
3. 验证请求权限
确保请求头包含有效的Authorization: Bearer <你的访问令牌>,且令牌具备Dataset.ReadWrite.All权限或对应数据集的读写权限。
原操作失败原因
- 云数据源返回的
gatewayId是Power BI内部云网关标识,并非本地网关,调用本地网关API会触发未知错误。 - 只有本地网关需要手动获取公钥加密凭证,云数据源由Power BI自动处理加密流程,无需设置
encryptionAlgorithm。
内容的提问来源于stack exchange,提问作者wrschneider
相关产品推荐
相关产品推荐

