HANA XSA Express-MTAR中缺少xs-security.json并重新部署

2020-09-06 09:51发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)我正在开发用于构建MTA应用程序...

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

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


我正在开发用于构建MTA应用程序的最新XSA Express系统(SPS 03补丁64(内部版本4.3.64))。

MTA应用程序的不同组件使用UAA服务实例进行用户身份验证(由SAP规定)。 在项目的根目录中,将创建文件" xs-security.json",该文件定义了应用程序中使用的不同范围,属性和角色模板。

最初将应用程序部署在HANA Express上的某个空间内时,会自动创建UAA服务。

最初,我的安全文件为空,因此创建该服务时没有任何问题(因为该文件的实际"内容"为空)。 定义好身份验证角色模板后,我相信以后可以通过CLI更新UAA服务以使用新的安全性数据。 (或更可能我可能已通过CLI删除并重新创建了服务)。

稍后,当我开始通过XS部署重新部署经过修改的MTAR时,我注意到发生了错误,无法进行部署。

执行XS部署时出现错误

'xs-security.json不一致:xsappname无效:不能为。' 现在-在找到此主题之后结束-对我来说很有意义...安全描述符未包含在构建中 MTAR二进制文件!

为了部署我的MTA的新版本-到目前为止,我的解决方案是:

  1. 删除现有的UAA服务
  2. 部署新的MTAR。 然后,再次创建没有安全信息的UAA服务。
  3. 然后应该认为您可以使用上载的xs-security.json文件(xs update-service yourUAA -c xs-security.json)简单地更新现有的新服务...不,...不起作用 。 更新错误,提到的xsappname与新的服务名称不匹配-yourUAA <> yourUAA!i1 ... SAP根据您在..中部署的空间添加了'!i1'后缀,但由于某种原因它无法理解我 正在更新同一服务..."(由于意外的服务器错误,操作失败),并显示错误消息:'description:更新应用程序yourUAA!i4时出错(无法通过更新更改AppId。)"
  4. 再次删除UAA服务(!)
  5. 再次引用安全文件来创建UAA服务(xs create-service xsuaa space yourUAA -c xs-security.json)。 现在已考虑安全文件。
  6. 再次使用新的UAA服务重新绑定所有现有的应用/服务

上述内容带来的令人不愉快的副作用是,所有现有角色都丢失了那些分配的角色模板...因此,必须重新定义角色...繁琐的工作...

我下载了最新的CLI MTAR构建器,并通过命令行构建了档案文件。...同样的问题...仍然没有文件。

在另一个主题中提出的解决方案? 手动将文件添加到MTAR存档中。.

我的mta.yaml文件中有以下设置...

参数:config_path:./xs-security.json

我尝试了MTAR文件中的多个位置-在根文件夹中,在META-INF文件夹中-没有任何作用..总是相同的错误...(叹气)...

所以似乎有两个问题:

  1. MTAR文件的构建不包括xs-security.json文件
  2. 通过cli更新UAA服务不起作用,因为它错误地比较了应用名称

我希望这些问题能尽快得到解决,因为与MTA一起正常工作确实令人沮丧。

5条回答
亦是此间程序员
2020-09-06 10:31 .采纳回答

第二次尝试。 我输入了一个完整的答案,但由于我对SAP域(我的github项目)进行了文本引用,所以它被抹掉了。 愚蠢的...

因此,当您更改xs-security.json时,首先无法更新XSUAA实例。 这是一个已知的限制。 您必须删除并重新创建它。 不好,但由于从xs-security.json生成作用域和角色集合的方式很复杂,因此仅是技术限制。

另一方面,这是一个较旧的问题,已得到修复,但可能尚未在HANA Express中提供,因为它还没有SPS 04。 我们在openSAP课程中确实通过将整个xs-security.json嵌入mta.yaml来解决此问题。 但是,我们在课程的较新版本中将其删除,因为此错误已修复,我们可以返回使用xs-security.json文件。

https://github.com。 com/SAP/com.sap.openSAP.hana5.example/blob/hana2_sps03/mta.yaml#L141

一周热门 更多>