1P by GN⁺ | ★ favorite | 댓글 1개
  • Redis Open Source는 Redis 8부터 새 코드 기여에 RSALv2·SSPLv1·AGPLv3 중 하나를 적용하는 3중 라이선스 모델로 이동함
  • Redis 8 이후 기여는 업데이트된 Redis Software Grant and Contributor License Agreement의 적용을 받으며, Redis Open Source 7.2 및 이전 릴리스는 REDISCONTRIBUTIONS.txt의 BSDv3 clause 라이선스를 유지함
  • RSALv2는 사용·복사·배포·파생물 작성 권한을 주지만, 소프트웨어나 수정본 기능을 제3자에게 서비스로 제공하는 행위를 제한함
  • SSPLv1은 프로그램이나 수정본 기능을 서비스로 제공할 경우, 관리 소프트웨어·UI·API·자동화·모니터링·백업·스토리지·호스팅 소프트웨어까지 포함한 Service Source Code 공개를 요구함
  • AGPLv3는 공개 접근 가능한 네트워크 서버에서 수정본을 제공할 때, 서버 사용자에게 해당 수정 소스코드를 제공하도록 요구하는 카피레프트 라이선스임

Redis 8부터 달라지는 라이선스 구조

  • Redis Open Source는 Redis 8부터 모든 새 Redis 코드 기여에 3중 라이선스 모델을 적용함
  • 새 기여는 업데이트된 Redis Software Grant and Contributor License Agreement에 의해 관리됨
  • Redis 8.0 및 이후 릴리스에서 선택 가능한 라이선스는 3가지임
    • Redis Source Available License v2, RSALv2
    • Server Side Public License v1, SSPLv1
    • GNU Affero General Public License v3, AGPLv3
  • Redis Open Source 7.2 및 이전 릴리스는 REDISCONTRIBUTIONS.txt 파일에 참조된 BSDv3 clause 라이선스를 계속 적용받음

RSALv2: 사용 권한과 서비스 제공 제한

  • RSALv2 Agreement의 마지막 업데이트일은 2023년 12월 30일
  • 소프트웨어를 설치, 다운로드, 접근, 사용, 배포하면 RSALv2의 모든 조건에 동의한 것으로 간주됨
  • 회사 또는 조직을 대신해 소프트웨어를 받는 경우, 해당 주체를 대신해 계약에 동의할 권한이 있음을 진술하고 보증해야 함
  • 라이선스 제공자는 이 계약을 수시로 업데이트할 권리를 보유함
  • 부여되는 권리

    • 라이선스 제공자는 사용, 복사, 배포, 공개 제공, 파생물 작성을 위한 비독점·무상·전세계 라이선스를 부여함
    • 이 라이선스는 재라이선스 불가이며 양도할 수 없음
    • 명시적으로 부여되지 않은 권리는 계약 조건만으로 발생하지 않음
  • 주요 제한

    • 소프트웨어 또는 수정본의 기능을 제3자에게 서비스로 제공할 수 없음
    • 소프트웨어 또는 수정본의 기능이 제3자에게 제공되는 방식으로 배포할 수 없음
    • 제3자에게 기능을 제공하는 행위에는 다음 경우가 포함됨
      • 제3자가 분산 형태나 컴퓨터 네트워크를 통해 원격으로 기능과 상호작용하는 경우
      • 제품 또는 서비스의 가치가 전적으로 또는 주로 소프트웨어나 수정본의 가치에서 나오는 경우
      • 소프트웨어나 수정본의 주된 목적을 사용자에게 수행해 주는 제품 또는 서비스를 제공하는 경우
    • 라이선스 제공자의 라이선스, 저작권, 기타 고지를 변경·제거·가릴 수 없음
    • 상표 사용은 적용 법률의 적용을 받음
  • 특허, 고지, 종료

    • 라이선스 제공자는 보유하거나 라이선스할 수 있는 특허 청구항에 대해 소프트웨어를 만들고, 사용하고, 판매하고, 수입할 수 있는 특허 라이선스를 부여함
    • 사용자가 소프트웨어가 특허를 침해한다고 서면으로 주장하면, RSALv2에 따른 해당 특허 라이선스는 즉시 종료
    • 소프트웨어 일부의 사본을 전달받는 모든 사람이 RSALv2 조건도 함께 받도록 해야 함
    • 소프트웨어를 수정한 경우, 수정본에 자신이 수정했다는 눈에 띄는 고지를 포함해야 함
    • 계약 위반 사용은 라이선스된 사용이 아니며, 라이선스는 자동 종료됨
    • 위반 통지를 받은 뒤 30일 이내 모든 위반을 중단하면 라이선스가 소급해 회복됨
    • 회복 이후 다시 위반하면 추가 위반으로 라이선스가 자동·영구 종료됨
    • 소프트웨어는 법이 허용하는 범위에서 있는 그대로 제공되며, 라이선스 제공자는 손해에 대해 책임지지 않음
  • 준거법과 관할

    • 아시아, 태평양, 미주, 아래 별도 지역에 포함되지 않는 관할권의 사용자는 미국 캘리포니아주 법이 적용되며, Santa Clara County 법원이 전속 관할을 가짐
    • 이스라엘 사용자는 이스라엘 법이 적용되며, 이스라엘 Central District 법원이 전속 관할을 가짐
    • 유럽, 영국, 중동, 아프리카 사용자는 잉글랜드·웨일스 법이 적용되며, London 법원이 전속 관할을 가짐

SSPLv1: 서버 서비스 제공 시 소스 공개 의무

  • SSPLv1은 2018년 10월 16일 버전 1이며, MongoDB, Inc.의 저작권 고지가 포함됨
  • 라이선스 문서는 그대로 복사·배포할 수 있지만 변경할 수 없음
  • 기본적으로 프로그램 실행, 수정, 전파, 전달에 대한 권리를 규정하며, 서브라이선스는 허용되지 않음
  • 소스코드와 전달 조건

    • 소스코드는 수정을 위해 선호되는 작업 형태이며, 오브젝트 코드는 소스가 아닌 형태를 뜻함
    • 오브젝트 코드 형태로 covered work를 전달하려면 Corresponding Source도 함께 제공해야 함
    • Corresponding Source에는 오브젝트 코드 생성, 설치, 실행, 수정에 필요한 소스코드와 스크립트가 포함됨
    • 시스템 라이브러리, 범용 도구, 수정 없이 사용되는 일반적으로 이용 가능한 자유 프로그램은 Corresponding Source에서 제외될 수 있음
    • 수정된 소스 버전을 전달할 때는 다음 조건을 충족해야 함
      • 수정 사실과 관련 날짜를 눈에 띄게 표시
      • 전체 작업물을 SSPLv1로 라이선스
      • 대화형 UI가 있는 경우 적절한 법적 고지를 표시
  • 서비스 제공 조항

    • 프로그램 또는 수정본의 기능을 제3자에게 서비스로 제공하면 Service Source Code를 누구나 무료로 네트워크 다운로드할 수 있게 해야 함
    • 서비스 제공에는 원격 컴퓨터 네트워크를 통한 상호작용 제공, 프로그램 가치에서 주로 나오는 서비스 제공, 프로그램의 주된 목적을 사용자에게 수행하는 서비스 제공이 포함됨
    • Service Source Code는 프로그램 또는 수정본의 Corresponding Source뿐 아니라 서비스를 제공하는 데 쓰는 모든 프로그램의 Corresponding Source를 포함함
      • 관리 소프트웨어
      • 사용자 인터페이스
      • API
      • 자동화 소프트웨어
      • 모니터링 소프트웨어
      • 백업 소프트웨어
      • 스토리지 소프트웨어
      • 호스팅 소프트웨어
    • Service Source Code는 사용자가 공개된 소스코드로 서비스 인스턴스를 실행할 수 있는 수준이어야 함
  • 종료와 특허

    • 라이선스에서 명시적으로 허용하지 않은 방식으로 전파하거나 수정하려는 시도는 무효이며 권리가 자동 종료됨
    • 위반을 중단하면 특정 조건에서 라이선스가 임시 또는 영구로 회복될 수 있음
    • 저작권자가 위반 중단 후 60일 전까지 통지하지 않으면 영구 회복될 수 있음
    • 첫 위반 통지이며 수령 후 30일 이내 시정하면 영구 회복됨
    • 각 기여자는 필수 특허 청구항에 대해 전세계·무상 특허 라이선스를 부여함
    • 프로그램 또는 그 일부가 특허를 침해한다고 주장하는 소송을 제기하는 방식으로 권리 행사를 추가 제한할 수 없음

AGPLv3: 네트워크 서버 소프트웨어를 위한 카피레프트

  • AGPLv3는 2007년 11월 19일 GNU Affero General Public License 버전 3임
  • Free Software Foundation의 저작권 고지가 포함되며, 라이선스 문서는 그대로 복사·배포할 수 있지만 변경할 수 없음
  • AGPLv3는 소프트웨어와 다른 종류의 저작물을 위한 자유 카피레프트 라이선스이며, 특히 네트워크 서버 소프트웨어에서 커뮤니티와의 협력을 보장하도록 만들어짐
  • 설계 목적

    • GPL 계열 라이선스는 자유 소프트웨어의 복사본 배포, 소스코드 접근, 수정, 새 자유 프로그램에서의 재사용 권리를 보장하려는 목적을 가짐
    • 일반 GNU GPL에서는 수정본을 서버에서 공개 접근 가능하게 제공하면서도 소스코드를 공개하지 않는 상황이 가능함
    • AGPLv3는 이런 경우에도 수정된 소스코드가 커뮤니티에 제공되도록 요구함
    • 네트워크 서버 운영자가 수정본을 실행해 사용자에게 제공하면, 해당 서버 사용자에게 수정본의 소스코드를 제공해야 함
    • 공개 접근 가능한 서버에서 수정본을 공용으로 사용하게 하면, 그 공개 사용은 수정본 소스코드에 대한 접근을 발생시킴
  • 기본 권리와 전달 조건

    • AGPLv3의 권리는 프로그램 저작권 기간 동안 부여되며, 조건을 지키는 한 취소할 수 없음
    • 수정하지 않은 프로그램을 실행할 수 있는 무제한 권한을 명시적으로 인정함
    • 수정하거나 전달하지 않는 covered work는 라이선스가 유효한 한 조건 없이 만들고 실행하고 전파할 수 있음
    • 원본 소스코드의 그대로인 복사본은 적절한 저작권 고지, 라이선스 고지, 무보증 고지, 라이선스 사본과 함께 전달할 수 있음
    • 수정된 소스 버전을 전달하려면 수정 사실과 날짜를 표시하고, 전체 작업물을 AGPLv3로 라이선스해야 함

실무적으로 확인할 지점

  • Redis 8 이후 새 코드에는 BSDv3 단일 구조가 아니라 RSALv2·SSPLv1·AGPLv3 중 하나가 적용됨
  • Redis 7.2 및 이전 릴리스를 다루는 경우와 Redis 8.0 및 이후 릴리스를 다루는 경우의 라이선스 조건이 구분됨
  • 제3자에게 Redis 기능 또는 수정본 기능을 서비스 형태로 제공할 때는 선택한 라이선스에 따라 제한 또는 소스 공개 의무가 달라짐
  • RSALv2는 서비스 제공 자체를 제한하고, SSPLv1은 서비스 제공 시 광범위한 Service Source Code 공개를 요구함
  • AGPLv3는 네트워크 서버에서 공개적으로 사용되는 수정본의 소스코드를 서버 사용자에게 제공하도록 요구함

댓글과 토론