RSA Archer API资源和内容说明

时间:2018-01-16 03:40:18

标签: rest security soap archer

我可以访问基于RSA REST和WSDL的API。他们的文件涉及内容和资源。但是,当登录到实际工具时,我可以访问诸如事故单等之类的东西。

事故单将有INC-1234,这将是一个字符串。但是,当按ID搜索时,API会为内容或资源获取整数值。

self.wsdl['search'].service.SearchRecordsByReport(
                sessionToken=self.token,
                reportIdOrGuid=14,
                pageNumber=1
)

如果我不提供整数,我会得到一个简单的404 "消息":"请求无效。"在REST中 如果我在SOAP

中传递一个类似的值,那就更复杂了

因此,问题1.是否存在RSA资源,它将API中的调用关系与我在UI中处理的事物的实际名称相关联或揭开神秘面纱。

问题2.是否有人在之前创建/修改过rsa事故单的代码库?

2 个答案:

答案 0 :(得分:2)

如果您正在谈论获取记录内容ID,您可以通过两种方式获取它,在GUI中将鼠标悬停在您的关键字段(可点击链接)上,并在弓箭手的左下角显示某些内容类似于" 123456 | 100 | 17"其中第一个集合是该记录的contentID。

如果你正在谈论获取一个reportID(14,就像你上面显示的那样),当你进入主报告列表时,你可以做同样的事情,并且它会显示在底部浏览器的右上角。

如果你想从代码中完成所有操作,我通常会将它拼凑在一起:

  1. 执行报告搜索;从报告中获取字段ID< FieldDefinition> (确保您的关键字段包含在报告GUI中可能很重要,这样您就可以识别出您正在处理的记录);进行另一个API调用(可能是REST,因为它真正处理元数据)以获取字段名称等(或者你可以使它全部静态,只需用相应的GUID对字段名称进行硬编码)
  2. 在< Record>内tag,你可以获取contentID属性。然后退一步,比较与您的keyfield匹配的字段标记,并且您将拥有该记录的contentID。
  3. 记录更新,删除等,无论您需要做什么。
  4. 如果您要查找特定的报告ID,请拨打REST电话以获取所有报告,然后它会返回报告名称和ID,然后开展您的业务以进行其他呼叫。

答案 1 :(得分:0)

我最近遇到了类似的情况,我必须使用Archer的API搜索字段值(例如“ INC-1234”)。

因此,对于您的问题1 : 我发现对我的要求方便的方法是“ ExecuteQuickSearchWithModuleIds”,它可以搜索值并提供具有这些值的所有ContentID(根据ModuleId)。

json.dump()

对于您的问题2 ,我找到了一个适用于Python3 D2D_RECT_F的丰富库。

希望这有助于了解此问题的人。