컴플라이언스
동일한 교육 데이터에 대한 두 가지 병렬 적용 범위 보기. OWASP 보기는 네 OWASP Top 10 패밀리(Web, API, Mobile, Client)에 대해 인력을 점수화합니다. 규제 보기는 각 제어를 기본 CWE에 매핑하여 외부 표준(PCI DSS, ISO/IEC 27001, SOC 2)에 대해 동일한 교육을 점수화합니다. 필수 범위: compliance:read.
엔드포인트
| Method | Path | Scope | 용도 |
|---|---|---|---|
GET | /api/public/v1/compliance/summary | compliance:read | 네 프레임워크 전반의 OWASP 적용 범위 롤업. |
GET | /api/public/v1/compliance/frameworks/{'{'}frameworkId{'}'} | compliance:read | 하나의 OWASP 프레임워크에 대한 모듈별 분석. |
GET | /api/public/v1/compliance/regulatory/summary | compliance:read | 규제 프레임워크의 적용 범위 롤업. |
GET | /api/public/v1/compliance/regulatory/{'{'}frameworkId{'}'} | compliance:read | 하나의 규제 프레임워크에 대한 제어별 분석. |
적용 범위 계산 방식
적격 사용자는 역할이 org_admin이 아닌 모든 활성 조직 구성원입니다. 사용자는 지난 windowDays (365일) 이내에 점수 ≥ passingScore (70)인 연습 시도가 최소 하나 있을 때 주제에 대해 교육받은으로 카운트됩니다. 위험 항목(OWASP 모듈 또는 규제 제어)은 교육받은 적격 사용자의 비율이 조직의 coverageThresholdPercent를 넘으면 상태 covered로 전환됩니다 — 기본값은 80이며 관리자 UI에서 50과 100 사이로 구성 가능합니다.
프레임워크 식별자
| Type | 식별자 | 제목 |
|---|---|---|
| OWASP | web | OWASP Top 10 (Web) |
| OWASP | api | OWASP API Security Top 10 |
| OWASP | mobile | OWASP Mobile Top 10 |
| OWASP | client | OWASP Client-Side Top 10 |
| 규제 | pci-dss | PCI DSS v4.0 — Requirement 6.2.4 |
| 규제 | iso-27001 | ISO/IEC 27001:2022 — Annex A secure development |
| 규제 | soc-2 | SOC 2 — Trust Services Criteria (TSC 2017) |
OWASP 요약
OWASP 프레임워크당 하나의 항목. 대시보드 타일에 사용하세요.
GET /api/public/v1/compliance/summary
Authorization: Bearer scs_live_…응답
{
"frameworks": [
{
"frameworkId": "web",
"title": "OWASP Top 10 (Web)",
"totalRiskItems": 10,
"coveredRiskItems": 7,
"partialRiskItems": 2,
"noActivityRiskItems": 1,
"noContentRiskItems": 0,
"eligibleUsers": 142,
"trainedUsers": 118,
"coveragePercent": 83.1,
"avgScore": 86.4
},
{
"frameworkId": "api",
"title": "OWASP API Security Top 10",
"totalRiskItems": 10,
"coveredRiskItems": 5,
"partialRiskItems": 3,
"noActivityRiskItems": 2,
"noContentRiskItems": 0,
"eligibleUsers": 142,
"trainedUsers": 91,
"coveragePercent": 64.1,
"avgScore": 79.2
}
],
"passingScore": 70,
"coverageThresholdPercent": 80,
"windowDays": 365,
"generatedAt": "2026-05-29T13:42:11.318Z"
}covered+partial+noActivity+noContent=totalRiskItems.noContent는 해당 위험 항목에 대한 교육을 아직 출시하지 않았음을 의미합니다 — 인력 실패가 아닌 알려진 격차로 취급하세요.avgScore는 윈도우 내 합격 시도의 평균이며, 0–100 척도로 표현됩니다.
예시
curl -sS \
-H "Authorization: Bearer $SCH_API_KEY" \
https://api.limeplate.com/api/public/v1/compliance/summaryOWASP 프레임워크 상세
하나의 프레임워크로 드릴다운합니다 — 각각 구성 주제와 CWE가 있는 모듈별 위험 항목을 반환합니다. web | api | mobile | client 외부의 모든 식별자에 대해 404 framework_not_found를 반환합니다.
GET /api/public/v1/compliance/frameworks/web
Authorization: Bearer scs_live_…응답
{
"frameworkId": "web",
"title": "OWASP Top 10 (Web)",
"summary": {
"frameworkId": "web",
"title": "OWASP Top 10 (Web)",
"totalRiskItems": 10,
"coveredRiskItems": 7,
"partialRiskItems": 2,
"noActivityRiskItems": 1,
"noContentRiskItems": 0,
"eligibleUsers": 142,
"trainedUsers": 118,
"coveragePercent": 83.1,
"avgScore": 86.4
},
"riskItems": [
{
"moduleId": "a01-broken-access-control",
"title": "A01: Broken Access Control",
"status": "covered",
"topicsCount": 4,
"eligibleUsers": 142,
"trainedUsers": 124,
"coveragePercent": 87.3,
"avgScore": 88.1,
"topics": [
{
"topicId": "idor",
"title": "Insecure Direct Object References",
"trainedUsers": 121,
"totalAttempts": 318,
"avgScore": 87.6,
"cwes": ["CWE-639", "CWE-285"]
}
]
}
],
"passingScore": 70,
"coverageThresholdPercent": 80,
"windowDays": 365,
"generatedAt": "2026-05-29T13:42:11.318Z"
}status는covered,partial,no-activity,no-content중 하나입니다.totalAttempts는 윈도우 내 실패한 시도를 포함합니다.trainedUsers는 최소 하나의 합격 시도가 있는 사용자만 카운트합니다.
예시
curl -sS \
-H "Authorization: Bearer $SCH_API_KEY" \
https://api.limeplate.com/api/public/v1/compliance/frameworks/api규제 요약
OWASP 요약과 동일한 형태이지만 규제 프레임워크용입니다. 각 항목은 version과 subtitle을 포함하여 표준의 식별 조항을 직접 렌더링할 수 있습니다.
GET /api/public/v1/compliance/regulatory/summary
Authorization: Bearer scs_live_…응답
{
"frameworks": [
{
"frameworkId": "pci-dss",
"title": "PCI DSS",
"version": "v4.0",
"subtitle": "Payment Card Industry Data Security Standard — Requirement 6 (Secure Systems and Software)",
"totalControls": 6,
"coveredControls": 4,
"partialControls": 1,
"noActivityControls": 1,
"noContentControls": 0,
"eligibleUsers": 142,
"trainedUsers": 105,
"coveragePercent": 73.9,
"avgScore": 84.7
},
{
"frameworkId": "iso-27001",
"title": "ISO/IEC 27001",
"version": "2022",
"subtitle": "Annex A controls — secure development and application security",
"totalControls": 6,
"coveredControls": 5,
"partialControls": 1,
"noActivityControls": 0,
"noContentControls": 0,
"eligibleUsers": 142,
"trainedUsers": 117,
"coveragePercent": 82.4,
"avgScore": 86.0
}
],
"passingScore": 70,
"coverageThresholdPercent": 80,
"windowDays": 365,
"generatedAt": "2026-05-29T13:42:11.318Z"
}예시
curl -sS \
-H "Authorization: Bearer $SCH_API_KEY" \
https://api.limeplate.com/api/public/v1/compliance/regulatory/summary규제 프레임워크 상세
제어별 분석. 각 제어는 표준이 게시한 그대로의 업스트림 설명과 제어에 교육을 매핑하는 데 사용한 CWE 집합을 포함합니다. 알 수 없는 식별자에 대해 404 regulatory_framework_not_found를 반환합니다.
GET /api/public/v1/compliance/regulatory/pci-dss
Authorization: Bearer scs_live_…응답
{
"frameworkId": "pci-dss",
"title": "PCI DSS",
"version": "v4.0",
"subtitle": "Payment Card Industry Data Security Standard — Requirement 6 (Secure Systems and Software)",
"summary": {
"frameworkId": "pci-dss",
"title": "PCI DSS",
"version": "v4.0",
"subtitle": "Payment Card Industry Data Security Standard — Requirement 6 (Secure Systems and Software)",
"totalControls": 6,
"coveredControls": 4,
"partialControls": 1,
"noActivityControls": 1,
"noContentControls": 0,
"eligibleUsers": 142,
"trainedUsers": 105,
"coveragePercent": 73.9,
"avgScore": 84.7
},
"controls": [
{
"controlId": "6.2.4.a",
"title": "Injection Attacks",
"description": "Address attacks that inject untrusted data into commands or queries (Req 6.2.4.a).",
"cwes": ["CWE-89", "CWE-78", "CWE-79", "CWE-94", "CWE-611", "CWE-917", "CWE-918"],
"status": "covered",
"topicsCount": 7,
"eligibleUsers": 142,
"trainedUsers": 128,
"coveragePercent": 90.1,
"avgScore": 88.6,
"topics": [
{
"topicId": "sql-injection",
"title": "SQL Injection",
"trainedUsers": 131,
"totalAttempts": 402,
"avgScore": 89.4,
"cwes": ["CWE-89"]
}
]
}
],
"passingScore": 70,
"coverageThresholdPercent": 80,
"windowDays": 365,
"generatedAt": "2026-05-29T13:42:11.318Z"
}예시
curl -sS \
-H "Authorization: Bearer $SCH_API_KEY" \
https://api.limeplate.com/api/public/v1/compliance/regulatory/iso-27001