【问题标题】:Admin user not recognized on Bonobo Git ServerBonobo Git 服务器上无法识别管理员用户
【发布时间】:2015-07-22 05:10:22
【问题描述】:

我在 IIS 上使用 Bonobo Git Server 有一段时间了,它运行良好。

我几乎从不使用网络界面,如果使用,我会以普通用户身份登录。

今天我以管理员身份登录,但顶部的管理员链接不见了。

通常我应该看到:

但我只获得普通用户链接,create new repository 按钮不显示,当我转到:

../Settings/Index

我得到一个:

未经授权 - 您没有所选操作或页面的权限

我确定我是以管理员用户身份登录的,并且角色成员身份没有改变,但我似乎只是一个普通用户。

Bonobo 或 Windows 日志中没有错误。

我将站点复制到我的本地服务器,并且相同的文件工作正常,我看到了完整的管理界面。

我知道生产服务器上进行了一些服务器加固,但我不知道细节。

有人知道这是什么情况吗?

【问题讨论】:

    标签: bonobo


    【解决方案1】:

    我调查了生产机器上的“服务器强化”,结果发现他们从机器级别的 IIS 中删除了许多未使用的模块和处理程序。

    他们在所有站点上进行了测试,Bonobo Git 服务器似乎运行良好。

    考虑到问题,admin用户不被识别为管理员,我查看了Bonobo的源代码,他们使用的是User.IsInRole

    看来他们正在使用 ASP.NET 成员资格提供程序。

    然后我查看了被移除的 IIS 模块,其中之一是:

    System.Web.Security.RoleManagerModule
    

    在本地删除它会导致与我在生产服务器上遇到的完全相同的问题。

    所以我要求服务器管理员重新添加该模块:

    New-WebManagedModule -Name RoleManager -Type System.Web.Security.RoleManagerModule -Precondition "managedHandler" 
    

    一切正常,管理员用户再次成为完全管理员。

    【讨论】:

      猜你喜欢
      • 2015-11-28
      • 1970-01-01
      • 1970-01-01
      • 2020-12-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-04-03
      • 1970-01-01
      相关资源
      最近更新 更多