首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Fortify软件安全中心REST创建项目

使用Fortify软件安全中心REST创建项目
EN

Stack Overflow用户
提问于 2016-04-04 22:47:32
回答 2查看 6.3K关注 0票数 3

我可以使用HP的REST创建项目吗?这个方法可以很好地获取项目列表:

代码语言:javascript
复制
import requests
import getpass
import json

url = "https://www.example.com/ssc/api/v1/"
endpoint = "auth/obtain_token"
headers = {"Content-Type": "application/json",
           "Accept": "application/json"}
username = getpass.getuser()
password = getpass.getpass()
auth = (username, password)

r = requests.post("{url}{endpoint}".format(url=url, endpoint=endpoint), headers=headers, auth=auth)

data = r.json().get("data")
token = data.get("token")
endpoint = "projects"
headers["Authentication"] = "FortifyToken {token}".format(token=token)

r = requests.get("{url}{endpoint}".format(url=url, endpoint=endpoint), headers=headers)

print json.dumps(r.json(), sort_keys=True, indent=4, separators=(',', ': '))

..。但是我在API文档中没有看到任何实际创建项目的例子。我特别感兴趣的是使用Python请求库这样做。我做了,而不是想要在Java中做任何事情(这就是Fortify SSC包附带的所有示例)。

如果有人对SSC有任何经验(或者可以向我介绍一些更好的文档),我希望您能提供任何帮助。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-08-16 18:34:26

我终于从HPE技术支持中获得了一些很好的信息,并能够为使用Python中的script创建项目编写一个脚本。SSC (17.10)的最新版本使Swaggerized更加容易。

票数 3
EN

Stack Overflow用户

发布于 2017-12-28 00:42:41

感谢SonarQube增强插件的作者(不是Fortify SSC文档,也不是它的自动生成的ssc/html/docs/api-引用),我想我需要对令牌进行base64 64编码。

代码语言:javascript
复制
if len(auth) == 1:
    headers.update((("Authorization", "FortifyToken " + base64.b64encode(auth[0])),))
elif len(auth) == 2:
    headers.update((("Authorization", "Basic " + base64.b64encode("{}:{}".format(*auth))),))

auth/token调用有助于避免重新发送用户名/密码对。Fortify SCA bin目录中的fortifyclient脚本可以预先执行调用。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36414245

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档