mcpField
B
b2c-ecdn

b2c-ecdn

github.com/salesforcecommercecloudクラウド・DevOps5790 回インストール今日更新
リポジトリ

b2c-ecdn について

Salesforce B2C Commerceの運用担当者がb2c CLIでeCDNを管理するためのスキルです。ゾーン、証明書、キャッシュ、セキュリティ設定に加え、トラフィックルールの例を扱います。

主な機能

  1. 01CDNゾーンの一覧表示と作成
  2. 02証明書管理とホスト名検証
  3. 03パスまたはタグによるキャッシュ削除
  4. 04レート制限とセキュリティ設定
  5. 05速度最適化設定の調整

活用シーン

  1. 01ストアフロント用CDNゾーンの作成
  2. 02指定パスのキャッシュ削除
  3. 03チェックアウトパスへのレート制限設定
  4. 04HTTPSと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 スキルを参照してください。

前提条件

  • OAuth 認証情報(読み取り操作用の sfcc.cdn-zones スコープ付き)
  • OAuth 認証情報(書き込み操作用の sfcc.cdn-zones.rw スコープ付き)
  • 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 文字の 16 進数文字列)
  • ゾーン名(人が読める名前。組織内のすべてのゾーンを対象に、大文字と小文字を区別せずに検索します。最初の 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。
  • レルム内のすべてのインスタンス(dev/stg/prd)で共有されます。パス内の組織 ID を使って、ルールを 1 つのインスタンスに限定してください。例:(http.request.uri.path contains "/organizations/f_ecom_zzxy_prd/") and ...。スコープを指定しないルールは、すべてのインスタンスに適用されます。
OAuth スコープ
操作必要なスコープ
読み取り操作sfcc.cdn-zones
書き込み操作sfcc.cdn-zones.rw
その他のコマンド

ecdn トピックで使用できるコマンドとオプションの全一覧については、b2c ecdn --help を参照してください。

コメント