【发布时间】:2015-12-24 05:33:39
【问题描述】:
我在向 Web 仪表板添加安全性时遇到了极端问题。我正在尝试为一堆 Web 应用程序项目设置安全性。在没有启用安全性的情况下一切正常。
我想要的安全性相当简单。 2个角色“发布者”和“测试者”,发布者可以做任何事情,测试者可以强制构建测试部署项目并且只查看所有升级实时安装的其余项目。但是我就是无法让它工作。作为开始,我认为我已经为每个人提供了一切,并且根据我设置各种事物的方式,我遇到了一些不同的问题。在所有情况下,配置文件都使用验证器工具进行验证。
服务器配置
<internalSecurity>
<users>
<ldapUser name="ccnet" domain="localhost" />
<passwordUser name="ccnetadmin" password="NotTheRealPW" />
</users>
<permissions>
<rolePermission name="Releasers" defaultRight="Allow">
<users>
<userName name="ccnetadmin"/>
</users>
</rolePermission>
<rolePermission name="Testers" defaultRight="Allow">
<users>
<userName name="ccnet"/>
</users>
</rolePermission>
</permissions>
</internalSecurity>
项目安全
<security type="defaultProjectSecurity" defaultRight="Inherit">
<permissions>
<rolePermission name="Testers" ref="Testers"/>
<rolePermission name="Releasers" ref="Releasers"/>
</permissions>
</security>
Dashboard.config
文档中有 3 件事不清楚。
- 在 IIS 中需要设置什么样的身份验证。
- ccnet.config服务器需要设置什么样的用户 安全部分。
- 在仪表板配置中,
<securityPlugins>部分我需要什么。
我已经尝试过集成在 web.config 和 iis 中的表单和窗口。对于表单,它基本上抱怨没有 login.aspx,所以我怀疑这是正确的。通过集成 Windows,我可以访问仪表板。我可以在列表中看到任何没有安全元素的项目,但任何操作都会导致安全异常,表明我没有 ViewProject 权限。任何具有安全元素的项目都不会显示在列表中。无论我使用 simpleUser、passwordUser 还是 ldapUser,我都会得到相同的行为。除了simpleSecurity,我找不到任何提到我可以在securityPlugins 部分中放入的任何其他值的地方,是否还有其他值,如果有,它们是什么。
我搜索了this 文档,但找不到任何这些问题的答案。
编辑
谁能提出我可以实现以下目标的东西,谁就可以获得赏金,即使这与我上面描述的方式完全不同。
我想要一组可以查看所有 CC.net 项目并强制构建 1 个特定项目的用户。我想要另一组可以查看和强制构建所有项目的用户。我希望它与一个 cc.net 仪表板、一个配置文件一起使用,但使用不同的用户帐户。
编辑 2
由于赏金即将用完,我也会给予它,以便任何可以提供某种令人信服的证据证明 cc.net 中的安全性不起作用的人,所以至少我知道不要再浪费我的时间了.此外,我尝试记录一个问题或在 cc.net 论坛上发布关于此的问题,但他们似乎已经过渡到一个新系统,而且这似乎也不起作用,它根本不会让你注册一个用户帐户,它需要电子邮件验证,但电子邮件永远不会通过。
【问题讨论】:
标签: cruisecontrol.net ccnet-config