是否可以在不使用Web界面的情况下在声纳中创建新用户? 我需要编写一个脚本,为某些工具插入相同的用户,包括声纳。
答案 0 :(得分:7)
有三种方法可以做到这一点:
直接写入数据库(有一个名为users的简单表)。
使用LDAP插件,如果在sonar.properties中指定sonar.authenticator.createUsers: true
,它将在第一次进行身份验证时自动在声纳数据库中创建用户。
编写一个依赖于声纳插件API的java应用程序,然后可以使用构造函数注入来获取Sonar hibernate会话并保留您想要的用户。请参阅Here。
答案 1 :(得分:2)
自SonarQube 3.6版以来,webservice API支持用户管理: https://sonarqube.com/web_api/api/users
答案 2 :(得分:0)
web service API似乎不支持用户管理。一切皆有可能,但看起来并不是直接通过声纳提供的。
您可以使用一些Web自动化库(webbrowser,webunit,watir,twill)通过正在运行的服务器来完成它;甚至可以通过仔细查看用户/创建表单的页面源来使用“curl”之类的东西。
或者,如果您想直接访问数据库,可以尝试从代码中提取用户创建功能并直接使用sonar.users表。
有LDAP Plugin,它会负责身份验证,但仍需要您在Sonar中创建用户,这样就无法解决您的问题。