Python có giấy phép không?

Bạn có biết khoảng 13. 6% gói trên PyPI có giấy phép GPL-3?

Tài liệu Copyleft cho phép tự do phân phối và sửa đổi tài sản trí tuệ liên quan và yêu cầu các tác phẩm phái sinh tuân theo chính sách Copyleft tương tự. Về cơ bản, bạn được tự do sử dụng tài liệu Copylefted nhưng bất kỳ thứ gì bạn sản xuất bằng tài liệu gốc cũng phải được phân phối tự do và sẵn sàng sửa đổi

Một công ty phần mềm Hàn Quốc đã phải chịu hậu quả tài chính trong thế giới thực vì vi phạm điều khoản Copyleft. Trường hợp Artifex vs. Hancom tuyên bố bị cáo đã vi phạm thỏa thuận Giấy phép GPL-3 nguồn mở bằng cách bán một phần mềm sử dụng mã được cấp phép GPL-3

Thường duyệt và tải xuống từ PyPI. org có thể gây ra những hậu quả nghiêm trọng. Việc xác minh giấy phép nào được bao gồm trong các gói Python nguồn mở có thể giúp bạn không phải ra tòa.

Kết hợp các gói vào các chính sách đã thiết lập

Hầu hết các công ty đã thực thi các chính sách về việc tải xuống phần mềm của bên thứ ba mà không có sự chấp thuận trước của người quản lý hoặc bộ phận CNTT. Rõ ràng là không ai muốn nhân viên tải phần mềm độc hại

Việc mở rộng chính sách này sẽ giúp nhóm Phát triển tìm và tải xuống các gói từ PyPI và các trang Python mã nguồn mở khác

Xem xét pip; . tổ chức và địa phương). Một lệnh đơn giản như pip install có thể tạo nguồn cho một gói chung ( my-package) from either internal or public servers. This leads to huge vulnerabilities as anyone can upload a malicious package to a public server.

Để tăng cường bảo mật, chúng tôi đặc biệt khuyến nghị một tổ chức mở rộng chính sách phần mềm bên thứ ba của họ sang các gói nguồn mở. Điều này sẽ giúp tránh các gói có giấy phép không mong muốn

Các gói Python được ràng buộc về mặt pháp lý

Ngay cả một gói đáng tin cậy, rõ ràng là không độc hại, cũng có thể gây ra mối đe dọa do giấy phép của họ. Giấy phép GPL-3 có thể khiến công ty của bạn phải trả phí thông qua các khoản phí pháp lý và có thể khiến bạn mất Bản quyền của phần mềm độc quyền của bạn

Các gói Python là tài liệu có bản quyền hợp pháp; . Tác giả quyết định cách những người khác có thể sử dụng gói Python của họ thông qua thỏa thuận cấp phép

Bằng cách tải xuống gói Python, bạn , hoặc bạn thay mặt cho công ty của mình, đồng ý với các điều khoản – đặc biệt nếu nội dung của .

Trên trang dự án PyPI, giấy phép được tìm thấy trong “Meta” cùng với các thông tin khác như tác giả gói và yêu cầu

Python có giấy phép không?

Hơn 10% gói trên PyPI không liệt kê hoàn toàn giấy phép được sử dụng; . Giấy phép chưa niêm yết có nghĩa là người dùng sẽ phải tải xuống gói và điều tra thêm, mở ra cơ hội tấn công độc hại

Chính sách cấp phép của bạn cần bao gồm các gói

Dễ dàng thêm các gói vào chính sách cấp phép hiện tại. Chỉ cần xin phép

Khi một gói chưa được phê duyệt được coi là cần thiết, người được ủy quyền hoặc “người phê duyệt” – như người quản lý, bộ phận pháp lý hoặc thậm chí là Giám đốc điều hành – có thể kiểm tra nội dung giấy phép của gói và phê duyệt hoặc từ chối việc sử dụng gói đó. Sau khi được phê duyệt, các nhà phát triển có thể ngay lập tức tải gói sử dụng

May mắn thay, nhiều gói Python trên PyPI. org sử dụng các thỏa thuận cấp phép giống nhau. Vì vậy, khi một gói có giấy phép nhất định được phê duyệt (ví dụ:. Thỏa thuận cấp phép MIT), bất kỳ gói nào có cùng giấy phép đều tốt

Nghe có vẻ dễ dàng để "kiểm tra giấy phép của gói", nhưng có nhiều nơi mà tác giả Python có thể liệt kê giấy phép và do đó, người phê duyệt phải kiểm tra tất cả các địa điểm này để đảm bảo không có hành vi chơi xấu.  

Cách giấy phép được thể hiện trong các gói Python

Khi tạo gói Python, có ba tùy chọn giấy phép

  • Phân loại giấy phép (phổ biến nhất)
  • Cánh đồng
  • Và tập tin

Trình phân loại giấy phép

Một “bộ phân loại trove” giúp phân loại và mô tả từng gói được phát hành. Chúng có thể được sử dụng để nêu rõ chức năng của một gói, đối tượng được hướng tới và các điểm siêu dữ liệu khác nhau như khung, ngôn ngữ và giấy phép

Giấy phép có sẵn một số phân loại, ví dụ

  • Giấy phép. OSI đã được phê duyệt. Giấy phép phần mềm Apache
  • Giấy phép. OSI đã được phê duyệt. Giấy phép Công cộng GNU v3 trở lên (GPLv3+)
  • Giấy phép. OSI đã được phê duyệt. Giấy phép MIT
  • Giấy phép. Miễn phí sử dụng nhưng bị hạn chế
  • Giấy phép. phần mềm miễn phí

Hầu hết “Giấy phép. Giấy phép OSI Approved” là nguồn mở và được tạo rõ ràng cho các gói cũng là nguồn mở. MIT hoặc Apache là hai trong số phổ biến nhất

Trình phân loại giấy phép giúp hướng người dùng gói tới giấy phép. Bằng cách bao gồm bộ phân loại, tác giả không phải bao gồm văn bản giấy phép trong siêu dữ liệu gói. Thay vào đó, người dùng có thể tự mình duyệt đến giấy phép hoặc nhận ra bộ phân loại và đã biết nội dung

Trường siêu dữ liệu giấy phép

Các tác giả chọn sử dụng trường giấy phép  có thể nhập văn bản của giấy phép trong gói Python của họ.

Trường giấy phép  thường được sử dụng bởi các tác giả có giấy phép đặc biệt hoặc độc quyền mà không thể phân loại theo bộ phân loại trove đặt trước.

Như đã thấy trên Python. org, bạn có thể viết bất cứ điều gì bạn muốn

Giấy phép. Phần mềm này chỉ có thể nhận được bằng cách gửi cho tác giả một tấm bưu thiếp và sau đó người dùng hứa sẽ không phân phối lại nó

Tuy nhiên, hầu hết các tác giả sẽ sử dụng trường này để sao chép bộ phân loại và sao chép/dán văn bản giấy phép nguồn mở

Tệp GIẤY PHÉP

Cuối cùng, tác giả python có thể bao gồm tệp GIẤY PHÉP trong gói chứa văn bản giấy phép. Nhiều dự án nguồn mở trên PyPI bao gồm một bản sao của giấy phép nguồn mở.

⚠Đừng luôn tin tưởng vào giấy phép được liệt kê

Phương pháp hay nhất khi tải xuống các gói từ PyPI là coi trình phân loại là giấy phép 'đúng' của gói, nhưng hãy đảm bảo kiểm tra tất cả các trường giấy phép tiềm năng (e. g. phân loại, trường và tệp) vì ai đó có thể hành động ác ý

Hãy xem xét ví dụ này. một gói có “Giấy phép. OSI đã được phê duyệt. Giấy phép MIT” và trường giấy phép sẽ cho biết “xem tệp giấy phép”, nhưng GIẤY PHÉP file says “by using this package you agree to send the authors $1K.”

Loại gói này không độc hại theo truyền thống (như "colorama" so với "colorama"), nhưng nó vẫn có thể bị người dùng báo cáo là độc hại. Các gói được tải lên PyPI. org không được kiểm duyệt trước khi trang dự án được xuất bản, vì vậy người dùng nên xác nhận nội dung và giấy phép trước khi tải xuống

Tuy nhiên, rất có thể các giấy phép như ví dụ của chúng tôi sẽ không thể thực thi được vì các điều khoản rất mơ hồ và không bao giờ có thể có một thỏa thuận chung giữa hai bên

Tốt nhất bạn nên tham khảo ý kiến ​​của một bên liên quan hoặc pháp nhân của công ty về giấy phép Python. Trên thực tế, quy trình phê duyệt giấy phép có thể dễ dàng trở thành một phần của quy trình phê duyệt gói tổng thể cho các gói Python bên thứ ba của bạn

Tự động quét và phê duyệt giấy phép gói

Quy trình làm việc thủ công có thể được tự động hóa bằng một công cụ có thể quét gói, kiểm tra xem gói đó có giấy phép gì và phê duyệt hoặc từ chối tải xuống gói đó

Lấy ví dụ ProGet. Nó có thể nhận dạng siêu dữ liệu của gói và đặt tham số để cho phép hoặc từ chối tải xuống gói dựa trên siêu dữ liệu đã nói

Đối với giấy phép, ProGet cung cấp một danh sách đầy đủ các mã SPDX. Bạn có thể định cấu hình ProGet để lọc giấy phép ở cấp nguồn cấp dữ liệu và chặn các giấy phép không phù hợp, chẳng hạn như GPL-3, khỏi quá trình tải xuống

Python có giấy phép không?

Python hoạt động trên các trình phân loại nên ProGet vốn dĩ sẽ không nhận ra giấy phép của gói. Thay vào đó, bạn có thể nhập giấy phép theo cách thủ công và mỗi lần sau đó, ProGet sẽ nhận ra giấy phép trong tương lai

Python có giấy phép không?

Một hệ thống tự động được định cấu hình bởi trưởng nhóm, với sự chấp thuận của người được ủy quyền, sẽ cắt giảm đáng kể thời gian dành cho việc chuyển thủ công qua các giấy phép gói Python

Các bước nhỏ để đạt hiệu quả tốt hơn

Việc tích hợp các gói Python vào chính sách phần mềm bên thứ ba hiện có của công ty cho phép các nhà phát triển tải xuống từ PyPI. org mà không cần liên tục kiểm tra siêu dữ liệu – bởi vì nó đã được thực hiện cho họ

Trưởng nhóm hoặc trưởng bộ phận có thể đặt tiêu chuẩn thông qua quy trình phê duyệt thủ công hoặc công cụ tự động như và biết rằng họ không có nguy cơ gặp rắc rối pháp lý

Lọc theo giấy phép, cùng với các phương pháp Python tốt nhất khác như quy trình phê duyệt gói và gói SemVer cho Python, sẽ thúc đẩy sự phát triển Python của nhóm bạn

Python có được cấp phép không?

Phần mềm và tài liệu Python được cấp phép theo Thỏa thuận cấp phép PSF . Bắt đầu với Python 3. 8. 6, các ví dụ, công thức nấu ăn và mã khác trong tài liệu được cấp phép kép theo Thỏa thuận cấp phép PSF và giấy phép BSD không có điều khoản.

Giấy phép Python là bao nhiêu?

Python là một ngôn ngữ lập trình mã nguồn mở, có nghĩa là nó hoàn toàn miễn phí sử dụng. bạn có thể tải xuống Python cũng như các khung và thư viện của nó tại miễn phí .

Python vẫn miễn phí chứ?

Có. Python là ngôn ngữ lập trình nguồn mở, miễn phí dành cho mọi người sử dụng.

Python có bản quyền không?

"Python" là nhãn hiệu đã đăng ký của PSF. Các logo Python (trong một số biến thể) cũng được sử dụng nhãn hiệu của PSF