azure - 无法授予 C :/directory for user in Azure pipeline (provisioning machine - vs2017-win2016) 写入权限

标签 azure azure-devops azure-pipelines azure-powershell azure-pipelines-build-task

我正在创建一个下载工件并安装它的管道,安装后会在 C:\目录中创建一些文件。 但是,运行安装的用户似乎没有在 C: 中创建文件夹的权限。如何授予在 Azure 管道上使用 powershell 或命令行在 Azure 中创建文件的权限?根据我的研究,其中一个命令将是下面的命令,但它在我的管道中不起作用(它在下面的任务中卡在该任务中大约 1 小时)。谁能告诉我出了什么问题吗?

这是我在管道上的任务:

- task: PowerShell@2
    inputs:
      targetType: 'inline'
      script: |
        $acl = Get-Acl C:
        $AccessRule = New-Object System.Security.AccessControl.FileSystemAccessRule("SYSTEM","CreateFiles","Allow")
        $acl.SetAccessRule($AccessRule)
        $acl | Set-Acl C:
        $acl = Get-Acl C:
        $AccessRule = New-Object System.Security.AccessControl.FileSystemAccessRule("VssAdministrator","CreateFiles","Allow")
        $acl.SetAccessRule($AccessRule)
        $acl | Set-Acl C:

我尝试过的: PowerShell To Set Folder Permissions How to set Write permission on a folder for Everyone Using Powershell How to change permissions for a folder and its subfolders/files in one step?

最佳答案

只是为了正确:

运行安装的用户是否是 VssAdministrator?

您尝试过“FullControl”吗?因为我认为“createfiles”还不够。

如果它是一个普通的系统 c: 分区,那么thrustedinstaller 就是所有者。也许您的设置没有应用?如果您执行 set-acl 然后调用 get-acl,它会显示您的设置吗?

这就是我会尝试的:

  • 尝试完全控制(之后您总是可以限制它) 。在 set 命令后检查 get-acl。

关于azure - 无法授予 C :/directory for user in Azure pipeline (provisioning machine - vs2017-win2016) 写入权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65030319/

相关文章:

powershell - 如何使用 Set-AzureStorageBlobContent 设置 ContentDisposition

azure - 将 Owin.Security.ActiveDirectory 库与 AAD B2C 一起使用是否正确

uwp - 如何绕过 Azure Devops 构建管道中的 UWP 应用程序认证?

azure - 通过ARM模板自动向cosmos DB添加数据

azure - 如何在 Azure DevOps 中使部分成功的阶段变为失败?

Azure DevOps 管道在 PR 完成时触发

python - PIL Image as Bytes with BytesIO 防止硬盘保存

c# - Azure Function 到表存储

java - 如何避免 DuplicateProjectException 异常

azure-devops - 代理池和部署池