규칙 업데이트

규칙 업데이트 (Update rule)

PATCH /orgs/{org_name}/governance/policies/{policy_id}/rules/{rule_id} — 규칙을 부분적으로 업데이트해요. 요청 본문에 있는 필드만 업데이트되고 없는 필드는 그대로 남아요. 규칙을 이전과 새 상태 모두로 반환해요.

출처: 문서

본문

API 버전 1 — Update rule · PATCH /orgs/{org_name}/governance/policies/{policy_id}/rules/{rule_id}

규칙을 부분적으로 업데이트해요. 요청 본문에 있는 필드만 업데이트되고 없는 필드는 그대로 남아요. 규칙을 이전과 새 상태 모두로 반환해요.

도메인을 가로질러 actions를 변경하는 것(예: network 액션에서 filesystem 액션으로)은 거부돼요. 변경 사항은 개발자 머신에 도달하는 데 최대 5분이 걸릴 수 있어요.

연결 및 접근 (Connection and access)

API 연결 및 인증 안내

https://hub.docker.com/v2

다음 대안 중 하나를 사용해요. 한 대안 안의 요구 사항은 함께 적용돼요.

  • bearerAuth

파라미터

org_name

path · 필수 — Docker Hub 조직 이름. 유형: string

{
  "type": "string"
}

policy_id

path · 필수 — 고유 정책 식별자. 유형: string

{
  "type": "string"
}

rule_id

path · 필수 — 정책 내 고유 규칙 식별자. 유형: string

{
  "type": "string"
}

요청 및 응답

Media type: application/json

요청 (Request)

업데이트할 필드. 없는 필드는 그대로 남아요.

스키마: UpdateRuleRequest

{
  "resources": [
    "research.mitre.org"
  ]
}

응답 200

규칙 업데이트됨, 이전과 새 상태 반환.

스키마: UpdateRuleResponse

{
  "new": {
    "actions": [
      "connect:tcp",
      "connect:udp"
    ],
    "decision": "allow",
    "id": "rule_06evsm9qjm1pdsk0a8nkfaxy7jna",
    "name": "allow research mirrors",
    "resources": [
      "research.mitre.org"
    ]
  },
  "old": {
    "actions": [
      "connect:tcp",
      "connect:udp"
    ],
    "decision": "allow",
    "id": "rule_06evsm9qjm1pdsk0a8nkfaxy7jna",
    "name": "allow research mirrors",
    "resources": [
      "research.mitre.org",
      "cve.mitre.org"
    ]
  }
}

응답 400

Bad request · 스키마: Error

{
  "error": {
    "code": "invalid_argument",
    "message": "name is required"
  }
}

응답 401

Missing or invalid credentials · 스키마: Error

{
  "error": {
    "code": "unauthenticated",
    "message": "unauthenticated"
  }
}

응답 403

호출자가 이 조직에 대한 필수 권한이 없거나, 조직이 governance를 사용할 자격이 없음. 스키마: Error

{
  "error": {
    "code": "permission_denied",
    "message": "permission denied"
  }
}

응답 404

Not found · 스키마: Error

{
  "error": {
    "code": "not_found",
    "message": "policy not found"
  }
}

응답 409

Conflict · 스키마: Error

{
  "error": {
    "code": "conflict",
    "message": "policy name already in use"
  }
}

응답 500

Internal server error · 스키마: Error

{
  "error": {
    "code": "internal",
    "message": "internal error"
  }
}

참조 스키마

  • #/components/schemas/UpdateRuleRequest
  • #/components/schemas/UpdateRuleResponse

요청 예시

curl \
  --request PATCH \
  --header "Authorization: Bearer ***" \
  --header 'Accept: application/json' \
  --header 'Content-Type: application/json' \
  --data-raw '{
  "resources": [
    "research.mitre.org"
  ]
}' \
  'https://hub.docker.com/v2/orgs//governance/policies//rules/'

더 알아보기 (Learn more)