RATATOSKRATATOSK
로그인

OpenFGA

v1.16.0Security
2026년 5월 21일

v1.16.0은 키 로테이션 후 OIDC 토큰 거부 버그를 수정하고, 실험적 weighted_graph_check의 두 가지 정합성 버그를 패치하며, Go 표준 라이브러리 취약점 대응을 위해 툴체인을 업데이트했습니다.

  • securityOIDC 인증 사용 중이거나 Go stdlib CVE 영향권이라면 즉시 업그레이드

    두 가지 보안 사항이 있습니다. 첫째, 발급자 키를 로테이션한 후 유효한 토큰이 401로 거부되는 현상이 있었다면 JWKS 갱신 버그가 원인입니다. 이번 패치로 미등록 kid 수신 시 JWKS를 즉시 갱신합니다. 둘째, Go 1.24.3이 패치하는 표준 라이브러리 취약점의 영향을 Go 릴리스 노트에서 직접 확인하고, v1.16.0으로 빠르게 업그레이드하세요.

  • breakingweighted_graph_check 사용 중이라면 업그레이드 후 결과 검증 필수

    이전 버전의 weighted_graph_check는 캐시 키 충돌과 고루틴 취소 시 false 결과 캐싱으로 인해 실제로는 허용되어야 할 요청을 거부할 수 있었습니다. 실험적 기능이지만 실제 트래픽에 적용 중이라면, 업그레이드 후 알려진 권한 시나리오로 결과를 검증해 이전 오동작의 영향을 확인하세요.

  • enhancementPingTimeout 설정으로 데이터스토어 연결 문제를 빠르게 감지

    새로 추가된 PingTimeout과 PingRetryMaxElapsedTime으로 시작 시 및 헬스체크 중 데이터스토어 연결 대기 시간을 명시적으로 제어할 수 있습니다. SLO에 맞게 타이트하게 설정해두면, 데이터스토어가 저하된 상태에서 서버가 그냥 올라오는 상황을 예방할 수 있습니다.

주요 변경 (5)

  • OIDC 인증: 미등록 kid 감지 시 JWKS 자동 갱신(분당 1회 제한)으로 키 로테이션 후 토큰 거부 문제 해결
  • Go 툴체인을 1.24.3으로 업데이트하여 표준 라이브러리 보안 취약점 대응
  • 실험적 weighted_graph_check의 union 해석 시 캐시 키 충돌 버그 수정
  • union 단락(short-circuit) 또는 재귀 해석으로 취소된 고루틴이 false 결과를 캐싱하던 버그 수정
  • 데이터스토어 ping 타임아웃 설정 추가: PingTimeout, PingRetryMaxElapsedTime