点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
大家好,
在我的第一个CAP nodejs应用程序的开发中,汗水和几乎流泪。 我无法进行身份验证。
我已经在一个非常简单的服务中提取了问题,该服务将在服务中显示用户ID。
首先,我创建了一个简单的CDS服务。
@impl:'../service.js' @ cds.query.limit:100 服务CapmAuthService { 实体用户{ 关键用户名:字符串; } }
然后,我创建了一个函数来处理用户实体的get请求。 这将始终返回一个表,其中只有一个条目具有当前用户的用户名。
const readFunction =异步(req)=> { 返回[ { 用户名:req.user.id } ]; }; module.exports =(srv)=> { srv.on('READ','User',readFunction); };
在SAP Web IDE中进行测试始终会返回匿名用户。
为强制进行身份验证,我添加了一个approuter。
{ " welcomeFile":"/img/capm-auth", " authenticationMethod":"路由", "登出": { " logoutEndpoint":"/img/do/logout" }, "路线":[{ " source":" ^/(。*)$", " target":" $ 1", " authenticationType":" xsuaa", " scope":" $ XSAPPNAME.user", " destination":" srv_api", " csrfProtection":false }] }
我为用户分配了一个角色集合,该集合包含范围$ XSAPPNAME.user。
但是当我将应用程序部署到cloud-foundry并测试为approuter创建的URL时,显示的用户名仍然是匿名的。
我没主意了,任何帮助都将不胜感激...:-)
有一个github存储库,上面有我的代码:
https://github.com/jowavp/SAP-CAPM-Nodejs- 授权示例
kr,
Joachim
相关问答
- 适用于SAP HANA的HANA Express 1 SP12 AWS SAP WebIDE-Builder'mtabuilder'不适用于工作区
- OData参数在XSA和XSODATA文件中展开
- 500 Internal Server Error-提供了无效的HANA设置。 OData服务已禁用?
- SAP Cloud Foundry中没有配额
- DestinationAccessException:调用BusinessPartner Servlet时-Cloud Foundry上的Blog 4
- Neo还是Cloud Foundry?
- 我的SAP Cloud Foundry Apps自动停止
- 试用阶段在法兰克福地区不提供自动定标器服务?
嗨,莱利,
感谢您的答复。
似乎我的示例在试用帐户上运行得很好。
我更改了一些分配(提高了目的地的配额),现在在其他帐户上一切正常。
kr,
Joachim
Joachim,
这对我有用:事实证明,我正在从事的项目缺少几个关键要素。 这两个都是对Node服务项目的更改。
首先,确保此子句出现在服务项目的package.json文件中:
接下来,必须将几个Node程序包添加到项目中。 在命令行中工作时,我是通过以下方式添加它们的:
添加这些软件包基本上可以解析传入的JWT令牌,并可以在您的服务中提供适当的授权功能。
如果您以前已经完成了这些步骤,那么显然还有其他事情在发生-让我知道这两种方法。
Riley
Joachim,
对于它的价值,我正在开发一个完全不同的CAP应用程序中看到类似的东西。 就我而言,即使在approuter上登录后,我仍可以在cf日志中看到该用户是"匿名"用户。 我在不同的环境中使用CF和approuter,所以我可以肯定大多数配置都是正确的。
我正在咨询我的内部资源。
一周热门 更多>