php - SonarQube POST api/permissions/add user ,以编程方式向许多用户授予项目权限?

标签 php ldap sonarqube sonarqube7

我们已经在 SonarQube 7.0 中使用 AD/LDAP 进行身份验证... 我们成功实现了 AD/LDAP 身份验证...但是我们想通过程序(php/Python)将项目级别的权限授予不同的用户。

SonarQube 建议使用如下 web api

POST api/permissions/add_user

Params      
 1. login = XXX
 2. permission = user / codereviewer / scan / issueadmin
 3. projectid (optional )
 4. projectkey (optional ) = ABC

SonarQube 文档建议的示例请求

curl -X POST -v -u admin:admin 'http://localhost:9000/api/permissions/add_user?permission=codeviewer&user=XXX&component=ABC'

我们尝试编写 php curl 来处理 post web 请求并获取 json 响应,如下所示:

<?php
$ch = curl_init();

curl_setopt($ch, CURLOPT_URL,"http://localhost:9000/api/permissions/add_user");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS,
            "login=XXX&permission=user&projectkey=ABC");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$server_output = curl_exec ($ch);

curl_close ($ch);

if ($server_output == "OK") { ... } else { ... }

?>

它没有反射(reflect)用户 XXX 的 ABC 项目权限的任何变化....

任何人都可以就此主题指导我吗?

我想知道 Sonarqube web api 发布请求是否有算法... 例如要访问此帖子请求,我们需要 web api 管理员登录/注销 sonarqube 在 api/permission 之前,或者它需要一些 cookie 或 token ...

谢谢你帮我解决这个问题..

最佳答案

使用“projectKey”而不是“projectkey”

关于php - SonarQube POST api/permissions/add user ,以编程方式向许多用户授予项目权限?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50584340/

相关文章:

php - Laravel 4 查询生成器(连接)

php - preg_replace_callback 错误中的正则表达式。 PHP

php - PayPal IPN 的自动销售税?

c# - ASP.NET Core 2.0 LDAP 事件目录身份验证

java - Sonar 无法覆盖调用异常抛出函数的分支

javascript - 如何将 php 对象获取到 javascript?

linux - 容器创建错误启动容器进程导致“process_linux.go :339

java - 用于检查代码是否包含非 UTF-8 字符的正则表达式?

jenkins - 是否可以在 Jenkins 上运行 Sonar 插件而无需任何构建过程?

java - 找出给定 uid 所属的 LDAP 组