mcpField
B
b2c-ecdn

b2c-ecdn

github.com/salesforcecommercecloud云与 DevOps5790 次安装今天更新
代码仓库

关于 b2c-ecdn

面向 Salesforce B2C Commerce 运维人员的 b2c CLI 使用技能,用于管理 eCDN 区域、证书、缓存及安全设置,并包含流量规则配置示例。

主要功能

  1. 01列出和创建 CDN 区域
  2. 02管理证书及验证主机名
  3. 03按路径或标签清理缓存
  4. 04配置限速与安全设置
  5. 05调整速度优化选项

适用场景

  1. 01创建店铺 CDN 区域
  2. 02为特定路径清理缓存
  3. 03配置结账路径限速规则
  4. 04更新 HTTPS 与 TLS 设置

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/salesforcecommercecloud/b2c-developer-tooling --skill b2c-ecdn

安装后在 Claude Code 中输入/b2c-ecdn确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

evals/
trigger-evals.json
references/
ADVANCED.md
SECURITY.md

详细介绍

B2C eCDN 技能

使用 b2c CLI 插件管理 eCDN(嵌入式内容分发网络)区域、证书、安全设置等。

在更改规则之前调查边缘流量(机器人、滥用行为、边缘 403/429 激增、SCAPI/SLAS 滥用;哪些来源值得关注、由谁运行、有哪些规则覆盖),请使用 b2c-ops:b2c-edge-traffic-triage 操作手册(MCP:skill://b2c-ops/b2c-edge-traffic-triage/SKILL.md)。

**提示:**如果未全局安装 b2c,请改用 npx @salesforce/b2c-cli(例如,npx @salesforce/b2c-cli ecdn zones list)。

配置

tenantId、clientId 和 clientSecret 等值会从 dw.json / SFCC_* 环境变量 / 活动实例 / 配置插件中解析。以下示例展示了最简用法;仅在要覆盖已配置的值时才添加标志——通常无需传入 --client-id/--client-secret/--tenant-id。如果缺少必需值,CLI 会给出可操作的错误提示,指出对应的标志、环境变量和配置键。

运行 b2c setup inspect 可查看解析后的配置及每个值的来源(脚本处理可使用 --json;默认情况下会对密钥进行遮蔽)。有关优先级规则和故障排查,请参阅 b2c-cli:b2c-config 技能。

先决条件

  • 具有 sfcc.cdn-zones 范围的 OAuth 凭据(读取操作)
  • 具有 sfcc.cdn-zones.rw 范围的 OAuth 凭据(写入操作)
  • B2C Commerce 组织的租户 ID(来自配置或 --tenant-id)

示例

列出 CDN 区域
# list all CDN zones for the configured tenant (pages through every zone)
b2c ecdn zones list

# JSON output
b2c ecdn zones list --json

# target a different tenant than the active config
b2c ecdn zones list --tenant-id zzxy_prd
创建店面区域
# create a new storefront zone
b2c ecdn zones create --domain-name example.com
清除缓存
# purge cache for specific paths
b2c ecdn cache purge --zone my-zone --path /products --path /categories

# purge by cache tags
b2c ecdn cache purge --zone my-zone --tag product-123 --tag category-456
管理证书
# list certificates for a zone
b2c ecdn certificates list --zone my-zone

# add a new certificate
b2c ecdn certificates add --zone my-zone --hostname www.example.com --type custom --certificate-file ./cert.pem --private-key-file ./key.pem

# validate a custom hostname
b2c ecdn certificates validate --zone my-zone --custom-hostname-id abc123
管理速率限制规则
# list rate limiting rules
b2c ecdn rate-limit list --zone my-zone

# create a rate limiting rule
b2c ecdn rate-limit create --zone my-zone --description "Rate limit /checkout" --expression '(http.request.uri.path matches "^/checkout")' --characteristics cf.unique_visitor_id --action block --period 60 --requests-per-period 50 --mitigation-timeout 600

# get a rule
b2c ecdn rate-limit get --zone my-zone --rule-id 2c0fc9fa937b11eaa1b71c4d701ab86e

# update a rule
b2c ecdn rate-limit update --zone my-zone --rule-id 2c0fc9fa937b11eaa1b71c4d701ab86e --requests-per-period 100

# delete a rule
b2c ecdn rate-limit delete --zone my-zone --rule-id 2c0fc9fa937b11eaa1b71c4d701ab86e --force
安全设置
# get security settings
b2c ecdn security get --zone my-zone

# update security settings
b2c ecdn security update --zone my-zone --security-level medium --always-use-https --tls13
速度设置
# get speed optimization settings
b2c ecdn speed get --zone my-zone

# update speed settings
b2c ecdn speed update --zone my-zone --brotli on --http3 on --webp on

其他主题

对于较少使用的 eCDN 功能,请参阅参考文件:

  • SECURITY.md — WAF(v1 和 v2)、自定义防火墙规则、速率限制和 Page Shield(CSP 策略、脚本检测、通知 Webhook)
  • ADVANCED.md — Logpush 作业、MRT 路由规则、mTLS 证书、密码套件配置和源站标头修改

配置覆盖项

租户 ID 可通过标志或环境变量覆盖:

  • --tenant-id / SFCC_TENANT_ID / dw.json 中的 tenantId

--zone 标志接受以下任一值:

  • 区域 ID(32 个字符的十六进制字符串)
  • 区域名称(便于阅读的名称,不区分大小写;会在组织的所有区域中查找,包括前 25 个以外的区域)
注意事项
  • Forbidden = 该区域不支持此功能,或 --zone ID 不属于此组织。
  • waf groups / waf rules(WAF v1)通常会失败并返回 Not Found(使用 WAF v2 的区域);请改用 waf rulesets。
  • firewall create --actions log(或 --enabled false)会暂存规则但不执行拦截;审核后请改用 managed_challenge/block。
SCAPI(API)区域

zones list 会列出 <realm>.api.commercecloud.salesforce.com(BM 中标记为 <shortCode>.api...)。该区域承载 SCAPI/SLAS 流量,包括无头店面。

  • 支持:firewall、rate-limit。
  • Forbidden(由平台管理,并非范围问题):security、speed、waf rulesets、certificates、cipher-suites、mrt-rules、page-shield、logpush、origin-headers。
  • 同一 realm 中的每个实例(dev/stg/prd)共用此区域。若要将规则限定到单个实例,请在路径中使用组织 ID,例如 (http.request.uri.path contains "/organizations/f_ecom_zzxy_prd/") and ...。未限定范围的规则会应用到所有实例。
OAuth 范围
操作所需范围
读取操作sfcc.cdn-zones
写入操作sfcc.cdn-zones.rw
更多命令

运行 b2c ecdn --help,查看 ecdn 主题下所有可用命令和选项的完整列表。

评论

支持 Markdown