1 điểm bởi GN⁺ 2024-03-23 | 1 bình luận | Chia sẻ qua WhatsApp
  • Redis Open Source sẽ chuyển sang mô hình ba giấy phép cho mọi đóng góp mã mới kể từ Redis 8, áp dụng một trong RSALv2·SSPLv1·AGPLv3
  • Các đóng góp từ Redis 8 trở đi sẽ chịu sự điều chỉnh của Redis Software Grant and Contributor License Agreement đã được cập nhật, trong khi Redis Open Source 7.2 và các bản phát hành trước đó tiếp tục giữ giấy phép BSDv3 clause được nêu trong REDISCONTRIBUTIONS.txt
  • RSALv2 cấp quyền sử dụng, sao chép, phân phối và tạo tác phẩm phái sinh, nhưng hạn chế việc cung cấp phần mềm hoặc chức năng của bản sửa đổi như một dịch vụ cho bên thứ ba
  • SSPLv1 yêu cầu công khai Service Source Code, bao gồm cả phần mềm quản trị, UI, API, tự động hóa, giám sát, sao lưu, lưu trữ và phần mềm hosting, nếu cung cấp chương trình hoặc chức năng của bản sửa đổi như một dịch vụ
  • AGPLv3 là giấy phép copyleft yêu cầu cung cấp mã nguồn sửa đổi đó cho người dùng máy chủ khi bản sửa đổi được cung cấp trên máy chủ mạng truy cập công khai

Cấu trúc giấy phép thay đổi từ Redis 8

  • Redis Open Source sẽ áp dụng mô hình ba giấy phép cho mọi đóng góp mã Redis mới kể từ Redis 8
  • Các đóng góp mới được quản lý theo Redis Software Grant and Contributor License Agreement đã được cập nhật
  • Có 3 giấy phép có thể lựa chọn cho Redis 8.0 và các bản phát hành sau đó
    • Redis Source Available License v2, RSALv2
    • Server Side Public License v1, SSPLv1
    • GNU Affero General Public License v3, AGPLv3
  • Redis Open Source 7.2 và các bản phát hành trước đó tiếp tục áp dụng giấy phép BSDv3 clause được tham chiếu trong tệp REDISCONTRIBUTIONS.txt

RSALv2: quyền sử dụng và hạn chế cung cấp dịch vụ

  • Ngày cập nhật cuối cùng của Thỏa thuận RSALv2 là 30 tháng 12, 2023
  • Việc cài đặt, tải xuống, truy cập, sử dụng hoặc phân phối phần mềm được xem là đã đồng ý với mọi điều khoản của RSALv2
  • Nếu nhận phần mềm thay mặt cho một công ty hoặc tổ chức, bạn phải cam kết và bảo đảm rằng mình có thẩm quyền đồng ý với hợp đồng thay mặt chủ thể đó
  • Bên cấp phép giữ quyền cập nhật thỏa thuận này theo thời gian
  • Các quyền được cấp

    • Bên cấp phép cấp giấy phép không độc quyền, miễn phí, toàn cầu để sử dụng, sao chép, phân phối, cung cấp công khai và tạo tác phẩm phái sinh
    • Giấy phép này không thể cấp phép lại và không thể chuyển nhượng
    • Các quyền không được cấp rõ ràng sẽ không phát sinh chỉ từ các điều khoản của thỏa thuận
  • Các hạn chế chính

    • Không được cung cấp chức năng của phần mềm hoặc bản sửa đổi như một dịch vụ cho bên thứ ba
    • Không được phân phối theo cách mà chức năng của phần mềm hoặc bản sửa đổi được cung cấp cho bên thứ ba
    • Việc cung cấp chức năng cho bên thứ ba bao gồm các trường hợp sau
      • Bên thứ ba tương tác từ xa với chức năng thông qua hình thức phân tán hoặc qua mạng máy tính
      • Giá trị của sản phẩm hoặc dịch vụ đến hoàn toàn hoặc chủ yếu từ giá trị của phần mềm hoặc bản sửa đổi
      • Cung cấp sản phẩm hoặc dịch vụ thực hiện mục đích chính của phần mềm hoặc bản sửa đổi cho người dùng
    • Không được thay đổi, xóa bỏ hoặc che khuất giấy phép, bản quyền hay các thông báo khác của bên cấp phép
    • Việc sử dụng nhãn hiệu chịu sự điều chỉnh của luật áp dụng
  • Bằng sáng chế, thông báo và chấm dứt

    • Bên cấp phép cấp giấy phép bằng sáng chế cho các yêu cầu bảo hộ bằng sáng chế mà họ sở hữu hoặc có thể cấp phép, cho phép tạo, sử dụng, bán và nhập khẩu phần mềm
    • Nếu người dùng có văn bản khẳng định rằng phần mềm vi phạm bằng sáng chế, thì giấy phép bằng sáng chế theo RSALv2 sẽ chấm dứt ngay lập tức
    • Phải bảo đảm mọi người nhận bản sao của bất kỳ phần nào của phần mềm cũng nhận được các điều khoản RSALv2 kèm theo
    • Nếu sửa đổi phần mềm, phải đưa vào bản sửa đổi thông báo dễ thấy rằng bạn đã sửa đổi nó
    • Việc sử dụng vi phạm thỏa thuận không được xem là sử dụng được cấp phép và giấy phép sẽ tự động chấm dứt
    • Nếu chấm dứt mọi vi phạm trong vòng 30 ngày sau khi nhận thông báo vi phạm, giấy phép sẽ được khôi phục hồi tố
    • Nếu tiếp tục vi phạm sau khi đã được khôi phục, giấy phép sẽ tự động và vĩnh viễn chấm dứt do vi phạm bổ sung
    • Phần mềm được cung cấp nguyên trạng trong phạm vi pháp luật cho phép và bên cấp phép không chịu trách nhiệm về thiệt hại
  • Luật áp dụng và thẩm quyền xét xử

    • Với người dùng tại châu Á, Thái Bình Dương, châu Mỹ và các khu vực pháp lý không thuộc các khu vực riêng bên dưới, luật bang California, Hoa Kỳ được áp dụng và tòa án tại Santa Clara County có thẩm quyền riêng biệt
    • Với người dùng tại Israel, luật Israel được áp dụng và tòa án Central District của Israel có thẩm quyền riêng biệt
    • Với người dùng tại châu Âu, Vương quốc Anh, Trung Đông và châu Phi, luật Anh và xứ Wales được áp dụng và tòa án London có thẩm quyền riêng biệt

SSPLv1: nghĩa vụ công khai mã nguồn khi cung cấp dịch vụ máy chủ

  • SSPLv1 là phiên bản 1 ngày 16 tháng 10, 2018, có kèm thông báo bản quyền của MongoDB, Inc.
  • Tài liệu giấy phép có thể được sao chép và phân phối nguyên trạng nhưng không được sửa đổi
  • Về cơ bản, giấy phép quy định các quyền chạy, sửa đổi, phổ biến và chuyển giao chương trình, và không cho phép cấp phép lại
  • Mã nguồn và điều kiện chuyển giao

    • Mã nguồn là hình thức làm việc được ưu tiên để sửa đổi, còn mã đối tượng là hình thức không phải mã nguồn
    • Để chuyển giao covered work dưới dạng mã đối tượng, cũng phải cung cấp Corresponding Source
    • Corresponding Source bao gồm mã nguồn và các script cần thiết để tạo, cài đặt, chạy và sửa đổi mã đối tượng
    • Thư viện hệ thống, công cụ dùng chung và các chương trình tự do phổ biến được dùng nguyên trạng có thể được loại trừ khỏi Corresponding Source
    • Khi chuyển giao phiên bản mã nguồn đã sửa đổi, phải đáp ứng các điều kiện sau
      • Hiển thị rõ việc đã sửa đổi và ngày liên quan
      • Cấp phép toàn bộ tác phẩm theo SSPLv1
      • Nếu có UI tương tác, phải hiển thị thông báo pháp lý thích hợp
  • Điều khoản cung cấp dịch vụ

    • Nếu cung cấp chức năng của chương trình hoặc bản sửa đổi như một dịch vụ cho bên thứ ba, phải cho phép bất kỳ ai tải xuống miễn phí qua mạng Service Source Code
    • Việc cung cấp dịch vụ bao gồm cung cấp tương tác qua mạng máy tính từ xa, cung cấp dịch vụ mà giá trị chủ yếu đến từ giá trị của chương trình, và cung cấp dịch vụ thực hiện mục đích chính của chương trình cho người dùng
    • Service Source Code không chỉ bao gồm Corresponding Source của chương trình hoặc bản sửa đổi mà còn bao gồm Corresponding Source của mọi chương trình dùng để cung cấp dịch vụ
      • phần mềm quản trị
      • giao diện người dùng
      • API
      • phần mềm tự động hóa
      • phần mềm giám sát
      • phần mềm sao lưu
      • phần mềm lưu trữ
      • phần mềm hosting
    • Service Source Code phải ở mức cho phép người dùng chạy một phiên bản dịch vụ từ mã nguồn công khai
  • Chấm dứt và bằng sáng chế

    • Mọi nỗ lực phổ biến hoặc sửa đổi theo cách không được giấy phép cho phép rõ ràng đều vô hiệu và các quyền sẽ tự động chấm dứt
    • Nếu chấm dứt vi phạm, giấy phép có thể được khôi phục tạm thời hoặc vĩnh viễn trong một số điều kiện nhất định
    • Có thể được khôi phục vĩnh viễn nếu chủ sở hữu bản quyền không thông báo trước 60 ngày sau khi vi phạm chấm dứt
    • Nếu là thông báo vi phạm đầu tiên và được khắc phục trong vòng 30 ngày kể từ khi nhận, giấy phép sẽ được khôi phục vĩnh viễn
    • Mỗi bên đóng góp cấp giấy phép bằng sáng chế toàn cầu, miễn phí cho các yêu cầu bảo hộ bằng sáng chế thiết yếu
    • Không được áp đặt thêm hạn chế đối với việc thực thi quyền bằng cách khởi kiện cho rằng chương trình hoặc một phần của nó vi phạm bằng sáng chế

AGPLv3: copyleft cho phần mềm máy chủ mạng

  • AGPLv3 là GNU Affero General Public License phiên bản 3 ngày 19 tháng 11, 2007
  • Có kèm thông báo bản quyền của Free Software Foundation, và tài liệu giấy phép có thể được sao chép, phân phối nguyên trạng nhưng không được sửa đổi
  • AGPLv3 là giấy phép copyleft tự do cho phần mềm và các loại tác phẩm khác, được thiết kế đặc biệt để bảo đảm hợp tác với cộng đồng, nhất là trong phần mềm máy chủ mạng
  • Mục tiêu thiết kế

    • Các giấy phép thuộc họ GPL nhằm bảo đảm quyền phân phối bản sao phần mềm tự do, truy cập mã nguồn, sửa đổi và tái sử dụng trong các chương trình tự do mới
    • Trong GNU GPL thông thường, có thể xảy ra trường hợp cung cấp bản sửa đổi công khai trên máy chủ mà vẫn không công bố mã nguồn
    • AGPLv3 yêu cầu mã nguồn đã sửa đổi phải được cung cấp cho cộng đồng ngay cả trong trường hợp này
    • Nếu nhà vận hành máy chủ mạng chạy bản sửa đổi và cung cấp cho người dùng, họ phải cung cấp mã nguồn của bản sửa đổi đó cho người dùng máy chủ
    • Khi cho phép sử dụng công khai bản sửa đổi trên máy chủ truy cập công khai, việc sử dụng công khai đó sẽ làm phát sinh quyền truy cập tới mã nguồn của bản sửa đổi
  • Các quyền cơ bản và điều kiện chuyển giao

    • Các quyền của AGPLv3 được cấp trong suốt thời hạn bản quyền của chương trình và không thể bị thu hồi miễn là tuân thủ các điều kiện
    • Giấy phép công nhận rõ quyền không giới hạn để chạy chương trình chưa sửa đổi
    • Covered work không bị sửa đổi hoặc chuyển giao có thể được tạo, chạy và phổ biến vô điều kiện miễn là giấy phép còn hiệu lực
    • Có thể chuyển giao các bản sao nguyên trạng của mã nguồn gốc với thông báo bản quyền phù hợp, thông báo giấy phép, tuyên bố miễn bảo hành và bản sao giấy phép
    • Để chuyển giao phiên bản mã nguồn đã sửa đổi, phải ghi rõ việc sửa đổi và ngày tháng, đồng thời cấp phép toàn bộ tác phẩm theo AGPLv3

Những điểm cần kiểm tra trong thực tế

  • Với mã mới từ Redis 8 trở đi, không còn cấu trúc đơn BSDv3 mà sẽ áp dụng một trong RSALv2·SSPLv1·AGPLv3
  • Cần phân biệt điều kiện giấy phép giữa trường hợp xử lý Redis 7.2 và các bản phát hành trước đó với Redis 8.0 và các bản phát hành sau đó
  • Khi cung cấp chức năng Redis hoặc chức năng của bản sửa đổi cho bên thứ ba dưới dạng dịch vụ, các hạn chế hoặc nghĩa vụ công khai mã nguồn sẽ khác nhau tùy theo giấy phép được chọn
  • RSALv2 hạn chế chính việc cung cấp dịch vụ, còn SSPLv1 yêu cầu công khai rộng rãi Service Source Code khi cung cấp dịch vụ
  • AGPLv3 yêu cầu cung cấp mã nguồn của các bản sửa đổi được sử dụng công khai trên máy chủ mạng cho người dùng máy chủ

1 bình luận