关于 SAP Spartacus SSR 请求 OCC API 遇到 403 错误的解决办法

简介: 关于 SAP Spartacus SSR 请求 OCC API 遇到 403 错误的解决办法

问题症状


从 CCV2 Node.js Spartacus SSR 应用向 occ API 发起请求,得到 403 错误。


但是,frontend CSR 可以正常请求 OCC API.


分析


检查 SSR 的 ip 是否加到了 OCC API 的 whitelist 里。


当启用服务器端渲染且 API 端点为私有(private,默认行为为拒绝所有 inbound 请求)时,来自 JS Storefront 的请求将被阻止并导致 403 错误。 用户还可能在加载页面后看到错误消息 You are not authorized to perform this action.



启用 SSR 后,来自 JS Storefront pod 的请求将通过公共 API 端点发出。


Cloud Portal 中,如果已将 API 端点的 IP 过滤器集(filter sets)基本规则设置为全部拒绝(Deny All),这些请求将被阻止。


解决方案


为了保持 API 端点的私密性,可以通过创建一个 IP 过滤器集来创建一个 exception,该 IP 过滤器集会将该环境的集群 CIDR 列入白名单。 这可以在 SAP 支持团队的帮助下完成:


  1. 给 SAP 创建一个描述问题的 ticket,在 ticket 里请求环境的集群 cidr.


  1. SAP 支持团队将通过执行 kubectl cluster-info dump | grep -m 1 cluster-cidr 命令行来检索该值,并通过 ticket 回复客户。


  1. 客户可以通过在 API 端点上创建 IP 过滤器集来将提供的 cidr 列入白名单。


什么是 IP Filters Set?


IP 过滤器允许客户控制 IP 流量如何流入 SAP Commerce Cloud 系统。


可以通过列出一系列允许或拒绝作为数据包源的 IP 地址来创建 IP 过滤器。 系统使用 IP 数据包标头中的信息过滤 IP 数据包。 系统根据定义的规则接受(允许)或丢弃(拒绝)数据包。


要创建 IP 过滤器集,请创建一个文本文件,其中列出允许或拒绝来自其的数据包的 IP 地址。 例如,IP 过滤器 A - Allow.txt 文件包含允许数据包的 IP 地址。


可以使用子网掩码来定义要过滤的 IP 地址范围。 例如:


  • /32 将网络掩码定义为 255.255.255.255,因此对于 192.168.0.254/32,它指定了一个单一的 IP 地址 192.168.0.254


  • /24 将网络掩码定义为 255.255.255.0,因此对于 192.168.0.0/24,它指定了从 192.168.0.0 到 192.168.0.255 的 IP 范围

相关文章
|
4月前
|
前端开发 搜索推荐 JavaScript
Spartacus Cart item 点击了 remove 之后 HTTP Delete 请求的触发逻辑 - Adapter
Spartacus Cart item 点击了 remove 之后 HTTP Delete 请求的触发逻辑 - Adapter
|
4月前
|
开发者 UED
Spartacus cart 点了 remove 之后的 HTTP Delete 请求是怎么触发的
Spartacus cart 点了 remove 之后的 HTTP Delete 请求是怎么触发的
|
4月前
|
API 前端开发 JavaScript
Spartacus 中 saved cart 的 occ API 请求
Spartacus 中 saved cart 的 occ API 请求
Spartacus 中 saved cart 的 occ API 请求
|
4月前
|
测试技术 API
使用 jMeter 给 Spartacus SSR 发送 100 个并发的 SSR 请求,全部被 SSR 响应了
使用 jMeter 给 Spartacus SSR 发送 100 个并发的 SSR 请求,全部被 SSR 响应了
|
10月前
|
JSON API 数据格式
Spartacus 6.0 baseSites API 的准确触发位置
Spartacus 6.0 baseSites API 的准确触发位置
|
10月前
|
存储 JSON API
如何避免 Spartacus 重复发送 CMS page 请求
如何避免 Spartacus 重复发送 CMS page 请求
|
1月前
|
机器人 API Python
智能对话机器人(通义版)会话接口API使用Quick Start
本文主要演示了如何使用python脚本快速调用智能对话机器人API接口,在参数获取的部分给出了具体的获取位置截图,这部分容易出错,第一次使用务必仔细参考接入参数获取的位置。
|
21天前
|
存储 JSON API
淘系API接口(解析返回的json数据)商品详情数据解析助力开发者
——在成长的路上,我们都是同行者。这篇关于商品详情API接口的文章,希望能帮助到您。期待与您继续分享更多API接口的知识,请记得关注Anzexi58哦! 淘宝API接口(如淘宝开放平台提供的API)允许开发者获取淘宝商品的各种信息,包括商品详情。然而,需要注意的是,直接访问淘宝的商品数据API通常需要商家身份或开发者权限,并且需要遵循淘宝的API使用协议。
淘系API接口(解析返回的json数据)商品详情数据解析助力开发者
|
1月前
|
SQL 存储 数据处理
|
1月前
|
XML JSON API
RESTful API设计最佳实践:构建高效、可扩展的接口
【8月更文挑战第17天】RESTful API设计是一个涉及多方面因素的复杂过程。通过遵循上述最佳实践,开发者可以构建出更加高效、可扩展、易于维护的API。然而,值得注意的是,最佳实践并非一成不变,随着技术的发展和业务需求的变化,可能需要不断调整和优化API设计。因此,保持对新技术和最佳实践的关注,是成为一名优秀API设计师的关键。