설명
음수를 허용하지 않는 수량처럼 하한이 필요한 숫자 필드에 minimum 또는 동등한 제약이 없으면, 허용 범위보다 작은 값도 스키마를 통과할 수 있습니다.
잠재적 영향
서버도 하한을 검증하지 않으면 유효하지 않은 값이 계산이나 업무 처리 오류를 일으킬 수 있습니다.
해결 방법
필드의 실제 용도에 맞는 minimum을 정의하고 서버 검증과 일치시키세요. 음수가 유효한 필드까지 일괄적으로 0 이상으로 제한하지 마세요.
예시
다음 OpenAPI 3.0 발췌 예시는 code가 음수가 될 수 없다는 조건을 minimum: 0으로 명시합니다.
변경 전
json
{
"openapi": "3.0.0",
"components": {
"schemas": {
"GeneralError": {
"type": "object",
"properties": {
"code": {
"type": "integer",
"format": "int32"
}
}
}
}
}
}
변경 후
json
{
"openapi": "3.0.0",
"components": {
"schemas": {
"GeneralError": {
"type": "object",
"properties": {
"code": {
"type": "integer",
"format": "int32",
"minimum": 0
}
}
}
}
}
}