회전 정책(Rotation policies)

회전 정책(Rotation policies)

Enterprise

적절한 Vault Enterprise 라이선스 또는 HCP Vault Dedicated 클러스터가 필요합니다.

Vault Enterprise는 온보딩된 자격 증명에 대해 자동화된 일정 기반 또는 주기 기반 회전을 강제하는 중앙 집중식 자동 자격 증명 회전 시스템을 포함합니다. 회전 정책을 구성해 Vault Enterprise가 실행 실패와 재시도 로직을 어떻게 처리할지 정의할 수 있습니다. 회전 정책은 Vault가 회전을 고아(orphaned)로 표시하기 전까지의 백오프 시도와 재대기열(requeue) 주기의 한도를 지정합니다. 회전 정책은 Vault 접근 정책에는 영향을 미치지 않습니다.

Vault Enterprise는 현재 다음 워크플로에 대한 정책 회전을 지원합니다.

  • LDAP 시크릿 정적 역할
    • Enterprise
  • OS 시크릿 계정
    • Enterprise

회전 정책을 만들면 해당 정책을 새 역할과 기존 역할에 할당할 수 있습니다. Vault는 정책 지침을 사용해 연관된 역할의 자격 증명을 자동으로 회전할 때 재시도 및 실패 로직을 관리합니다.

참고 — Vault는 회전 정책에 정의된 최대 재시도 한도를 초과하면 회전 항목을 고아로 표시합니다. 고아 처리는 자동 회전 시도를 중단하며, 오류를 해결하려면 수동 개입이 필요합니다. 회전 정책을 정의할 때 최대 재시도 한도를 신중히 고려하세요.

Vault의 회전 시스템 개요는 자동 회전 문서를 참고하세요.

회전 정책 매개변수

Vault는 회전 정책을 JSON으로 정의하며 다음 구성 매개변수를 지원합니다.

  • max_retries_per_cycle (int: <required>) — 회전 실패 후 회전 항목에 대해 Vault Enterprise가 백오프를 적용해야 하는 최대 횟수입니다.
  • max_retry_cycles (int: <required>) — max_retries_per_cycle 한도에 도달한 후 Vault Enterprise가 회전 항목을 다시 대기열에 넣어야 하는 최대 횟수입니다. Vault Enterprise는 회전 항목을 다음 예약된 회전으로 다시 대기열에 넣습니다.

예시 회전 정책

{
  "max_retry_cycles": 3,
  "max_retries_per_cycle": 3
}

이 예시 정책은 단일 회전 주기 내에서 단일 재시도 주기당 지수 백오프를 3회 시도로 제한합니다. 3회 시도 후에도 회전이 실패하면 Vault Enterprise는 원래 일정으로 회전 항목을 다시 대기열에 넣고 지수 백오프 재시도 주기를 반복합니다. 이 예시 정책은 또한 대기열 재시도 횟수를 총 3회로 제한합니다. 모든 3회 재시도(총 9회 재시도) 후에도 회전 항목이 여전히 실패하면 Vault는 자격 증명 회전을 고아로 표시하고 이후의 자동 회전 시도를 모두 중단합니다.

더 자세한 내용은 회전 정책 API 문서를 참고하세요.

기본 회전 정책

Vault는 사용자가 사용자 지정 회전 정책을 할당하지 않기로 선택하면 지원되는 플러그인에 기본 회전 정책을 적용합니다. 기본 정책은 백오프 재시도를 6회로 제한하고 원래 회전 일정으로 다시 대기열에 넣는 것을 3회로 제한합니다.

{
  "max_retry_cycles": 3,
  "max_retries_per_cycle": 6
}

사용법

먼저 회전 정책을 만듭니다.

vault write sys/policies/rotation/custom-ldap-policy \
    max_retry_cycles=4 \
    max_retries_per_cycle=5

Vault가 정책을 저장하면 새 자격 증명을 구성할 때 회전 정책을 할당할 수 있습니다. 예를 들어, 회전 정책 custom-ldap-policy를 alice라는 새 LDAP 역할과 연결하려면:

vault write ldap/static-role/alice \
    dn="cn=alice,ou=users,dc=example,dc=com" \
    username="alice" \
    rotation_period="24h" \
    rotation_policy="custom-ldap-policy"

역할을 만들 때 회전 정책을 제공하지 않으면 Vault는 기본 정책을 사용합니다. 역할을 갱신해 rotation_policy 필드를 해제하면 할당된 정책을 해제하고 Vault가 기본 정책을 사용하도록 강제할 수 있습니다.

vault write ldap/static-role/alice \
    dn="cn=alice,ou=users,dc=example,dc=com" \
    username="alice" \
    rotation_period="24h" \
    rotation_policy=""

Vault Enterprise는 대기열 재시도 주기마다 최신 정책 갱신을 가져오므로, 정책 갱신이 Vault 동작에 즉시 반영되지 않을 수 있습니다.

고아가 된 회전 항목

지속적인 오류로 막히는 것을 피하기 위해, Vault Enterprise는 연관된 회전 정책의 최대 재시도 한도를 초과하면 회전 항목을 고아(orphaned) 로 표시합니다. 회전 항목을 고아 처리하면 연관된 자격 증명에 대한 모든 추가 자동 회전 시도가 중단됩니다.

고아가 된 회전 항목을 복원하려면 수동 개입이 필요합니다.

  1. Vault가 자격 증명을 고아 처리하게 만든 근본 오류를 해결합니다.
  2. 회전 정책을 다시 할당하고 항목을 Vault에 다시 등록하도록 자격 증명을 갱신합니다. 다른 구성 데이터를 바꾸지 않고도 같은 원래 구성 명령으로 항목을 다시 등록할 수 있습니다.

예를 들어, alice 역할의 자격 증명을 다시 등록하려면 이전 명령을 재사용할 수 있습니다.

vault write ldap/static-role/alice \
    dn="cn=alice,ou=users,dc=example,dc=com" \
    username="alice" \
    rotation_period="24h" \
    rotation_policy="custom-ldap-policy"

sys/rotation-orphans 엔드포인트로 고아 항목을 확인할 수 있습니다.

API

회전 정책 관리에 대한 더 자세한 정보는 회전 정책 API 문서를 참고하세요.

출처: 문서