Fortify中文网站 > 新手入门 > Fortify SSC项目看不到扫描结果怎么办 Fortify SSC结果同步延迟从哪里排查
教程中心分类
Fortify SSC项目看不到扫描结果怎么办 Fortify SSC结果同步延迟从哪里排查
发布时间:2026/06/01 15:16:05

  扫描文件明明已经传上去了,可是在页面上就是看不到对应的结果,这种情况在Fortify SSC的使用过程中并不少见;面对Fortify SSC项目里看不到扫描结果的问题,又或者是结果的同步出现了延迟,首先要做的一点并不是直接下结论说扫描失败了,而是要沿着“应用版本、账号权限、上传状态、处理队列、过滤条件、后台日志”这样一条线索去排查。Fortify SSC是以应用和应用版本为单位来管理结果的,在建立一个应用版本的时候,还要求把开发阶段、开发策略、访问级别等必要的属性填好,一旦版本给选错了,看上去就会很像结果被弄丢了。

  一、Fortify SSC项目看不到扫描结果怎么办

 

  当在Fortify SSC里面看不到扫描结果的时候,应当先从页面和权限这两个方向开始检查,其实有不少时候,结果实际上已经被系统接收了,只不过是由于使用者进错了版本、缺少浏览结果的权限,或者是页面上的筛选条件把真正的问题给掩盖住了。

 

  1、先确认应用版本

 

  进入到SSC的界面之后,需要检查当前打开的那个Application和Version到底是不是正确的,同一个项目很可能会同时存在dev、test、release这好几个版本,要是把FPR这种扫描文件传到了A版本,而自己却在B版本里面去翻找,那自然是什么也看不到的;除此之外,还需要去核实一下扫描任务里面所传入的appVersionId、应用名称以及版本名称,看它们和页面上显示的是不是能够保持一致。

 

  2、检查账号权限

 

  不管是上传扫描文件还是去浏览结果,都要求账号具有相应的角色权限,比如在使用ScanCentral SAST往SSC里面传东西的时候,根据官方给出的文档,用来生成凭据的那个账号,是需要具备Upload analysis results和View ScanCentral SAST这类权限才行的;假如某个账号只能看到项目的列表,却打不开扫描结果或者审计的页面,那就说明得让管理员帮着去把应用版本这一级的权限给补充上。

 

  3、查看Artifact状态

 

  文件在上传之后,并不是马上就能在结果页面里被看到的,SSC还需要花一点时间去处理这份扫描产物,我们可以进到应用版本的Artifacts或者类似功能页面里面,去看一下这个FPR到底是已经成功传上来了,还是正在处理的过程中,又或是已经处理失败掉了;如果它的状态显示为Processing,那只要耐心等着它处理结束就可以,而要是状态显示为失败,就一定要点开对应的处理消息,去看看底层的具体原因。

 

  4、清理页面筛选条件

 

  在打开了Audit或者Issues页面以后,最好先动手把严重级别、状态、文件路径、用户分配、隐藏规则之类所有的筛选条件都给清空掉,因为有相当一部分团队,会习惯性地把页面默认只看New或者Critical的结果,这么一来,那些级别较低的问题、已经审计过的问题,还有被主动隐藏掉的问题,就都不会被显示出来。

 

  二、Fortify SSC结果同步延迟从哪里排查

 

  SSC在同步结果时产生的延迟,问题常常是卡在了上传、处理、审批、队列或者是数据库这些层面上面,我们需要先去确认一下扫描到底是不是真正结束了,然后才能再去判断SSC这边是不是已经收到了完整的结果。

 

  1、检查扫描端是否完成

 

  如果采用的是ScanCentral SAST的方式,那首先就要去看看扫描任务本身有没有变成Completed的状态,FPR这个结果文件是否被成功地生成了,要知道扫描没有成功、文件传到一半就断了、凭据过期、网络中途断开,这些情况都会使得SSC那一端拿不到可用的结果;所以不能仅仅看到流水线显示已经完成就认为万事大吉了,一定要专门去检查Fortify相关的那几步里有没有出现报错信息。

 

  2、检查处理规则

 

  SSC里面是可以针对应用版本去设置一些分析结果的处理规则的,官方文档对此的解释是,这些规则主要用来决定在扫描产物上传上来的时候,该用什么样的方式去处理它;假如项目里开启了审批功能、自动处理的限制,或者是一些特别的规则,那么新传上来的结果,就很有可能需要等人工确认之后,才会真正进到结果页面里面去。

  3、检查FPR有效性

 

  要是不幸遇到了产物处理失败的情况,那不妨先用Audit Workbench把FPR文件给打开,去看看这个文件本身是不是还可以正常读取,然后接着去排查,看是不是因为这是一个快速扫描,或者根本没有产生有效的分析结果,又或者是扫描的规则不兼容、版本之间对不上号这些原因造成的;在官方的支持文章里头,也提到过在上传产物时可能会报出“No valid analysis result was found”这一类处理失败的提示信息。

 

  4、检查队列和服务状态

 

  管理员在这个时候,需要去瞧一下SSC后台的任务、处理的队列、服务器的资源、数据库的连接,还有应用自己的日志情况,如果在同一个时间有很多项目都在往上传FPR,那处理的过程自然就会排起队来;而要是服务器的资源已经不太够了,那么结果从上传成功到变成可见状态,中间经历的时间就会明显地变慢。

 

  三、Fortify SSC结果异常怎么闭环

 

  在排查结果同步这类问题的时候,一定要把扫描这一端、上传这一端,还有SSC这一端产生的记录给串起来看,不然的话,下回再遇到类似的情况,就还得重新靠猜测去解决。

 

  1、记录关键编号

 

  需要把扫描任务的号码、应用的版本、FPR文件的名称、上传操作发生的时间、提交时所使用的账号、凭据的来源、当前的处理状态,还有出现的错误信息这些东西,全都给保存下来;这样做的话,管理员拿到这些信息再去查日志,就能很快地把问题给定位出来,而不必在一大堆的任务记录里面去苦苦翻找了。

 

  2、固定上传方式

 

  在同一个项目里面,最好不要一会儿用手动上传,一会儿改用流水线上传,一会儿又突然换一个账号去上传,比较妥当的做法,就是统一由CI任务来上传,或者由某个固定下来的服务账号来上传,通过这样的方式,可以防止权限、版本和凭据这些环节出现混乱。

 

  3、建立结果复核点

 

  每一次文件上传操作完成以后,都可以在流水线里面去增加一个确认结果的步骤,这最少也需要去检查一下产物到底上传成功了没有,后续的处理有没有做完,以及所指向的应用版本是不是正确无误;等到实际发现了延迟的现象时,也应该先去看看状态的具体情况,然后才能决定是不是需要重新上传。

 

  4、不要盲目重复上传

 

  要是处理队列里面已经躺着同样的一份FPR了,这个时候再反复地去上传,反而有可能把整个结果队列给搅得更加混乱;比较合适的做法,是先去确认上一份产物是不是已经彻底失败了,真的确认失败了以后才可以去重新上传一遍,假如它仅仅是处在处理中的状态,那就不妨先等队列自己跑完,或者让管理员到后台去查看一下进程。

  总结

 

  在面对Fortify SSC项目里看不到扫描结果的状况时,最先要检查的就是应用版本、账号权限、产物状态,还有页面的筛选条件;而对于SSC结果同步延迟的问题,则需要继续去检查扫描这一端的完成状态、处理规则、产物的有效性、处理队列以及服务器的日志。只要我们把扫描任务、上传的文件、应用的版本和处理的提示消息这些环节一个一个对应起来,绝大多数的“结果好像丢了”的问题,最终都是能够被定位清楚的,并不需要从一开始就把整个项目都重新扫描一遍。

读者也访问过这里:
135 2431 0251