SBOM의 적용 범위를 MCP와 Tool Service 공통으로 넓힌다
MCP Server와 Tool Service가 같은 스택과 같은 MCP SDK를 쓰므로 SBOM을 공통으로 적용한다. 산출물 이름을 AXHUB_MCP_Tool_Service_SBOM으로 바꾸고, 목록이 MCP Server 빌드 하나에서 나왔다는 한계를 함께 적는다. Tool Service가 스택 밖 의존을 추가하면 그 빌드에서 다시 산출해 합쳐야 한다. JDK 라이선스를 미확정에서 GPL-2.0 with Classpath Exception으로 확정한다. toolchain에 vendor를 고정하면서 배포판이 정해졌기 때문이다. Classpath Exception이 있어 이 JDK로 실행하는 애플리케이션에 소스 공개 의무는 없다. inputSchema 관련 보안 통제 설명은 SBOM의 범위가 아니므로 뺀다. 근거는 ADR-0011과 ADR-0012가 소유한다. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -548,34 +548,32 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"type": "platform",
|
"type": "platform",
|
||||||
"bom-ref": "pkg:generic/jdk@21",
|
"bom-ref": "pkg:generic/jdk@21.0.5",
|
||||||
"name": "jdk",
|
"name": "jdk",
|
||||||
"version": "21",
|
"version": "21.0.5",
|
||||||
"publisher": "미지정 (toolchain languageVersion=21)",
|
"publisher": "Eclipse Adoptium (Temurin)",
|
||||||
"description": "언어/실행 환경 — Java 21 toolchain",
|
"description": "언어/실행 환경 — Java 21 toolchain",
|
||||||
"scope": "optional",
|
"scope": "optional",
|
||||||
"purl": "pkg:generic/jdk@21",
|
"purl": "pkg:generic/jdk@21.0.5",
|
||||||
"licenses": [
|
"licenses": [
|
||||||
{
|
{
|
||||||
"license": {
|
"expression": "GPL-2.0-only WITH Classpath-exception-2.0"
|
||||||
"name": "벤더별 상이 (GPL-2.0-with-classpath-exception 등)"
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"externalReferences": [
|
"externalReferences": [
|
||||||
{
|
{
|
||||||
"type": "website",
|
"type": "website",
|
||||||
"url": "https://openjdk.org/projects/jdk/21/"
|
"url": "https://adoptium.net/temurin/releases/?version=21"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"properties": [
|
"properties": [
|
||||||
{
|
{
|
||||||
"name": "axhub:dependencyPath",
|
"name": "axhub:dependencyPath",
|
||||||
"value": "build.gradle java.toolchain"
|
"value": "build.gradle java.toolchain (vendor=ADOPTIUM)"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "axhub:note",
|
"name": "axhub:note",
|
||||||
"value": "벤더가 고정돼 있지 않아 라이선스는 실제 배포판 확정 후 기재"
|
"value": "표준가이드의 openjdk21u-jdk_x64_windows_hotspot_21.0.5 기준. Classpath Exception이 있어 이 JDK로 실행하는 애플리케이션에는 소스 공개 의무가 없다"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
@@ -697,7 +695,7 @@
|
|||||||
"dependsOn": []
|
"dependsOn": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"ref": "pkg:generic/jdk@21",
|
"ref": "pkg:generic/jdk@21.0.5",
|
||||||
"dependsOn": []
|
"dependsOn": []
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|||||||
Binary file not shown.
@@ -22,9 +22,14 @@ MCP Server와 Tool Service는 같은 기술 스택과 같은 MCP SDK를 쓰므
|
|||||||
| 빌드 환경 (scope: optional) | 2 | JDK 21, Gradle 8.14.3 |
|
| 빌드 환경 (scope: optional) | 2 | JDK 21, Gradle 8.14.3 |
|
||||||
| 합계 | 14 | |
|
| 합계 | 14 | |
|
||||||
|
|
||||||
라이선스는 Apache-2.0 9건, MIT 3건, MIT-0 1건, 미확정 1건(JDK)이다. copyleft는 0건이라 소스
|
라이선스는 Apache-2.0 9건, MIT 3건, MIT-0 1건, GPL-2.0 with Classpath Exception 1건(JDK)이다.
|
||||||
공개 의무가 없다. JDK는 toolchain이 `languageVersion = 21`만 고정하고 벤더를 지정하지 않으므로,
|
라이브러리 12건은 모두 permissive이고, copyleft는 JDK 하나뿐이다. JDK는 Classpath Exception이
|
||||||
실제 배포판이 정해지면 라이선스를 확정해 기재한다.
|
있어 이 JDK로 실행하는 애플리케이션에 소스 공개 의무가 생기지 않는다.
|
||||||
|
|
||||||
|
JDK 배포판은 표준가이드가 정한 Eclipse Temurin
|
||||||
|
(`openjdk21u-jdk_x64_windows_hotspot_21.0.5`)이며, `build.gradle`의 toolchain에
|
||||||
|
`vendor = JvmVendorSpec.ADOPTIUM`으로 고정해 다른 배포판으로 빌드되지 않게 했다. 실행 컨테이너도
|
||||||
|
같은 계열인 `eclipse-temurin:21-jre`를 쓴다.
|
||||||
|
|
||||||
## 제외 항목
|
## 제외 항목
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user