首頁>科技>

6 月 18 日晚,SegmentFault 思否收到 Apache 基金會提供的訊息,雲端計算解決方案服務商博雲在使用開源專案 Apache SkyWalking 時,違反了該專案宣告的 Apache License Version 2.0 開源協議規定。

Apache License Version 2.0 中明確註明了,當使用聲明了 Apache License Version 2.0 的軟體時,需要有顯著的宣告,不得有隱瞞和可以忽略的色彩。而博雲在產品的宣傳檔案中,並沒有進行相關內容的展示以及說明。

Apache 基金會發現該問題後,通過郵件與博雲進行了問責溝通:

溝通後,博雲方面積極進行了調整,並表示“沒有把 Apache SkyWalking 裝扮成自有產品的意思”,但確實在引用開源專案時做的不規範,違反了開源協議規定。

隨著開源主義的發展和開源專案的日漸豐富,越來越多的開發者和企業會使用開源的軟體和原始碼。但在實際使用的過程中,很多人對於開源協議以及引用規範並不是十分清晰,進而引起各種不必要的爭議甚至法律糾紛。

Apache SkyWalking 因為有強大的社群背書,被侵權後才能被迅速發現並得以順利維權,而很多開源專案,哪怕聲明了相關的開源協議,仍在被默默的被違規侵權使用。

對此,我們呼籲各企業和開發者在使用開源專案前,認真了解開源專案的意義與價值,遵守相關的開源協議,尊重他人的勞動成果。

我們整理了一些與開源相關的基礎知識,並以通用的開源協議 Apache License Version 2.0 為例,和大家解讀一下如何正確遵守開源協議。

什麼是開源協議?

開源授權協議的產生,是為了更好地保護開源專案的產權。開源協議作為一種契約和授權方式,是使用者合法使用軟體作品的一個憑證,就相當於軟體作者與使用者之間簽訂的一份合同,而且是在有相應行為就預設接受的。違反協議將侵犯專利所有人的智慧財產權,專利所有人可以提起訴訟。

對於開源授權協議的定義,我們可以參考百度百科詞條:

自由軟體/開源軟體是自由的,免費的,原始碼開放的,我們可自由下載安裝和使用。同時,為了維護作者和貢獻者的合法權利,保證這些軟體不被一些商業機構或個人竊取,影響軟體的發展,開源社群開發出了各種的開源許可協議。

開源許可協議有很多種,常見的開源許可協議有 Apache、BSD、GPL(GNU)、LGPL、MIT 等。烏克蘭程式設計師 Paul Bagwell 曾畫過一張分析圖,說明應該如何選擇開源協議。下面是阮一峰中文翻譯版本:

如果正確遵守開源協議

開源雖好,但在選擇開源軟體進行專案開發時一定要慎重,不僅僅要對其效能進行檢測,也需要對充分考慮其採用了哪種開源協議、是否存在智慧財產權風險,再具體的使用過程中需要如何遵守協議的規定與規範。

上圖是 Apache 軟體基金會在 2019 年年度報告中,披露的 ASF 軟體在全球各個國家的下載量排名。可以看到,中國已然成為 Apache 軟體基金會專案下載量最大的地區。

作為全球最大開源消費國,ASF 在國內有廣泛的群眾基礎。今天我們就以 Apache License Version 2.0 為例,來為大家解讀如何正確遵守開源協議,避免引發不必要的風險。

Apache License Version 2.0 鼓勵程式碼共享和尊重原作者的著作權,同樣允許程式碼修改,再發布(作為開源或商業軟體)。Apache Licence 也是對商業應用友好的許可,使用者也可以在需要的時候修改程式碼來滿足需要並作為開源或商業產品釋出/銷售。

協議中明確寫出,只要遵守該許可的條款和條件的前提下,每位貢獻者將被授予永久的、全球性的、非排他性的、免費的、免版稅的、不可撤銷的版權許可,以複製、準備衍生作品、公開展示、公開使用、再許可、分發本作品和其衍生作品(無論是以“原始碼”還是“目標”形式)。

也就是不僅可以用,還可以對基於 Apache License Version 2.0 的作品或衍生作品進行修改或增補,並應用到商業專案。但前提是滿足以下幾個條件:

需要給程式碼的使用者一份 Apache Licence;如果你修改了程式碼,需要在被修改的檔案中說明;在延伸的程式碼中(修改和有原始碼衍生的程式碼中)需要帶有原來程式碼中的協議,商標,專利宣告和其他原來作者規定需要包含的說明;如果再發布的產品中包含一個 Notice 檔案,則在 Notice 檔案中需要帶有 Apache Licence。你可以在 Notice 中增加自己的許可,但不可以表現為對 Apache Licence 構成更改。

總結下來,就是需要在相關產品的 發行版本,Notice 檔案、原始碼或文件裡,新增歸屬宣告的可讀拷貝,並給接收者提供開源專案中提供的 Apache License Version 2.0 許可證的拷貝,在分發的衍生作品的原始碼中,必須保留本作品原始碼中的所有版權、專利、商標和歸屬宣告。

公司在使用 Apache License Version 2.0 授權的開源軟體,進行分發的過程中,不應隱瞞或故意忽略提及對此軟體的使用。

其他的開源協議也類似,都有非常明確的使用規範與要求,在選擇開源軟體進行專案開發時一定要提前閱讀協議。規範使用開源協議既是對開源協議的尊重,也可以避免自身的法律風險。

* Apache SkyWalking, SkyWalking, Apache, Apache feather logo 版權屬於 Apache 軟體基金會。

擴充套件閱讀:

《Apache Licene 2.0 協議英文文件》http://www.apache.org/licenses/LICENSE-2.0.html

《OpenCV 擬更改授權協議,從 BSD 變更為 Apache License 2》

https://segmentfault.com/a/1190000022825029

思否開源專案支援計劃,為開源專案助力!

20 年前的開源專案,基本上是由個人開發者主導的。但隨著開源精神的發展以及開源文化的普及,越來越多的企業與科技公司參與到了開源生態的建設當中。

但歸根結底,開源更多的是一種社會化活動,很多的專案創意也是來自個人或者小型團隊。個人有了興趣,有了想法,並進而動手形成專案,而後建立社群,或者成立公司繼續推進。這種模式將會持續存在,也是技術創新的一種健康和合理途徑。所以遊離於大公司外的開源專案和植根於大公司內的開源專案,會長期共存。

但根據社群部分開源作者的反饋,大部分的優質個人開源專案很難進行有效的傳播推廣。

為助力優質開源專案成長,SegmentFault 思否社群作為服務於開發者的技術社群,正式推出「SFOSSP - 思否開源專案支援計劃」,我們希望藉助社群的資源對開源專案進行相關的宣傳推廣,並作為一個長期專案助力開源事業的發展,與廣大開發者共建開源新生態。

有意向的開源專案負責人或團隊成員,可通過郵箱提供相應的資訊(開源專案地址、專案介紹、團隊介紹、聯絡方式等),以便提升交流的效率。

聯絡郵箱:pr@segmentfault.com

最新評論
  • 1 #

    查一下中國基於開源Asterisk,freeSWITCH 開發的呼叫中心,企業電話系統是有多少開源的,號稱自有智慧財產權。這是一個大生意。

  • 2 #

    國內好多東西都是開源的東西改改就賣錢

  • 3 #

    對這些開源協議知道但是印象不深,分不清,那份圖示非常好,加強了對協議的了解

  • 4 #

    國內的廠商基本都是伸手黨,即便是開源也是一地雞毛。

  • 5 #

    承認就行,死不認賬還說自研就沒意思了

  • 6 #

    這不就是中國精神嗎

  • 整治雙十一購物亂象,國家再次出手!該跟這些套路說再見了
  • 馬化騰圍剿張一鳴