【问题标题】:ASP.Net Core at AWS EBS - write permissions and .ebextensionsAWS EBS 的 ASP.Net Core - 写入权限和 .ebextensions
【发布时间】:2017-03-13 15:09:25
【问题描述】:

我们在 AWS EBS 上部署了 ASP.Net Core 应用程序,但在其上写入文件时遇到问题。

对路径C:\inetpub\AspNetCoreWebApps\app\App_Data\file.txt的访问被拒绝

我添加了.ebextensions\[app_name].config,但它什么也没做

{
    "container_commands": {
        "01": {
            "command": "icacls \"C:/inetpub/AspNetCoreWebApps/app/App_Data\" /grant DefaultAppPool:(OI)(CI)"
        }
    }
}

我知道这是权限问题,因为当我 RDP 到机器并手动更改权限时,它解决了问题。我想在部署期间使用.ebextensions\[app_name].config

【问题讨论】:

  • ebextension 文件是 yaml - 确保它不是制表符分隔的并且以 UTF-8 编码。另外我假设你的扩展文件不是字面上称为 [app_name].config.
  • 应用名称与此处相同i.imgur.com/kEOGvCa.png 也与aws-beanstalk-config.txt 相同=> Application.Name
  • 只需调用它 init.config 并检查间距和编码。
  • .ebextensions\[app_name].config 在重新创建部署之前和部署期间运行 - 这就是它无法正常工作的原因。我通过将postInstall Power Shell 脚本添加到aws-windows-deployment-manifest.json 来修复它
  • 我无法创建该配置文件,它将它作为 xml 文件,我无法将 json/yaml 内容放入其中。

标签: amazon-web-services iis asp.net-core amazon-elastic-beanstalk web-deployment


【解决方案1】:

.ebextensions\[app_name].config 在部署之前运行并在重新创建部署期间运行文件夹 - 这就是它无法正常工作的原因。我通过将postInstall Power Shell 脚本添加到aws-windows-deployment-manifest.json 来修复它:

"scripts": {
      "postInstall": {
        "file": "SetupScripts/PostInstallSetup.ps1"
      }
# # PostInstallSetup.ps1 #
$SharePath = "C:\inetpub\AspNetCoreWebApps\app\App_Data"
$Acl = Get-ACL $SharePath
$AccessRule = New-Object System.Security.AccessControl.FileSystemAccessRule("DefaultAppPool","full","ContainerInherit,Objectinherit","none","Allow")
$Acl.AddAccessRule($AccessRule)
Set-Acl $SharePath $Acl

【讨论】:

  • 能分享一下SetupScripts/PostInstallSetup.ps1的内容吗?
  • # # PostInstallSetup.ps1 # $sharepath = "C:\inetpub\AspNetCoreWebApps\app\App_Data" $Acl = Get-ACL $SharePath $AccessRule= New-Object System.Security.AccessControl.FileSystemAccessRule("DefaultAppPool","full","ContainerInherit,Objectinherit","none","Allow") $Acl.AddAccessRule($AccessRule) Set-Acl $SharePath $Acl
猜你喜欢
  • 2021-08-05
  • 2017-11-06
  • 2018-01-29
  • 1970-01-01
  • 2016-11-21
  • 1970-01-01
  • 1970-01-01
  • 2019-08-18
  • 2021-08-16
相关资源
最近更新 更多