IIS:我使用什么用户名来读取inetsrv\config?

cbjzeqam  于 9个月前  发布在  其他
关注(0)|答案(1)|浏览(90)

我有一个aspx网页下面的代码,尝试列出Azure VM IIS ASP.NET上所有正在运行的进程。
出现以下错误:
System. UnauthorizedException:档名:配置错误:由于Microsoft.Web.Administration.Interop.IAppHostAdminManager.GetAdminSection的权限不足,无法读取配置文件(String bstrSectionName,String bstrPath)位于Microsoft.Web.Administration.Configuration.GetSectionInternal(位于Microsoft.Web.Administration.ServerManager.ApplicationPoolsSectionCreator()位于Microsoft. Web.Administration.Lazy.Initialize[T]上的ExclusionSection节,String sectionPath,String locationPath)(T(& target),位于Microsoft.Web.Administration.ServerManager.WorkerProcessCollectionCreator(),位于Microsoft.Web.Administration.Lazy.Initialize[T])(T& target,pages_test_generic_default中的fEnumerateWorkerProcess(). pages_test_generic_default中的fEnumerateWorkerProcess().pages_test_generic_default_Load(Object sender,EventArgs e)at System.Web.UI.Control.OnLoad(EventArgs e)at System.Web.UI.Control.LoadRecursive()at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint,Boolean includeStagesAfterAsyncPoint)
From:Received 'Cannot read configuration file due to insufficient permissions' when using web app manage task in Azure Pipelines我想我应该添加一个Windows用户,这样网页就可以读取C:\Windows\System32\inetsrv\Config文件夹。
问题:
1.右键单击C:\Windows\System32\inetsrv\Config并选择属性/安全性/编辑/添加用户时,应添加的用户名是什么?
1.这是一个正确的整体思路吗?
TIA标志
代码:

Imports Microsoft.Web.Administration

Partial Class pages_test_generic_default

 Inherits System.Web.UI.Page

Private Sub pages_test_generic_default_Load(sender As Object, e As EventArgs) Handles Me.Load

    fEnumerateWorkerProcess()

End Sub

Private Function fEnumerateWorkerProcess() As Boolean

    Dim bld1 As New StringBuilder

    Dim manager As ServerManager = New ServerManager()

    With bld1

        For Each proc As WorkerProcess In manager.WorkerProcesses
            .Append("WorkerProcess found: {0}", proc.ProcessId)
            .Append(vbTab & "|--AppPool : {0}", proc.AppPoolName)
            .Append(vbTab & "|--ProcGuid: {0}", proc.ProcessGuid)
            .Append(vbTab & "|--State   : {0}", proc.State.ToString())

            For Each appDom As ApplicationDomain In proc.ApplicationDomains
                .Append(vbTab & "+--ApplicationDomain Found: {0}", appDom.Id)
                .Append(vbTab & vbTab & "|--AppDomPhysPath: {0}", appDom.PhysicalPath)
                .Append(vbTab & vbTab & "+--AppDomVirtPath: {0}", appDom.VirtualPath)
            Next
        Next

        Response.Write(.ToString)

    End With

End Function

End Class

字符串

更新一:

我按照@samwu下面的建议,但出现了以下错误:
System. UnauthorizedException:访问被拒绝。(HRESULT的例外:0x 80070005(E_ACCESSDENIED)),位于Microsoft.Web.Administration.Interop.IAppHostElement.get_Collection(),位于Microsoft.Web.Administration. IAppHostElement.GetCollection(String collectionName,Type collectionType)位于Microsoft.Web.Administration.ServerManager.WorkerProcessCollectionCreator()位于Microsoft.Web.Administration.Lazy.Initialize[T](T& target,RightInstanceDelegate `1 valueFactory)at pages_test_generic_default.fEnumerateWorkerProcess()at pages_test_generic_default.pages_test_generic_default_Load(对象发送方,EventArgs e)在System.Web.UI.Control.OnLoad(EventArgs e)at System.Web.UI.Control.LoadRecursive()at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint,Boolean includeStagesAfterAsyncPoint)
这是在按照建议添加权限之后:
x1c 0d1x的数据

更新2:

我遵循了@samwu下面的第二个建议,但出现了以下错误:
设置1:

设置2:

设置3:

我也试过将用户更改为IUSR,但也没有效果。

nmpmafwu

nmpmafwu1#

右键单击C:\Windows\System32\inetsrv\Config并选择Properties/Security/Edit/Add User时,应添加的用户名是什么?
您应该添加的组是IIS_IUSRS,此内置组可以访问所有必要的文件和系统资源,以便帐户在添加到此组时可以无缝地充当应用程序池标识。

相关问题