• 关于 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.
    2. SAP 支持团队将通过执行 kubectl cluster-info dump | grep -m 1 cluster-cidr 命令行来检索该值,并通过 ticket 回复客户。
    3. 客户可以通过在 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 范围

  • 相关阅读:
    Java对象传递和返回的细节问题
    职业性格在求职应聘和跳槽中的作用
    别再用 System.currentTimeMillis 统计耗时了,太垃圾了,这个工具类好用到牛炸天了!
    【Matplotlib绘制图像大全】(十七):散点图
    Docker常用命令
    2023年7月京东平板电脑行业品牌销售排行榜(京东销售数据分析)
    网络请求——跨域 的概念
    Spring Cloud Config(分布式配置中心)
    PLC开放式以太网通信网络状态查看工具netstat
    多线程锁-线程锁知识概述、乐观锁和悲观锁
  • 原文地址:https://blog.csdn.net/i042416/article/details/127831178