sap-dependency-security について
主要なパッケージマネージャーの依存関係セキュリティとアップグレードを支援し、SAP プロジェクト、ツール、MCP サーバー向けの指針も提供するスキルです。サプライチェーン対策、互換性、段階的な更新、テストを扱います。
主な機能
- 01パッケージマネージャーの安全対策
- 02クールダウンとスクリプトの方針
- 03ロックファイル検証と固定インストール
- 04SAP MCP のバージョン固定指針
- 05段階的なアップグレード計画
活用シーン
- 01パッケージのインストール保護
- 02SAP MCP のバージョンとソースの確認
- 03テストを伴う依存関係更新の計画
MCP 対応
MCP サーバーを実行可能な依存関係として扱い、パッケージの正確なバージョンまたはソースコミットの固定、テナント接続ツールの確認、MCP 設定変更の検証を案内します。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ secondsky/ sap-skills --skill sap-dependency-securityインストール後、Claude Code で/sap-dependency-securityを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
README.mdagents/openai.yamlreferences/compatibility-matrix.mdcooldown-config-guide.mdpackage-manager-security.mdsap-dependency-risk-matrix.mdsap-mcp-inventory.jsonsap-mcp-security.mdsecrets-and-containers.mdsocket-cli-guide.mdstaged-upgrades.mdsupply-chain-security.mdtesting-strategy.mdscripts/generate-dependency-upgrades.shtemplates/abap-gcts-review.tmplbtp-cf-mbt-review.tmplbunfig-security.tmplcontainer-trivy.tmpldependabot-security.tmpldevcontainer-security.tmplgradle-security.tmplmaven-security.tmplnpmrc-security.tmplpnpm-workspace-security.tmplpython-security.tmplrenovate-security.tmplsap-mcp-config.tmplsocket-fix-ci.tmplsocket-scan-ci.tmplyarnrc-security.tmpl詳細
SAP 依存関係のセキュリティ
関連スキル
- sap-hana-cli:依存関係を考慮したデータベースツールのワークフローとアップグレードに関するガイダンス
- sap-cap-capire:CAP の依存関係に安全なランタイムおよびサービス構成に関するガイダンス
- sap-fiori-tools:ツールがフロントエンドパッケージを扱う場合の、安全な UI5/Fiori 依存関係戦略
- sapui5:SAPUI5/OpenUI5 フロントエンドの依存関係と MCP ツールのレビュー
- sap-datasphere:テナント接続型 Datasphere MCP と CLI の依存関係レビュー
- sap-sac-scripting:ソースを固定した SAC MCP のセットアップとローカルインストール記録
サプライチェーン保護、互換性分析、段階的なロールアウト、包括的なテストを用いて、すべての主要なパッケージマネージャーにわたる SAP の依存関係のセキュリティとアップグレードを管理します。
このスキルを使用する場面
- フレームワークまたはライブラリのメジャーバージョンをアップグレードする
- サプライチェーン攻撃の防止策(クールダウン、スクリプトのブロック、ロックファイルの強化)を構成する
- 安全なパッケージマネージャーの構成を設定する
- 依存関係の競合やピア依存関係の問題を解決する
- テストを伴う段階的なアップグレード経路を計画する
- Renovate、Dependabot、または Snyk を使って依存関係の更新を自動化する
- 脆弱性について依存関係を監査する
- CI/CD の依存関係セキュリティワークフローを設定する
.mcp.jsonの SAP MCP サーバーを固定またはレビューする- SAP CAP、UI5/Fiori、HANA、Datasphere、SAC、SAP Cloud SDK、BTP/CF/mbt、または ABAP/gCTS の依存関係ワークフローをレビューする
よくある問題
| 問題 | 推奨される対応 |
|---|---|
.mcp.json に浮動する MCP パッケージまたは @latest がある | 正確なバージョンまたは承認済みのソースコミットに置き換え、npm run validate:mcp-security を実行します。 |
| ロックファイルが予期せず変更された | パッケージマネージャーの設定を確認し、ライフサイクルスクリプトをブロックしてから、依存関係の意図が明確になった後にのみ再生成します。 |
| 依存関係がクールダウンポリシーより新しい | 文書化されたセキュリティ例外によって即時採用が正当化されない限り、アップグレードを保留します。 |
| テナント接続型ツールのソースが変更された | 認証情報を使用する前に、ソース URL、コミット、ビルド手順を確認します。 |
2 つの動作モード
対話型 — セットアップに関する質問を順に確認し、ニーズに合わせた構成を生成します。新規セットアップで使用します。
デフォルト — 推奨されるデフォルトをすぐに適用します:7 日間のクールダウン、すべてのスクリプトをブロック、frozen-lockfile、lockfile-lint、クールダウン付きの Dependabot。カスタマイズは任意です。
SAP 開発モード — より厳格な SAP の方針を適用します:14 日間のクールダウン、MCP サーバーと実行可能なツールのバージョンを厳密に固定、浮動する @latest を使用しない、ローカル MCP サーバーはソースコミットを固定、テナント接続型ツールは手動でレビューします。
SAP 開発モード
依存関係に関する作業が SAP プロジェクト、SAP BTP デプロイツール、SAP SDK、またはこのリポジトリが提供する MCP サーバーに関わる場合は、SAP 開発モードを使用してください。
基本ルール:
- SAP エンタープライズプロジェクトでは、デフォルトで 14 日間のクールダウンを適用します。明示的な例外は SAP MCP インベントリまたはプロジェクトのレビュー記録に残します。
- MCP サーバーは実行可能な依存関係として扱います。
.mcp.jsonでは、@ui5/[email protected]のような npm パッケージを正確なバージョンで指定し、@latestやパッケージ名のみの指定は決して使用しません。 - ローカルソースの MCP はコミットで固定します。SAC では信頼できる
secondsky/sap_analytics_cloud_mcpフォークを使用し、コミット2020235505d98111c2889598ab2217c1619b6943を記録する必要があります。 - ランタイム認可は分離して管理します。このスキルの対象はパッケージ、ソース、実行可能ファイルの信頼性です。テナントのロール設計と業務認可には、該当する SAP スキルを使用します。
.mcp.jsonまたは SAP MCP インベントリを変更した後は、npm run validate:mcp-securityを実行して MCP の差異を検証します。
SAP スタックの対象範囲については references/sap-dependency-risk-matrix.md を、MCP の更新ワークフローと SAC のソースインストールポリシーについては references/sap-mcp-security.md を読み込んでください。機械可読形式の承認済み MCP パッケージ/ソース一覧には references/sap-mcp-inventory.json を使用してください。
対話型セットアップフロー
ユーザーがニーズに合わせた構成を希望する場合は、以下の判断項目を順に確認します。デフォルトモードを使用する場合は、このセクション全体を省略してください。
Tier 1:必須の選択項目
設定を生成する前に、必ず次の3つの質問をしてください。
1. パッケージマネージャー
「このプロジェクトで使用しているパッケージマネージャーはどれですか?」
| 回答 | 生成されるもの |
|---|---|
| npm | .npmrc |
| Bun | bunfig.toml |
| pnpm | pnpm-workspace.yaml |
| Yarn | .yarnrc.yml |
| Deno | deno.json 設定 |
2. クールダウン期間
「新しく公開されたパッケージをインストールするまでに、何日間待ちますか?これにより、悪意のあるパッケージが発見され、数日以内に削除されるサプライチェーン攻撃を防ぎます。」
| オプション | 日数 | 用途 |
|---|---|---|
| 積極的 | 3 | タイポスクワッティングの大半を検出 |
| 推奨 | 7 | ほとんどのプロジェクトでバランスが良好 |
| 慎重 | 14 | 重要なシステム/本番システム |
| 厳重 | 21 | Snyk の組み込みデフォルトに準拠 |
| カスタム | N | ユーザーが指定 |
3. インストール後のスクリプトポリシー
「ライフサイクルスクリプト(postinstall、preinstall)をどのように扱いますか?これらはサプライチェーン攻撃の最大の侵入経路です。」
| オプション | 動作 |
|---|---|
| すべてブロック(推奨) | --ignore-scripts + allow-git=none |
| 許可リスト | デフォルトでブロックし、信頼できる特定のパッケージを許可 |
| レビューのみ | 警告するが、ブロックしない |
Tier 2:セキュリティツール(まとめて提示)
「次のセキュリティ機能のうち、設定するものを選んでください。該当するものをすべて選択してください。」
4. CI/CD 自動化ツール
| 回答 | 生成されるもの |
|---|---|
| Dependabot | クールダウン設定付きの .github/dependabot.yml |
| Renovate | minimumReleaseAge 設定付きの renovate.json |
| Snyk | 設定不要(21日間のクールダウンが組み込み済み) |
| なし | スキップ |
5. 自動マージポリシー
| オプション | 動作 |
|---|---|
| なし | すべての更新で手動レビューが必要 |
| マイナーおよびパッチのみ | 安全な更新を自動マージし、メジャー更新はレビュー |
| 承認後にすべて | チームの承認後に自動マージ |
6. 更新スケジュール
| オプション | 設定値 |
|---|---|
| 毎日 | "daily" |
| 毎週(デフォルト) | "weekly" |
| 隔週 | "biweekly" |
| 毎月 | "monthly" |
7. インストール時のセキュリティツール
「依存関係のインストールを保護するセキュリティツールはどれですか?」
| オプション | 無料? | 機能 |
|---|---|---|
| socket npm wrapper | はい(ベータ版) | npm/npx をラップし、インストール前に悪意のあるパッケージをブロックします。socket wrapper on を実行するとシステム全体で有効になります。 |
| npq | はい | インストール前の監査ツール(CVE、タイポスクワット、経過期間、来歴をチェック) |
| Socket Firewall (sfw) | いいえ | リアルタイムで詳細に分析し、悪意のあるパッケージをブロック |
| socket npm + npq | はい | 2つの無料ツールを組み合わせて使用 |
| なし | — | スキップ |
Socket CLI の設定全般(認証、無料機能と認証済み機能の違いを含む)については、references/socket-cli-guide.md を読み込んでください。
8. ロックファイルの検証
| オプション | 動作 |
|---|---|
| はい(推奨) | lockfile-lint と CI スクリプトを追加 |
| いいえ | スキップ |
Tier 3:高度なオプション(ユーザーが希望した場合のみ)
「高度なオプションも設定しますか?」
9. Dev Containers — 強化された .devcontainer/devcontainer.json を生成(はい/いいえ)
10. シークレットマネージャー — 1Password CLI/Infisical/なし
11. pnpm の信頼ポリシー — trustPolicy: no-downgrade を有効化(pnpm 10.21+ のみ、はい/いいえ)
12. クールダウンの除外対象 — クールダウンを適用しないパッケージ名(例:@types/react、typescript、esbuild)
セキュリティを最優先するアップグレードの原則
- インストール前にクールダウン期間を設ける — 一般的なプロジェクトでは7日間、SAP エンタープライズ/MCP ワークフローでは14日間待ち、新しいパッケージバージョンがコミュニティによって検証されるようにします
- インストール後スクリプトをブロックする —
npm install中の任意のコード実行を防ぎます - CI でロックファイルを固定する — 再現性のあるインストール(
npm ci、--frozen-lockfile)を使用します - ロックファイルの整合性を検証する —
lockfile-lintを使用してインジェクションを検出します - 信頼する前に監査する — インストール前に
npqまたは Socket CLI を使用してパッケージを確認します - 段階的にアップグレードする — メジャーバージョンは一度に1つずつアップグレードし、その都度テストします
- 確認せずにアップグレードしない — レビューせずに
npm updateやnpm-check-updates -uを実行しないでください - 前後にスキャンする — CVE 以外のサプライチェーン上の問題を検出するため、
socket scanを使用します - SAP MCP 実行ファイルのバージョンを固定する — MCP サーバーに SAP プロジェクトやテナントへのアクセスを許可する前に、正確な npm バージョンまたはソースのコミットを固定します
クールダウン期間:サプライチェーン攻撃を防ぐ
新たに公開されたパッケージには、数時間以内に発見される悪意のあるコードが含まれている場合があります。インストールを遅らせるため、クールダウン期間を設定してください。
クイックセットアップ
npm(.npmrc):
min-release-age=7
Bun(bunfig.toml):
[install]
minimumReleaseAge = 604800 # 7 days in seconds
minimumReleaseAgeExcludes = ["@types/bun", "typescript"]
pnpm(pnpm-workspace.yaml):
minimumReleaseAge: 10080 # 7 days in minutes
minimumReleaseAgeExclude:
- '@types/react'
- typescript
Yarn(.yarnrc.yml):
npmMinimalAgeGate: "7d"
npmPreapprovedPackages:
- "@types/react"
- "typescript"
詳細なパッケージマネージャー別の設定、CI ツールとの統合、除外パターンについては、references/cooldown-config-guide.md を読み込んでください。
コピーしてすぐに使える設定ファイルには、templates/<pm>-security.tmpl を使用してください。
インストール後スクリプトを無効にする
インストール後スクリプトは、サプライチェーン攻撃で最も一般的な手段です(Shai-Hulud、Nx、event-stream のインシデント)。
クイックセットアップ
npm:
npm config set ignore-scripts true
npm config set allow-git none
Bun:デフォルトで無効です。package.json で特定のパッケージを許可します:
{ "trustedDependencies": ["esbuild", "sharp"] }
pnpm(10.0+):デフォルトで無効です。pnpm-workspace.yaml で特定のパッケージを許可します:
allowBuilds:
esbuild: true
strictDepBuilds: true # Hard error on unreviewed scripts
pnpm の trustPolicy、blockExoticSubdeps、@lavamoat/allow-scripts を含む、パッケージマネージャー別の完全な強化設定については、references/package-manager-security.md を読み込んでください。
再現性のある固定インストール
再現可能なビルドを実現するため、CI では必ず固定インストールコマンドを使用してください:
| パッケージマネージャー | コマンド | 内容 |
|---|---|---|
| npm | npm ci | node_modules を削除し、ロックファイルに記載された正確なバージョンをインストールします |
| Bun | bun install --frozen-lockfile | ロックファイルと同期していない場合は失敗します |
| pnpm | pnpm install --frozen-lockfile | ロックファイルと同期していない場合は失敗します |
| Yarn | yarn install --immutable --immutable-cache | ロックファイルとキャッシュを検証します |
| Deno | deno install --frozen | 固定インストール |
すべてのロックファイルをバージョン管理にコミットしてください:package-lock.json、bun.lock、pnpm-lock.yaml、yarn.lock、deno.lock。
ロックファイルの検証
ロックファイルへのインジェクション攻撃を検出するには、lockfile-lint をインストールして設定します:
npm install --save-dev lockfile-lint
{
"scripts": {
"lint:lockfile": "lockfile-lint --path package-lock.json --type npm --allowed-hosts npm --validate-https",
"preinstall": "npm run lint:lockfile"
}
}
注:lockfile-lint は現在、Bun の bun.lock/bun.lockb 形式をサポートしていません。
インストール前のセキュリティ監査
npq — インストール前の監査ツール
npm install -g npq
npq install <package> # Audit before installing
npq install <package> --dry-run # Audit without installing
# Shell alias for seamless use
alias npm='npq-hero'
# Use with other PMs
NPQ_PKG_MGR=pnpm npq install <package>
NPQ_PKG_MGR=bun npq install <package>
Socket Firewall(sfw)— リアルタイムブロッカー
npm install -g sfw
sfw npm install <package> # Blocks malicious packages
sfw pnpm add <package>
sfw yarn add <package>
npq と sfw の詳細な比較、およびそれぞれの検証項目については、references/supply-chain-security.md を読み込んでください。
Socket CLI の統合
Socket CLI は、基本的な脆弱性スキャンを超えたプロアクティブなサプライチェーンセキュリティを提供します。マルウェアの検出、タイポスクワッティング、プロテストウェア、インストールスクリプトのリスク、ライセンス準拠を対象としています。
プロアクティブなアップグレードワークフロー
1. PRE-UPGRADE: socket scan create --report → establish baseline
2. EVALUATE: socket package score npm <pkg>@<ver> → assess target package safety
3. SAFE INSTALL: socket npm install <pkg> → block malicious packages
4. POST-UPGRADE: socket scan create --report → verify no new alerts
5. DIFF: socket scan diff <before> <after> → see exactly what changed
6. FIX: socket fix --minimum-release-age 7d → auto-fix any new CVEs
7. OPTIMIZE: socket optimize → apply security overrides
クイックリファレンス
# Install
npm install -g socket
# Authenticate (required for scans, fixes, package scores)
socket login
# Check a package before upgrading
socket package score npm <package>
# Scan your whole project
socket scan create --report
# Auto-fix CVEs (complements Dependabot/Renovate)
socket fix --minimum-release-age 7d
# Gate CI on security policy
socket ci
# Safe npm wrapper (free, no auth needed)
socket wrapper on
包括的なコマンドリファレンス、CI ワークフローのテンプレート、アラートカテゴリ、無料機能と認証済み機能の比較表については、references/socket-cli-guide.md を読み込んでください。
依存関係の分析
# Audit for vulnerabilities
bun audit # Bun
npm audit # npm
yarn audit # Yarn
# Socket: deep security assessment (CVEs + supply chain + license)
socket package score npm <package>
socket scan create --report
# Check for outdated packages
bun outdated
npm outdated
# Interactive upgrade (safe — review each)
bunx npm-check-updates --interactive
# Analyze dependency tree
npm ls <package-name>
yarn why <package-name>
段階的なアップグレード戦略
依存関係は一度に1つずつアップグレードし、その都度テストしてください:
# 1. Create feature branch
git checkout -b upgrade/<package>-<version>
# 2. (Optional) Baseline scan — capture current state
socket scan create --report
# 3. Evaluate target package before upgrading
socket package score npm <package>@<version>
# 4. Upgrade single package
bun add <package>@<version>
# 5. Test immediately
bun test && bunx tsc --noEmit && bun run build
# 6. (Optional) Post-upgrade scan — verify no new alerts
socket scan create --report
# 7. Commit and continue
git add -A && git commit -m "chore: upgrade <package> to <version>"
codemod による自動化、カスタム移行スクリプト、ピア依存関係の処理については、references/staged-upgrades.md を読み込んでください。
バージョン互換性の表(React 18/19、Next.js 13-15、TypeScript、Tailwind 3/4)については、references/compatibility-matrix.md を読み込んでください。
クールダウン期間を設けた自動更新
CI/CD ツールでクールダウン期間を守るように設定します。
Dependabot(.github/dependabot.yml)
version: 2
updates:
- package-ecosystem: "npm"
directory: "/"
schedule:
interval: "weekly"
cooldown:
default-days: 7
Renovate(renovate.json)
{
"extends": ["config:base"],
"minimumReleaseAge": "7 days",
"packageRules": [
{
"matchUpdateTypes": ["minor", "patch"],
"automerge": true
},
{
"matchUpdateTypes": ["major"],
"automerge": false,
"minimumReleaseAge": "14 days"
}
]
}
Snyk
Snyk には、アップグレード PR 用の 21 日間のクールダウンが組み込まれています。設定は不要です。
Socket Fix(Dependabot/Renovate を補完)
Socket Fix は、インテリジェントなアップグレード計画によって CVE を自動的に解決します。他の自動化ツールと並行して実行され、特に CVE の修正に重点を置いています。
# Fix all fixable CVEs with cooldown alignment
socket fix --minimum-release-age 7d
# Conservative: no major version bumps
socket fix --minimum-release-age 7d --no-major-updates
# Target specific CVEs
socket fix --id GHSA-hhq3-ff78-jv3g --minimum-release-age 7d
# Preview without applying
socket fix --no-apply-fixes --minimum-release-age 7d
CI オートパイロットモード(修正 PR を自動作成し、自動マージするモード)には、templates/socket-fix-ci.tmpl を使用してください。
--autopilot、--range-style、--pr-limit など、socket fix のオプションの詳細については、references/socket-cli-guide.md を読み込んでください。
完全な設定ファイルには、templates/dependabot-security.tmpl または templates/renovate-security.tmpl を使用してください。
公開時のセキュリティ
パッケージのメンテナー向け:
# Enable 2FA
npm profile enable-2fa auth-and-writes
# Publish with provenance (cryptographic build proof)
npm publish --provenance
# Trusted publishing via OIDC (eliminates long-lived tokens)
# Configure on npmjs.com, then:
# In GitHub Actions: permissions: id-token: write
OIDC の設定や依存関係ツリーの削減を含む、公開時のセキュリティに関する完全なガイドについては、references/supply-chain-security.md を読み込んでください。
開発環境の強化
依存関係の実行をホストシステムから隔離します。
- 開発コンテナー — 悪意のあるパッケージによる被害範囲を制限します
- シークレット管理 — 平文の
.envファイルの代わりに、1Password CLI または Infisical を使用します - 依存関係ツリーの削減 — 一般的なパッケージをネイティブ JS に置き換えます
強化された開発コンテナー設定には、templates/devcontainer-security.tmpl を使用してください。
開発コンテナーの設定、シークレット管理、依存関係削減のパターンについては、references/secrets-and-containers.md を読み込んでください。
テスト戦略
アップグレードのたびに、各レベルでテストを実行します。
# 1. Static analysis (fastest)
bunx tsc --noEmit && bun run lint
# 2. Unit tests
bun test
# 3. Build check
bun run build
# 4. Integration / E2E (after major upgrades)
bun run test:e2e
テストピラミッド全体、CI との統合、バンドル分析については、references/testing-strategy.md を読み込んでください。
ロールバック計画
#!/bin/bash
git stash
git checkout -b upgrade/<package>
bun add <package>@latest
if bun test && bun run build; then
git add package.json bun.lock
git commit -m "chore: upgrade <package>"
else
echo "Upgrade failed, rolling back"
git checkout main
git branch -D upgrade/<package>
bun install
fi
アップグレードチェックリスト
Pre-Upgrade:
- [ ] Review current dependency versions
- [ ] Read changelogs for breaking changes
- [ ] Create feature branch
- [ ] Tag current state (git tag pre-upgrade)
- [ ] Run full test suite (baseline)
- [ ] Verify cooldown period is configured
- [ ] For SAP MCP changes, verify exact package/source pins against `references/sap-mcp-inventory.json`
Security Pre-Checks:
- [ ] Post-install scripts are disabled
- [ ] Lockfile validation is active
- [ ] Install auditing tools configured (if applicable)
- [ ] CI uses frozen-lockfile install
- [ ] Run `socket scan create --report` for baseline (if Socket available)
During Upgrade:
- [ ] Upgrade one dependency at a time
- [ ] Check target package: `socket package score npm <pkg>` (if Socket available)
- [ ] Respect cooldown period (don't force latest)
- [ ] Update peer dependencies
- [ ] Fix TypeScript errors
- [ ] Run test suite after each upgrade
- [ ] Check bundle size impact
Post-Upgrade:
- [ ] Post-upgrade scan: `socket scan diff` to verify no new alerts (if Socket available)
- [ ] Consider `socket fix --minimum-release-age 7d` for any new CVEs
- [ ] Full regression testing
- [ ] Performance testing
- [ ] Update documentation
- [ ] Deploy to staging
- [ ] Monitor for errors
- [ ] Deploy to production
よくある落とし穴
- すべての依存関係を一度にアップグレードする(段階的にアップグレードしてください)
- レビューせずに
npm updateやnpm-check-updates -uをむやみに実行する - 個々のアップグレードごとにテストしない
- ピア依存関係の警告を無視する
- ロックファイルの更新またはコミットを忘れる
- 変更履歴に記載された破壊的変更の注意事項を読まない
- メジャーバージョンを順番にアップグレードせず、飛ばしてしまう
- ロールバック計画を用意しない
- npmjs.org に表示されるソースコードを信頼する(実際の tarball と異なる場合があります)
- post-install スクリプトを有効にしたままにする(最も一般的な攻撃ベクトルです)
- 新しいパッケージバージョンにクールダウン期間を設定しない
@latest、バージョンを固定していないnpxパッケージ、またはバージョンを固定していないローカルソースのパスを含む SAP MCP 設定を出荷する
参照資料を読み込むタイミング
SKILL.md のクイックリファレンスより詳しい情報が必要な場合は、以下の参照ファイルを読み込んでください。
| このファイルを読み込む | タイミング |
|---|---|
references/cooldown-config-guide.md | 特定の PM のクールダウン設定、CI ツールとの連携、または除外パターンの設定 |
references/package-manager-security.md | pnpm の信頼ポリシー、blockExoticSubdeps、パッケージマネージャー横断のチートシートなど、パッケージマネージャーごとの完全な強化ガイド |
references/supply-chain-security.md | 攻撃ベクトル、インシデントの履歴、npq と sfw と Socket CLI の比較、公開者のセキュリティ(2FA、来歴、OIDC)の理解 |
references/secrets-and-containers.md | 開発コンテナーのセットアップ、1Password/Infisical を使ったシークレット管理 |
references/socket-cli-guide.md | スキャン、修正、パッケージのスコアリング、CI 連携、ラッパーモード、アラートカテゴリでの Socket CLI の使用 |
references/compatibility-matrix.md | React、Next.js、TypeScript、Tailwind のアップグレードにおけるバージョン互換性の確認 |
references/staged-upgrades.md | Codemod による自動化、カスタム移行スクリプト、ピア依存関係の処理、ワークスペースのアップグレード |
references/testing-strategy.md | 完全なテストピラミッド、CI 連携、バンドル分析、パフォーマンステスト |
references/sap-dependency-risk-matrix.md | Node、Java、Python、コンテナー、BTP/CF/mbt、ABAP/gCTS、MCP を対象とした SAP スタック固有の依存関係レビュー |
references/sap-mcp-security.md | SAP MCP の厳密なバージョン固定ポリシー、SAC のソースインストールポリシー、MCP の更新ワークフロー |
references/sap-mcp-inventory.json | npm run validate:mcp-security で使用される、機械可読形式の承認済み SAP MCP パッケージ/ソースのバージョン固定情報 |
テンプレートファイル
templates/ にすぐに使える設定ファイルがあります。
| テンプレート | 用途 |
|---|---|
npmrc-security.tmpl | スクリプトを無効にし、クールダウンを設定した安全な .npmrc |
bunfig-security.tmpl | クールダウンと除外を設定した安全な bunfig.toml |
pnpm-workspace-security.tmpl | クールダウン、allowBuilds、trustPolicy を設定した安全な pnpm-workspace.yaml |
yarnrc-security.tmpl | 経過日数ゲートと事前承認済みパッケージを設定した安全な .yarnrc.yml |
dependabot-security.tmpl | 7 日間のクールダウンを設定した Dependabot 構成 |
renovate-security.tmpl | minimumReleaseAge と自動マージルールを設定した Renovate 構成 |
devcontainer-security.tmpl | セキュリティオプションを設定した強化済み開発コンテナー |
socket-fix-ci.tmpl | GitHub Actions:クールダウンに合わせて CVE を修正する Socket Fix 自動操縦 |
socket-scan-ci.tmpl | GitHub Actions:すべてのプッシュ/PR を対象とする Socket CI セキュリティゲート |
sap-mcp-config.tmpl | 厳密なバージョン固定チェックリストを含む、レビュー用 SAP MCP 構成候補 |
maven-security.tmpl | SAP Java プロジェクト向け Maven チェックサム/エンフォーサー/依存関係スキャン用フラグメント |
gradle-security.tmpl | Gradle の依存関係ロックと検証用フラグメント |
python-security.tmpl | SAP AI SDK、HANA ML、データツール向けの Python ロック/監査ワークフロー |
container-trivy.tmpl | Trivy によるコンテナーイメージスキャンのワークフローとダイジェスト固定のリマインダー |
btp-cf-mbt-review.tmpl | BTP、Cloud Foundry、MBT の依存関係/デプロイメント確認チェックリスト |
abap-gcts-review.tmpl | ABAP、gCTS、移送依存関係の確認チェックリスト |