soc2-compliance
SaaS企業がSOC2 Type IIに準拠するために、監査準備、セキュリティ要件への対応、大企業顧客のオンボーディングに必要な証拠収集や管理体制構築を支援するSkill。
📜 元の英語説明(参考)
Achieve SOC 2 Type II compliance for SaaS — Trust Service Criteria, evidence collection, and controls implementation. Use when preparing for a SOC 2 audit, meeting B2B SaaS security requirements, or onboarding enterprise customers who require a SOC 2 report.
🇯🇵 日本人クリエイター向け解説
SaaS企業がSOC2 Type IIに準拠するために、監査準備、セキュリティ要件への対応、大企業顧客のオンボーディングに必要な証拠収集や管理体制構築を支援するSkill。
※ jpskill.com 編集部が日本のビジネス現場向けに補足した解説です。Skill本体の挙動とは独立した参考情報です。
下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。
mkdir -p ~/.claude/skills && cd ~/.claude/skills && curl -L -o soc2-compliance.zip https://jpskill.com/download/15391.zip && unzip -o soc2-compliance.zip && rm soc2-compliance.zip
$d = "$env:USERPROFILE\.claude\skills"; ni -Force -ItemType Directory $d | Out-Null; iwr https://jpskill.com/download/15391.zip -OutFile "$d\soc2-compliance.zip"; Expand-Archive "$d\soc2-compliance.zip" -DestinationPath $d -Force; ri "$d\soc2-compliance.zip"
完了後、Claude Code を再起動 → 普通に「動画プロンプト作って」のように話しかけるだけで自動発動します。
💾 手動でダウンロードしたい(コマンドが難しい人向け)
- 1. 下の青いボタンを押して
soc2-compliance.zipをダウンロード - 2. ZIPファイルをダブルクリックで解凍 →
soc2-complianceフォルダができる - 3. そのフォルダを
C:\Users\あなたの名前\.claude\skills\(Win)または~/.claude/skills/(Mac)へ移動 - 4. Claude Code を再起動
⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。
🎯 このSkillでできること
下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。
📦 インストール方法 (3ステップ)
- 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
- 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
- 3. 展開してできたフォルダを、ホームフォルダの
.claude/skills/に置く- · macOS / Linux:
~/.claude/skills/ - · Windows:
%USERPROFILE%\.claude\skills\
- · macOS / Linux:
Claude Code を再起動すれば完了。「このSkillを使って…」と話しかけなくても、関連する依頼で自動的に呼び出されます。
詳しい使い方ガイドを見る →- 最終更新
- 2026-05-18
- 取得日時
- 2026-05-18
- 同梱ファイル
- 1
📖 Skill本文(日本語訳)
※ 原文(英語/中国語)を Gemini で日本語化したものです。Claude 自身は原文を読みます。誤訳がある場合は原文をご確認ください。
[Skill 名] soc2-compliance
SOC 2 準拠
概要
SOC 2 (System and Organization Controls 2) は、サービス組織向けに AICPA によって開発された監査基準です。SOC 2 Type II レポートは、6〜12 か月の期間を対象とし、コントロールが設計されただけでなく、効果的に運用されていることを示します。企業のバイヤーは、契約に署名する前にほぼ例外なく SOC 2 を要求します。
信頼サービス基準 (TSC)
| 基準 | 略語 | 必須ですか? | 説明 |
|---|---|---|---|
| セキュリティ | CC | ✅ 常に | 不正アクセスからの保護 |
| 可用性 | A | オプション | システムが運用および使用可能であること |
| 機密性 | C | オプション | 機密として指定された情報が保護されていること |
| 処理の完全性 | PI | オプション | 処理が完全、有効、正確、タイムリーであること |
| プライバシー | P | オプション | 個人情報が適切に収集、使用、保持、開示されていること |
ほとんどの SaaS 企業は、セキュリティ + 可用性 から始めます。機密データを扱う場合は機密性を追加し、GDPR/CCPA の対象となる個人データを扱う場合はプライバシーを追加します。
共通コントロールフレームワーク (CC)
CC1 — コントロール環境
- 年次で見直される書面によるセキュリティポリシー
- すべてのスタッフが承認した行動規範
- 明確なセキュリティ責任を伴う組織図
CC2 — コミュニケーションと情報
- すべての担当者に伝達されるセキュリティポリシー
- ベンダーリスク評価の文書化
- セキュリティ意識向上トレーニングの記録
CC3 — リスク評価
リスク登録簿のエントリ:
- リスク ID: RISK-001
- タイトル: データベースへの不正アクセス
- 可能性: 中
- 影響: 大
- 固有リスク: 大
- コントロール: MFA、ネットワークセグメンテーション、IAM 最小特権
- 残余リスク: 小
- 所有者: CTO
- レビュー日: 2025-01-15
CC4 — 監視活動
- 自動化された脆弱性スキャン (最低週 1 回)
- 四半期ごとのアクセスレビュー
- 侵入検知アラートの毎日レビュー
CC5 — コントロール活動
- ピアレビューを含む変更管理プロセス
- 年次でテストされるインシデント対応計画
- 年次で実施されるペネトレーションテスト
CC6 — 論理的および物理的アクセス制御
MFA 強制 (Node.js の例):
// すべての管理者ユーザーに MFA を強制する
const requireMFA = async (req, res, next) => {
const user = req.user;
if (user.role === 'admin' && !user.mfaVerified) {
return res.status(403).json({
error: 'MFA required for admin access',
code: 'MFA_REQUIRED'
});
}
next();
};
// CC6 の証拠として、すべての認証イベントをログに記録する
const logAuthEvent = async (userId, event, success, ipAddress) => {
await db.auditLog.create({
userId,
event, // 'login' | 'logout' | 'mfa_verify' | 'password_reset'
success,
ipAddress,
userAgent: req.headers['user-agent'],
timestamp: new Date().toISOString()
});
};
アクセスレビューの自動化:
import boto3
from datetime import datetime, timedelta
def generate_access_review_report():
"""CC6 の四半期ごとのアクセスレビューの証拠を生成します。"""
iam = boto3.client('iam')
report = []
users = iam.list_users()['Users']
for user in users:
# 最終アクティビティを確認する
login_profile = None
try:
login_profile = iam.get_login_profile(UserName=user['UserName'])
except iam.exceptions.NoSuchEntityException:
pass
groups = iam.list_groups_for_user(UserName=user['UserName'])
policies = iam.list_attached_user_policies(UserName=user['UserName'])
report.append({
"user": user['UserName'],
"created": user['CreateDate'].isoformat(),
"groups": [g['GroupName'] for g in groups['Groups']],
"policies": [p['PolicyName'] for p in policies['AttachedPolicies']],
"has_console_access": login_profile is not None,
"review_date": datetime.utcnow().isoformat(),
"reviewed_by": "security-team"
})
return report
CC7 — システム運用
- アラート付きのインフラストラクチャ監視
- ログ集約と異常検知
- キャパシティプランニングレビュー
CC8 — 変更管理
Git ベースの変更管理:
# PR 経由のすべての変更 (GitHub ブランチ保護で強制)
# - 必須レビュー担当者: 2
# - 必須 CI チェック: テスト、セキュリティスキャン、lint
# - メインへの直接プッシュは不可
# デプロイ承認記録 (監査証拠用)
cat deployment-log.json
# {
# "deploy_id": "deploy-2024-0115-001",
# "author": "alice@company.com",
# "reviewer": "bob@company.com",
# "approved_at": "2024-01-15T14:30:00Z",
# "deployed_at": "2024-01-15T14:45:00Z",
# "changes": "JIRA-123: Add MFA to admin panel",
# "rollback_plan": "Revert commit abc123"
# }
CC9 — リスク軽減
- ベンダー管理プログラム
- 事業継続計画
- サイバー保険
証拠収集
SOC 2 監査人は、監査期間中にコントロールが継続的に運用されていたという証拠を必要とします。
| コントロール | 証拠の種類 | 頻度 | ストレージ |
|---|---|---|---|
| MFA 有効 | スクリーンショット + IAM エクスポート | 四半期ごと | Vanta/Drata |
| アクセスレビュー | 署名付きレビュー記録 | 四半期ごと | Google Drive |
| 脆弱性スキャン | スキャンレポート | 毎週 | S3/Drive |
| ペンテスト | レポート + 修正 | 毎年 | Drive |
| セキュリティトレーニング | 完了証明書 | 毎年 | HRIS |
| インシデント対応テスト | 卓上演習ノート | 毎年 | Drive |
| 保存時の暗号化 | 構成のスクリーンショット | 変更ベース | Drive |
| バックアップテスト済み | リストアテストログ | 四半期ごと | Drive |
自動化ツール
Vanta (スタートアップに推奨)
# Vanta はクラウドアカウントに接続し、証拠を自動的に収集します
# 統合: AWS, GCP, Azure, GitHub, Okta, Google Workspace, Slack
# 接続後、Vanta は以下を自動的に監視します:
# - MFA 強制 (CC6.1)
# - 保存時の暗号化 (CC6.7)
# - 脆弱性スキャン (CC7.1)
# - 身元調査 (CC1.1)
# - アクセスレビュー (CC6.2)
Drata / Secureframe
どちらも同様の自動化を提供します: 継続的な共同
📜 原文 SKILL.md(Claudeが読む英語/中国語)を展開
SOC 2 Compliance
Overview
SOC 2 (System and Organization Controls 2) is an auditing standard developed by the AICPA for service organizations. A SOC 2 Type II report covers a period of 6-12 months, demonstrating controls are operating effectively — not just designed. Enterprise buyers almost universally require SOC 2 before signing contracts.
Trust Service Criteria (TSC)
| Criteria | Abbrev | Required? | Description |
|---|---|---|---|
| Security | CC | ✅ Always | Protection against unauthorized access |
| Availability | A | Optional | System available for operation and use |
| Confidentiality | C | Optional | Information designated as confidential is protected |
| Processing Integrity | PI | Optional | Processing is complete, valid, accurate, timely |
| Privacy | P | Optional | Personal information collected, used, retained, disclosed properly |
Most SaaS companies start with Security + Availability. Add Confidentiality if handling sensitive data; add Privacy if handling personal data covered by GDPR/CCPA.
Common Controls Framework (CC)
CC1 — Control Environment
- Written security policies reviewed annually
- Code of conduct acknowledged by all staff
- Org chart with clear security accountability
CC2 — Communication and Information
- Security policies communicated to all personnel
- Vendor risk assessments documented
- Security awareness training records
CC3 — Risk Assessment
Risk Register entry:
- Risk ID: RISK-001
- Title: Unauthorized database access
- Likelihood: Medium
- Impact: High
- Inherent Risk: High
- Controls: MFA, network segmentation, IAM least-privilege
- Residual Risk: Low
- Owner: CTO
- Review Date: 2025-01-15
CC4 — Monitoring Activities
- Automated vulnerability scanning (weekly minimum)
- Quarterly access reviews
- Intrusion detection alerts reviewed daily
CC5 — Control Activities
- Change management process with peer review
- Incident response plan tested annually
- Penetration testing annually
CC6 — Logical and Physical Access Controls
MFA enforcement (Node.js example):
// Enforce MFA for all admin users
const requireMFA = async (req, res, next) => {
const user = req.user;
if (user.role === 'admin' && !user.mfaVerified) {
return res.status(403).json({
error: 'MFA required for admin access',
code: 'MFA_REQUIRED'
});
}
next();
};
// Log all authentication events for CC6 evidence
const logAuthEvent = async (userId, event, success, ipAddress) => {
await db.auditLog.create({
userId,
event, // 'login' | 'logout' | 'mfa_verify' | 'password_reset'
success,
ipAddress,
userAgent: req.headers['user-agent'],
timestamp: new Date().toISOString()
});
};
Access review automation:
import boto3
from datetime import datetime, timedelta
def generate_access_review_report():
"""Generate quarterly access review evidence for CC6."""
iam = boto3.client('iam')
report = []
users = iam.list_users()['Users']
for user in users:
# Check last activity
login_profile = None
try:
login_profile = iam.get_login_profile(UserName=user['UserName'])
except iam.exceptions.NoSuchEntityException:
pass
groups = iam.list_groups_for_user(UserName=user['UserName'])
policies = iam.list_attached_user_policies(UserName=user['UserName'])
report.append({
"user": user['UserName'],
"created": user['CreateDate'].isoformat(),
"groups": [g['GroupName'] for g in groups['Groups']],
"policies": [p['PolicyName'] for p in policies['AttachedPolicies']],
"has_console_access": login_profile is not None,
"review_date": datetime.utcnow().isoformat(),
"reviewed_by": "security-team"
})
return report
CC7 — System Operations
- Infrastructure monitoring with alerts
- Log aggregation and anomaly detection
- Capacity planning reviews
CC8 — Change Management
Git-based change management:
# All changes via PR (enforced in GitHub branch protection)
# - Required reviewers: 2
# - Required CI checks: tests, security scan, lint
# - No direct pushes to main
# Deployment approval record (for audit evidence)
cat deployment-log.json
# {
# "deploy_id": "deploy-2024-0115-001",
# "author": "alice@company.com",
# "reviewer": "bob@company.com",
# "approved_at": "2024-01-15T14:30:00Z",
# "deployed_at": "2024-01-15T14:45:00Z",
# "changes": "JIRA-123: Add MFA to admin panel",
# "rollback_plan": "Revert commit abc123"
# }
CC9 — Risk Mitigation
- Vendor management program
- Business continuity plan
- Cyber insurance
Evidence Collection
SOC 2 auditors need evidence that controls operated continuously during the audit period.
| Control | Evidence Type | Frequency | Storage |
|---|---|---|---|
| MFA enabled | Screenshot + IAM export | Quarterly | Vanta/Drata |
| Access reviews | Signed review records | Quarterly | Google Drive |
| Vulnerability scans | Scan reports | Weekly | S3/Drive |
| Pen test | Report + remediation | Annual | Drive |
| Security training | Completion certificates | Annual | HRIS |
| Incident response test | Tabletop exercise notes | Annual | Drive |
| Encryption at rest | Config screenshot | Change-based | Drive |
| Backup tested | Restore test log | Quarterly | Drive |
Automation Tools
Vanta (recommended for startups)
# Vanta connects to your cloud accounts and auto-collects evidence
# Integrations: AWS, GCP, Azure, GitHub, Okta, Google Workspace, Slack
# After connecting, Vanta auto-monitors:
# - MFA enforcement (CC6.1)
# - Encryption at rest (CC6.7)
# - Vulnerability scanning (CC7.1)
# - Background checks (CC1.1)
# - Access reviews (CC6.2)
Drata / Secureframe
Both offer similar automation: continuous control monitoring + auditor portal for evidence sharing. Drata is strong on integrations; Secureframe has a good self-service audit experience.
Key Policies to Write
Create these written policies (stored in a policy management system):
Required Policies:
1. Information Security Policy
2. Access Control Policy
3. Encryption Policy
4. Incident Response Plan
5. Business Continuity / Disaster Recovery Plan
6. Vulnerability Management Policy
7. Change Management Policy
8. Vendor Management Policy
9. Acceptable Use Policy
10. Data Classification Policy
Encryption Policy example snippet:
## Encryption Policy
**Effective Date:** 2024-01-01
**Owner:** CTO
**Review Cycle:** Annual
### Requirements
- All data at rest classified as Confidential or Restricted MUST be encrypted
using AES-256 or equivalent.
- All data in transit MUST use TLS 1.2 or higher.
- Encryption keys MUST be stored separately from encrypted data, in an
approved key management system (AWS KMS, GCP KMS, or HashiCorp Vault).
- Keys MUST be rotated annually or upon suspected compromise.
SOC 2 Timeline
| Phase | Duration | Activities |
|---|---|---|
| Readiness assessment | 4-6 weeks | Gap analysis, policy writing |
| Remediation | 2-4 months | Implement controls, fix gaps |
| Evidence collection period (Type II) | 6-12 months | Run controls, collect evidence |
| Auditor fieldwork | 4-8 weeks | Auditor reviews evidence |
| Report issuance | 2-4 weeks | Final report, management response |
Total Type II timeline: ~12-18 months from start to report.
Compliance Checklist
- [ ] Scope defined (which systems handle customer data)
- [ ] Auditor selected (AICPA-licensed CPA firm)
- [ ] Security policies written and approved
- [ ] MFA enforced for all users
- [ ] Encryption at rest and in transit enabled
- [ ] Vulnerability scanning automated
- [ ] Access review process established
- [ ] Change management process documented
- [ ] Incident response plan written and tested
- [ ] Vendor risk assessments completed
- [ ] Background checks for employees
- [ ] Security awareness training completed
- [ ] Evidence collection tool in place (Vanta/Drata/Secureframe)