使用匿名会话运行Cronjob用户仍然获得Stage版本目录项

2020-09-02 03:34发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)大家好,我们的hybris版本是...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,我们的hybris版本是5.2.0.4

我们在运行cronjob时发现一个奇怪的情况,即使sessionUser设置为匿名,在cronjob中运行的灵活搜索仍会找到Stage版本

我们有一个ServiceLayerJob类,其Spring bean定义扩展了abstractJobPerformable

  
      

  

该类本身扩展了AbstractJobPerformable

阅读 https://wiki.hybris.com/display/release5/cronjob +-++ Technical + Guide 我可以发现,在作业的sessionContextValues中,无论谁sessionUser是谁,都将disableRestrictions和disableRestrictionGroupInheritance都设置为TRUE。

即使我们将限制设置为Job本身也不起作用。

2条回答

我做到了,就像下面一样。

 //以匿名用户身份在以下代码下运行。
                  userService.setCurrentUser(userService.getAnonymousUser());

                 //为匿名用户启用所有搜索限制。 设置匿名用户不能满足要求。
                 //作业正在由管理员执行,并且在会话中设置了以下属性。 因此,删除这些设置。
                  JaloSession.getCurrentSession()。removeAttribute(" disableRestrictions");
                  JaloSession.getCurrentSession()。removeAttribute(" disableRestrictionGroupInheritance");
  

一周热门 更多>