패턴 목록 조회

지정한 패턴 그룹에 속한 패턴 목록을 조회합니다. 새 패턴은 패턴 추가 API로 등록할 수 있습니다.

필요 권한

사용자 이상의 계정으로 이용할 수 있습니다.

HTTP 요청

GET /api/sonar/pattern-groups/:guid/patterns
cURL 예시
curl -H "Authorization: Bearer <API_KEY>" \
     "https://HOSTNAME/api/sonar/pattern-groups/28ad21b2-585c-4b68-9fad-b78711078496/patterns?offset=0&limit=20"
요청 매개변수
경로 매개변수
타입설명비고
guid문자열패턴 그룹 GUID36자
쿼리 매개변수
필수타입설명비고
offsetX32비트 정수건너뛸 갯수0 이상. 기본값: 0
limitX32비트 정수최대 갯수0 이상. 미지정 시 20
keywordsX문자열검색 키워드패턴의 rule, expr, expr2 값을 대상으로 검색

정상 응답

{
  "total_count": 2,
  "patterns": [
    {
      "id": 112,
      "expr": "\"passwd\"",
      "expr2": "path == \"*passwd\"",
      "rule": "/etc/passwd",
      "app_code": null,
      "app_built_in": null,
      "created": "2022-09-01 00:31:14+0900",
      "updated": "2022-09-01 00:31:14+0900"
    },
    {
      "id": 113,
      "expr": "\"authorized_keys\"",
      "expr2": "path == \"*authorized_keys\"",
      "rule": "/.ssh/authorized_keys",
      "app_code": null,
      "app_built_in": null,
      "created": "2022-09-01 00:31:14+0900",
      "updated": "2022-09-01 00:31:14+0900"
    }
  ]
}
  • total_count (32비트 정수): 검색 조건과 일치하는 전체 패턴 개수
  • patterns (배열): 검색 조건과 일치하는 패턴 목록
    • id (32비트 정수): 패턴 ID
    • expr (문자열): 키워드 검색 표현식
    • expr2 (문자열): 필터 표현식. 키워드가 매치된 결과에 대하여 추가 필터링을 수행합니다.
    • rule (문자열): 패턴명
    • app_code (문자열): 패턴을 제공한 앱의 코드. 앱에서 제공된 패턴이 아니면 null입니다.
    • app_built_in (불리언): 앱 기본 제공 여부. 앱에서 제공된 패턴이 아니면 null입니다.
    • created (문자열): 생성 일시 (yyyy-MM-dd HH:mm:ssZ 형식)
    • updated (문자열): 수정 일시 (yyyy-MM-dd HH:mm:ssZ 형식)

오류 응답

offset, limit 값이 정수가 아닌 경우

HTTP 상태 코드 400 응답

{
  "error_code": "invalid-argument",
  "error_msg": "'offset' parameter should be int type"
}
offset, limit 값이 음수인 경우

HTTP 상태 코드 400 응답

{
  "error_code": "invalid-argument",
  "error_msg": "'offset' must be greater than or equal to 0."
}
패턴 그룹이 존재하지 않는 경우

HTTP 상태 코드 500 응답

{
  "error_code": "illegal-state",
  "error_msg": "subnet group not found: 28ad21b2-585c-4b68-9fad-b78711078496"
}
권한이 없는 경우

HTTP 상태 코드 500 응답

{
  "error_code": "illegal-state",
  "error_msg": "no-permission"
}