ADLS Gen-2。从有关邮递员创建新文件系统的PUT请求中获取AuthorizationPermissionMismatch错误

时间:2019-06-25 07:13:23

标签: java azure postman azure-data-lake

我通过以下POST请求登录到adls gen 2: https://login.microsoftonline.com/ / oauth2 / v2.0 / token

请求正文: grant_type:client_credentials

client_id:来自应用程序注册的my_client_id->拥有的应用程序-> Mu应用程序

client_secret:来自应用程序注册的my_client_secret->拥有的应用程序->我的应用程序

范围:https://storage.azure.com/.default

provider_type:org.apache.hadoop.fs.azurebfs.oauth2.ClientCredsTokenProvider

并获得成功的响应代码200: {     “ token_type”:“承载者”,     “ expires_in”:3599,     “ ext_expires_in”:3599,     “ access_token”: }

尝试使用以下PUT请求创建文件系统后: https://dbmiadlsgen2.dfs.core.windows.net/mydata?resource=filesystem

标题: 授权-承载 内容类型-文本/纯文本 x-ms-version-2018-11-09

并出现以下错误:

{     “错误”:{         “ code”:“ AuthorizationPermissionMismatch”,         “ message”:“此请求无权使用此权限执行此操作。\ nRequestId:bcb4c0d3-901f-00cc-0722-2b7f0c000000 \ n时间:2019-06-25T06:54:57.3437434Z”     } }

我从azure门户网站吸引了我的用户: 存储Blob数据贡献者角色,但没有帮助...

您如何看待我应该扮演什么样的角色?或某些请求正文或标题参数是否不正确? 谢谢。

1 个答案:

答案 0 :(得分:1)

仅将应用和帐户添加为所有者是不够的,我建议您转到storage account > IAM > Add role and add the special permission进行此类请求,STORAGE BLOB DATA CONTRIBUTOR

有关更多参考,请访问:

https://docs.microsoft.com/en-us/azure/storage/common/storage-auth-aad-app

希望有帮助。