我们有一系列的应用部署到我们的Fiori Launchpad (通过一个mta)文件在云铸造。
我偶然发现了一个博客,它描述了在一个应用程序上设置角色访问。
配置角色- SAP Fiori Launchpad Cloudfoundry \ SAP博客。
首先,我按照以下方式设置app路由器/xs-app.json。注意,与博客中的2(审批者和用户)相比,这是单一的config_admin作用域。原因是我们现在只需要一个可配置的角色,所以我假设我们只需要一个范围。
下面的片段看起来正确吗?我使用"srv_api“作为博客的目的地,但不确定它是否需要其他内容。
{
"authenticationMethod": "route",
"welcomeFile": "/cp.portal",
"routes": [
{
"source": "^/catalog(.*)$",
"target": "/catalog$1",
"destination": "srv_api",
"authenticationType": "xsuaa",
"scope": {
"GET": ["$XSAPPNAME.config_admin"],
"PATCH": ["$XSAPPNAME.config_admin"],
"POST": ["$XSAPPNAME.config_admin"],
"PUT": ["$XSAPPNAME.config_admin"],
"DELETE": ["$XSAPPNAME.config_admin"],
"default": ["$XSAPPNAME.config_admin"]
}
}
],
"logout": {
"logoutEndpoint": "/do/logout"
}
}
接下来是项目根目录中的xs-security.json。
{
"xsappname": "demo",
"tenant-mode": "dedicated",
"description": "Security profile of called application",
"scopes": [
{
"name": "uaa.user",
"description": "UAA"
},
{
"name": "$XSAPPNAME.config_admin",
"description": "UAA configuration admin"
}
],
"role-templates": [
{
"name": "Token_Exchange",
"description": "UAA",
"scope-references": ["uaa.user"]
},
{
"name": "ADMIN_USER",
"description": "UAA ADMIN_USER",
"scope-references": ["uaa.config_admin"]
}
]
}..。最后,我想将应用程序的manifest.json应用于:
"sap.platform.cf": { "oAuthScopes": ["$XSAPPNAME.config_admin"] }该应用程序存在于一个只包含该应用程序的组中。
当部署到时,组和应用程序是隐藏的。好吧,我想,只是需要在BTP侧配置角色?
在BTP中,我使用我的用户设置了角色集合,以及在上一步正确部署到BTP中的两个角色ADMIN_USER和Token_Exchange。
然而,应用程序和它的目录仍然隐藏在Fiori Launchpad上。唯一出现的应用程序是没有"sap.platform.cf“清单条目的应用程序。
我是以正确的方式接近这个地方吗?我错过了什么吗?
还是需要设置两个独立的作用域,如指南中所示,并在每个应用程序中包含相关的作用域?
*注意-我尝试设置没有Token_Exhange角色的用户,结果是一样的。
发布于 2022-03-30 18:15:51
答案是xs-security.json中的一个错误。
应该是:“范围-引用”:"$XSAPPNAME.config_admin“
https://stackoverflow.com/questions/71680952
复制相似问题