Мы использовали AD / LDAP для аутентификации в SonarQube 7.0 …
Мы успешно достигли аутентификации AD / LDAP … Однако мы хотим предоставить права доступа к проекту различным пользователям через программу (php / Python).
SonarQube предлагает использовать веб-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 для обработки пост-веб-запроса и получить ответ 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 { ... }
?>
Он не отражает никаких изменений в разрешении проекта ABC для пользователя XXX ….
Кто-нибудь может направить меня по этой теме?
Я хочу знать алгоритм, если таковые имеются для Sonarqube веб-API почтовый запрос …
например Чтобы получить доступ к этому почтовому запросу, нам нужно войти / выйти из администратора web api для sonarqube перед api / разрешением ИЛИ Для этого нужны файлы cookie или токены …
Спасибо за помощь мне в этом ..
используйте «projectKey» вместо «projectkey»
Других решений пока нет …