我已经在云端vms,docker等中部署了buildbot。我已经能够设置身份验证,但无法禁用匿名访问。
碰巧的是,我真的不能允许匿名访问,因为它是私有资源,最糟糕的是,许多日志来自构建步骤,密码和其他敏感信息。
buildbot版本:0.9.8
关于此主题的文档是稀疏/不存在的。
提前致谢。
答案 0 :(得分:0)
Buildbot本身只允许禁用对REST API的访问。因此,匿名用户将看到没有构建,日志等的“空”Web界面。只能通过外部Web服务器设置禁用对Web界面的访问。
示例authz config:
c['www']['authz'] = util.Authz(
allowRules=[
util.AnyEndpointMatcher(role='admins', defaultDeny=False),
util.AnyControlEndpointMatcher(role='admins', defaultDeny=False),
util.AnyEndpointMatcher(role='anonymous')
],
可以通过在列表末尾放置一个不存在角色的AnyEndpointMatcher来实现默认拒绝策略。请注意,这将拒绝所有REST apis,并且在出现此类错误时,大多数UI都不会实现正确的拒绝访问权限消息。