您好,
我正在尝试使用powershell命令在ADLS(Azure DataLakeStore)中设置AAD(Azure Active Directory)应用程序权限(读/写/执行和其他设置)。
我尝试使用下面的powershell命令:
Set-AzureRmDataLakeStoreItemAclEntry -AccountName“adls”-Path / -AceType User -Id(Get-AzureRmADApplication -ApplicationId 490eee0-2ee1-51ee-88er-0f53aerer7b).ApplicationId -Permissions All
但是此命令在ADLS中的“Access”属性下设置/显示ApplicationId,仅具有读/写/执行访问权限。但是,当我在ADLS中执行“服务验证的手动”步骤时,此设置不正确。
有没有其他方法可以在ADLS中设置AAD应用程序的权限?
答案 0 :(得分:2)
User
命令的参数Set-AzureRmDataLakeStoreItemAclEntry
应该是要修改ACE的AzureActive Directory用户,组或服务主体的对象ID。
您可以参考以下命令分配权限:
Set-AzureRmDataLakeStoreItemAclEntry -AccountName "accountName" -Path / -AceType User -Id
(Get-AzureRmADServicePrincipal -ServicePrincipalName "{applicationId}").Id -Permissions All
有关此命令的更多详细信息,请参阅以下链接:
答案 1 :(得分:1)
您需要将ObjectId(不是应用程序ID)设置为Set-AzureRmDataLakeStoreItemAclEntry
Set-AzureRmDataLakeStoreItemAclEntry -AccountName "adls" -Path / -AceType User -Id (Get-AzureRmADApplication -ApplicationId 490eee0-2ee1-51ee-88er-0f53aerer7b).Id -Permissions All