2σ Guide

OSSに自社コード貢献する際の
社内ルール

企業がOSSへ自社コードを貢献する際に、法務・知財・セキュリティ・プライバシー・輸出管理・開発実務をどう統合して社内ルール化するかを体系的に整理します。

7要素最低限の社内ルール
4段階AからDの承認区分
10手順提出前後の標準手順
本ページは株式会社Dプロフェッションズ(医師/医療機関/弁護士/弁護士法人ではありません)が運営しています。
一般的な情報提供を目的としており医療上の助言や法律相談等を行うものではありません。
広告(PR)を掲載しています。広告は編集内容や推奨を意味しません。
Video

OSSに自社コード貢献する際の 社内ルール

貢献を止める規程ではなく、安全に外へ出すための統制システムとして設計します。

動画を読み込み中…
2σ GUIDE ・ VIDEO
OSSに自社コード貢献する際の 社内ルール
貢献を止める規程ではなく、安全に外へ出すための統制システムとして設計します。
動画の文字起こし(全文テキスト)

2σ GUIDE ・ VIDEO

  • OSSに自社コード貢献する際の 社内ルール
  • 貢献を止める規程ではなく、安全に外へ出すための統制システムとして設計します。

POINT 1

  • OSSに自社コード貢献する際の社内ルールの全体像
  • 貢献を止める規程ではなく、安全に外へ出すための統制システムとして設計します。
  • OSS貢献ルールは、禁止ではなく安全な公開のための仕組みです
  • 基本方針
  • 適用範囲

POINT 2

  • OSSに自社コード貢献する際の定義と対象範囲
  • OSS、公開リポジトリ、自社コード、CLA、DCO、SBOM、OSPOを切り分けます。
  • OSSと公開リポジトリの違い
  • 自社コードの範囲
  • 上流と下流

POINT 3

  • OSSに自社コード貢献する際の法務・知財・セキュリティリスク
  • 著作権
  • 職務著作、委託先からの権利譲渡、著作者人格権不行使、共同開発先の権利を確認します。
  • ライセンス

POINT 4

  • OSSに自社コード貢献する際の承認マトリクスと三層設計
  • 1. 第1層 ポリシー:目的、適用範囲、基本原則、禁止事項、役割、承認の考え方を定めます。
  • 2. 第2層 標準手順書:どの貢献に誰の承認が必要か、どのツールで確認するか、何を記録するかを定めます。
  • 3. 第3層 チェックリスト・テンプレート:Pull Request前確認、申請フォーム、CLAレビュー依頼、秘密情報確認、緊急対応文面を用意します。

POINT 5

  • OSSに自社コード貢献する際の標準手順
  • 教育と事前登録
  • 対象プロジェクト確認
  • 貢献内容の分類
  • 権利帰属・コード由来確認
  • ライセンス・CLA・DCO確認
  • 秘密情報・個人情報・認証情報の確認
  • 特許・技術公開レビュー
  • セキュリティ・脆弱性レビュー
  • 輸出管理レビュー
  • 承認・記録・提出
  • 教育からマージ後管理まで、0から10のステップで確認します。

POINT 6

  • OSSに自社コード貢献する際の法務・知財レビュー
  • CLA、DCO、契約制限、特許、職務著作、商標を横断的に確認します。
  • 法務レビューの確認範囲
  • 知財・特許レビューの確認範囲
  • 法務レビューと知財レビューは、同じ「権利確認」でも見ている対象が異なります。

POINT 7

  • OSSに自社コード貢献する際の秘密情報・個人情報・輸出管理
  • 1. 修正内容を分類:認証、暗号、権限管理、入力検証、CI/CD、署名検証に関わるかを確認します。
  • 2. 未公表の脆弱性を示すか:差分や説明から攻撃方法が推測されるかを確認します。
  • 3. 非公開連絡へ:Security Policy、メンテナ連絡、CVE、顧客通知、パッチ時期を調整します。
  • 4. 通常提出へ:テスト、SAST、SCA、secret scanning、署名、最小権限を確認して提出します。

POINT 8

  • OSSに自社コード貢献する際のCLA・DCO・AI運用
  • 署名、ライセンス表示、アカウント、AI生成コードの扱いを実務に落とします。
  • 署名権限
  • Signed-off-by
  • ライセンス表示

まとめ

  • OSSに自社コード貢献する際の 社内ルール
  • OSSに自社コード貢献する際の社内ルールの全体像:貢献を止める規程ではなく、安全に外へ出すための統制システムとして設計します。
  • OSSに自社コード貢献する際の定義と対象範囲:OSS、公開リポジトリ、自社コード、CLA、DCO、SBOM、OSPOを切り分けます。
  • OSSに自社コード貢献する際の法務・知財・セキュリティリスク:ライセンスだけでなく、秘密情報、契約、個人情報、輸出管理、ブランドまで確認します。
  • 本動画は一般的な情報提供であり、法律上の助言ではありません。記載の数値・金額・期間は目安です。個別事情で結論は変わります。
Overview

OSSに自社コード貢献する際の社内ルールの全体像

貢献を止める規程ではなく、安全に外へ出すための統制システムとして設計します。

OSSへ自社コードを貢献する行為は、単なる開発者の善意や趣味ではなく、競争力、採用力、技術的影響力、サプライチェーン管理、知的財産戦略に関わる経営上の意思決定です。同時に、著作権、特許、営業秘密、契約、個人情報、輸出管理、脆弱性対応、ブランド管理、内部統制が交差する高度な企業法務テーマでもあります。

このページの中心的な考え方は、OSSに自社コード貢献する際の社内ルールは貢献を止める規程ではなく、貢献してよいものを迅速かつ安全に外へ出すための統制システムだという点です。低リスクの修正は速く通し、高リスクの技術公開は専門レビューへ送る設計が重要です。

次の強調部分は、このページ全体で最も重要な結論を示しています。社内ルールの目的を誤ると、必要な上流貢献が止まる一方で、秘密情報や権利処理の事故も防げません。まずは、統制の目的が開発者を疑うことではなく、会社として安全な道筋を用意することだと読み取ってください。

OSS貢献ルールは、禁止ではなく安全な公開のための仕組みです

会社として貢献を認め、承認基準、レビュー手順、記録保存、教育を整えることで、開発スピードと法務・知財・セキュリティ管理を両立させます。

次の一覧は、社内ルールに最低限入れるべき7つの要素を整理したものです。各項目は担当部門が異なっても相互に関連するため、欠けている項目がないかを確認する入口として使えます。

Policy

基本方針

会社としてOSS貢献をどう位置付け、どの範囲で推奨するかを明文化します。

Scope

適用範囲

自社コード、私的活動、顧客コード、第三者コード、AI生成コードを区別します。

Approval

承認基準

小規模修正、通常修正、重要修正、新規公開をリスクに応じて分けます。

Review

専門レビュー

著作権、特許、営業秘密、契約、個人情報、輸出管理、セキュリティを確認します。

Practice

実務ルール

CLA、DCO、ライセンス表示、アカウント、会社名表示、記録保存を定めます。

Tools

テンプレート

開発者が迷わず使える申請フォーム、チェックリスト、PR文面を用意します。

Ops

継続運用

教育、監査、例外処理、緊急脆弱性対応、OSPO的機能を組み込みます。

注意この記事は一般的な情報提供です。個別のCLA署名、特許判断、輸出管理判断、脆弱性開示、個人情報対応は、管轄法、契約、会社規程、対象プロジェクトのルールにより結論が変わる可能性があります。具体的な対応は、資料を整理したうえで弁護士、弁理士、セキュリティ専門家等へ相談する必要があります。
Section 01

OSSに自社コード貢献する際の定義と対象範囲

OSS、公開リポジトリ、自社コード、CLA、DCO、SBOM、OSPOを切り分けます。

OSS貢献ルールを作る前提として、公開リポジトリ、OSSライセンス、自社コード、貢献、上流、CLA、DCO、SBOM、OSPOを分けて理解する必要があります。用語の線引きが曖昧なままだと、承認対象やレビュー範囲も曖昧になります。

OSSと公開リポジトリの違い

OSSは、単にソースコードが公開されているソフトウェアではありません。Open Source Definitionが示すように、自由な再頒布、ソースコード提供、派生物の作成、個人・団体・利用分野への差別禁止、ライセンスの技術中立性などを満たす必要があります。GitHub上でpublicになっていても、明示的なOSSライセンスがなければ、第三者が自由に複製、改変、再頒布できるとは限りません。

自社コードの範囲

自社コードには、従業員が職務として作成したコード、委託先から権利譲渡または利用許諾を受けたコード、既存OSSへ社内で加えた修正パッチ、会社が公開予定の新規OSS、テスト、ドキュメント、設定ファイル、CI/CD定義などが含まれます。ただし、顧客から預かったコード、委託元に権利が帰属する成果物、共同研究成果、第三者ライブラリのコピー、インターネット上のコード断片、未確認のAI出力、秘密情報を含むコードは別途確認が必要です。

次の比較表は、貢献の種類ごとに典型例と主なリスクを整理しています。区分ごとに求められる承認やレビューの重さが変わるため、まず貢献内容がどこに当たるかを読み取ることが重要です。

区分主なリスク
非コード貢献Issue、質問、翻訳、ドキュメント修正秘密情報、商標、顧客情報、発言リスク
小規模コード貢献誤字修正、数行のバグ修正、テスト追加権利帰属、DCO、ライセンス表示
通常コード貢献機能追加、仕様変更、性能改善著作権、特許、契約、保守責任
高リスク貢献暗号、認証、脆弱性修正、アルゴリズム、製品中核技術特許、輸出管理、営業秘密、脆弱性開示
新規OSS公開自社プロジェクトをOSSとして公開ライセンス選択、商標、ガバナンス、保守体制、契約

上流と下流

上流とは元となるOSSプロジェクトをいい、下流とはそのOSSを利用・改変して製品、サービス、社内システム等に組み込む側をいいます。自社が修正を上流へ戻すと、その修正はコミュニティ全体で保守される可能性があり、独自パッチの保守負担や将来のバージョン追随コストを減らせます。

次の一覧は、OSS貢献ルールで頻出する実務用語をまとめたものです。各用語は契約、台帳、承認フォームに登場するため、どの情報を記録すべきかを読み取ってください。

CLA

Contributor License Agreement

貢献者がプロジェクトや財団に対し、著作権・特許等の利用許諾や表明を行う契約です。個人CLAと企業CLAを分けて確認します。

DCO

Developer Certificate of Origin

Signed-off-byにより、貢献物を提出する権限があることを証明する仕組みです。会社コードでは会社承認との整合が必要です。

SBOM

Software Bill of Materials

構成コンポーネント、依存関係、バージョン、供給者、識別子等を記録する部品表です。上流修正後の製品管理に関係します。

OSPO

Open Source Program Office

OSSの利用、貢献、公開、コンプライアンス、教育、コミュニティ対応を支援する組織または機能です。

Section 02

OSSに自社コード貢献する際の法務・知財・セキュリティリスク

ライセンスだけでなく、秘密情報、契約、個人情報、輸出管理、ブランドまで確認します。

OSS貢献のリスクは、ライセンスだけに閉じません。コードを公開する行為は、会社の権利、第三者契約、個人情報、輸出管理、セキュリティ、ブランド評価に同時に影響します。

次の一覧は、社内ルールが扱うべき主要リスクを領域別に並べたものです。どの部署がレビューするかだけでなく、公開後に取り戻しにくい情報や権利がどこにあるかを読み取ることが重要です。

著作権

職務著作、委託先からの権利譲渡、著作者人格権不行使、共同開発先の権利を確認します。

ライセンス

MIT、BSD、Apache-2.0、GPL、AGPL、LGPL、MPLなどの条件差を把握し、SPDX識別子で記録します。

特許

Apache-2.0やCLAにより、貢献に必然的に侵害される一定の特許ライセンスが及ぶ可能性を確認します。

営業秘密

コード、コメント、テストデータ、社内URL、顧客名、性能測定結果、未公開ロードマップが公知化しないか確認します。

契約

受託開発契約、共同研究契約、NDA、政府調達、クラウド規約、雇用・委託契約との抵触を確認します。

個人情報

ログ、サンプル、Issue、スクリーンショット、メールアドレス、IPアドレス、端末ID、従業員情報を確認します。

輸出管理

暗号、認証、通信、半導体、ロボティクス、AI、サイバーセキュリティ関連の技術提供性を確認します。

セキュリティ

脆弱性修正、攻撃手法の推測可能性、Security Policy、CVE、顧客通知、パッチ公開時期を確認します。

ブランド

会社名、商標、ロゴ、公式アカウント、コミュニティでの発言態度が会社評価に与える影響を管理します。

重要社内リポジトリに置かれていることは、OSSへ貢献できることを意味しません。権利帰属、契約制限、秘密情報、個人情報、特許、輸出管理の確認を経て、はじめて公開可否を判断できます。

二つの失敗パターン

社内ルールがない場合、善意の修正に秘密情報や第三者コードが混じるリスクがあります。一方で、過度に厳格なルールにすると、開発者が上流へ修正を戻せず、独自パッチが増え、保守コストや脆弱性対応の負担が大きくなります。よいルールは、迷ったときの相談先と通常時の通し方を同時に示します。

Section 03

OSSに自社コード貢献する際の承認マトリクスと三層設計

方針、手順、テンプレートを分け、AからDまでのリスク区分を作ります。

OSS貢献ルールは、一つの長大な規程だけで完結させるより、方針、標準手順、チェックリスト・テンプレートの三層で設計する方が実務に乗りやすくなります。現場が日々使うのは規程本文より、判断基準とフォームです。

次の判断の流れは、社内ルールを三層で整える考え方を示しています。上から順に、会社の姿勢、実際の承認手順、開発者が使う日常ツールへ落とすことで、制度が紙の規程で終わらないようにする点を読み取ってください。

社内ルールの三層設計

第1層 ポリシー

目的、適用範囲、基本原則、禁止事項、役割、承認の考え方を定めます。

第2層 標準手順書

どの貢献に誰の承認が必要か、どのツールで確認するか、何を記録するかを定めます。

第3層 チェックリスト・テンプレート

Pull Request前確認、申請フォーム、CLAレビュー依頼、秘密情報確認、緊急対応文面を用意します。

承認マトリクスの考え方

次の比較表は、貢献レベルごとの承認者とレビュー範囲を整理しています。すべてを法務承認にすると運用が止まり、すべてを現場判断にすると重大リスクを見逃すため、リスクに応じた分岐を読み取ってください。

レベル典型例承認・確認の考え方
Aコードを含まない質問、公開情報に基づくIssue、軽微な翻訳修正事前教育と簡易記録で足りる設計が考えられます。
B数行のバグ修正、テスト追加、ビルド設定修正開発責任者またはプロジェクトマネージャ承認で進める設計が現実的です。
C機能追加、仕様変更、CLA署名、特許・契約・セキュリティ論点がある修正OSPO、法務、知財、セキュリティ等のレビューを求めます。
D新規OSS公開、中核技術公開、暗号・認証・規制業種に関わる技術公開事業責任者、法務責任者、知財責任者、セキュリティ責任者、必要に応じて経営会議で承認します。

原則禁止または例外承認に置く事項

顧客または第三者が権利を持つコード、秘密情報、認証情報、個人情報、NDA対象情報、出願前発明、輸出管理上問題のある相手・用途に関わる提供、会社方針と矛盾するCLA、出所不明コード、未確認のAI生成コード、未調整の脆弱性情報は、原則禁止または例外承認事項として明記します。

Section 04

OSSに自社コード貢献する際の標準手順

教育からマージ後管理まで、0から10のステップで確認します。

承認設計は、実際の申請からマージ後管理までの手順に落とし込んで初めて機能します。開発者が迷わないよう、教育、分類、レビュー、提出、事後管理までを一つの道筋にします。

次の時系列は、OSS貢献の標準手順を0から10まで並べたものです。順番には意味があり、先に対象プロジェクトと貢献内容を分類し、その後に権利、ライセンス、秘密情報、特許、セキュリティ、輸出管理を確認する流れを読み取ってください。

Step 0

教育と事前登録

OSS、public repository、DCO、CLA、秘密情報、脆弱性手順、小規模貢献と要承認貢献の違いを学びます。

Step 1

対象プロジェクト確認

リポジトリ、公式サイト、ライセンス、CONTRIBUTING、CODE_OF_CONDUCT、SECURITY、健全性、利用有無を確認します。

Step 2

貢献内容の分類

Issue、コード、ドキュメント、小規模修正、通常修正、脆弱性修正、暗号・認証、顧客案件、特許性、AI出力を分類します。

Step 3

権利帰属・コード由来確認

従業員、委託先、派遣社員、共同研究先、第三者コード、Stack Overflow、ブログ、生成AI、テストデータの由来を確認します。

Step 4

ライセンス・CLA・DCO確認

同一ライセンス提供、個人CLA、企業CLA、Signed-off-by、特許条項、準拠法、表明保証、補償条項を確認します。

Step 5

秘密情報・個人情報・認証情報の確認

secret scanning、SAST、SCA、ライセンススキャン、社内ドメイン、顧客名、APIキー、秘密鍵、ログ、スクリーンショットを確認します。

Step 6

特許・技術公開レビュー

発明、出願前公開、Apache-2.0やCLAの特許ライセンス、標準化、共同研究、防衛的公開、秘密管理の要否を確認します。

Step 7

セキュリティ・脆弱性レビュー

未知脆弱性、CVE、非公開連絡、顧客通知、自社製品パッチ、embargo、協調開示の要否を確認します。

Step 8

輸出管理レビュー

暗号、認証、通信、制御、半導体、ロボティクス、防衛、AIモデル、非居住者提供、制裁対象との関係を確認します。

Step 9

承認・記録・提出

申請番号、PRまたはIssue、コミットハッシュ、ライセンス、CLA/DCO、レビュー結果、スキャン結果、承認者、提出アカウントを記録します。

Step 10

マージ後の管理

独自パッチ削除、上流版への切替、SBOM・ライセンス台帳・脆弱性管理台帳の更新、追加質問対応、継続保守判断を行います。

実務提出前の確認はコード差分だけでなく、PR本文、Issueコメント、レビューコメント、テストデータ、添付画像、Git履歴まで含めて公開情報として扱う必要があります。
Section 06

OSSに自社コード貢献する際の秘密情報・個人情報・輸出管理

公開後に取り戻しにくい情報を、コード本体以外まで含めて確認します。

秘密情報、セキュリティ、個人情報、輸出管理は、公開後に取り戻しにくい領域です。コード本体だけでなく、テストデータ、コメント、ログ、設定、スクリーンショット、Git履歴まで確認対象に入れます。

営業秘密と秘密情報

次の一覧は、コード以外に混入しやすい秘密情報を整理したものです。公開ファイルだけでなく、説明文や履歴にも含まれ得るため、何を探すべきかを読み取ってください。

接続情報

社内ホスト名、IPアドレス、社内URL、環境変数、未公開設定。

認証情報

APIキー、アクセストークン、秘密鍵、証明書、トークン。

顧客・取引先情報

顧客名、案件名、取引先名、顧客環境、システム規模。

未公開事業情報

未公開製品名、コードネーム、ロードマップ、価格、原価、営業情報。

技術・障害情報

性能測定結果、失敗データ、障害ログ、インシデント情報、脆弱性再現手順。

履歴・添付物

Git履歴、バイナリ、画像、ノートブック、スクリーンショット、レビューコメント。

セキュリティと脆弱性対応

次の判断の流れは、脆弱性修正を通常の公開PRと分ける考え方を示しています。公開差分が攻撃の手がかりになる場合があるため、公開に先立ち、非公開連絡、製品影響、顧客通知を確認する順番を読み取ってください。

脆弱性修正の公開判断

修正内容を分類

認証、暗号、権限管理、入力検証、CI/CD、署名検証に関わるかを確認します。

未公表の脆弱性を示すか

差分や説明から攻撃方法が推測されるかを確認します。

該当
非公開連絡へ

Security Policy、メンテナ連絡、CVE、顧客通知、パッチ時期を調整します。

非該当
通常提出へ

テスト、SAST、SCA、secret scanning、署名、最小権限を確認して提出します。

個人情報・プライバシー

OSS貢献に実データはほとんど不要です。氏名、メールアドレス、電話番号、住所、ユーザーID、顧客ID、社員番号、IPアドレス、Cookie、端末ID、広告ID、位置情報、金融・医療・健康情報、問い合わせ履歴、チャットログ、本番ログ、画像メタデータは削除または合成データに置換します。匿名化への過信は避け、最初から最小限のサンプルを作る方が安全です。

輸出管理・経済安全保障

プログラムや技術データは技術提供に含まれ得ます。暗号、認証、侵入検知、脆弱性検証、通信制御、半導体設計、ロボティクス、ドローン、航空宇宙、画像認識、センサー融合、高精度測位、制御システム、懸念用途や制裁対象との関係があるプロジェクトでは、該非判定、公知技術等の特例、米国EAR等の関係を確認します。

Section 07

OSSに自社コード貢献する際のCLA・DCO・AI運用

署名、ライセンス表示、アカウント、AI生成コードの扱いを実務に落とします。

CLA、DCO、ライセンス表示、著作権表示、アカウント運用は、開発者が日々触れる実務です。社内承認があっても、提出時の署名や表示を誤ると、会社の権利表明や記録にずれが生じます。

次の一覧は、提出時に迷いやすい運用項目をまとめています。契約上の意味と開発実務上の作業が結びつくため、誰が何を承認し、どの記録を残すかを読み取ってください。

CLA

署名権限

私的活動、会社業務、個人CLA、企業CLAを分け、署名日、対象プロジェクト、対象従業員、撤回手続を保存します。

DCO

Signed-off-by

使用する氏名・メールアドレス、会社アドレスの可否、共同作業、bot、自動生成コミット、squash時の維持を定めます。

SPDX

ライセンス表示

新規ファイル追加時は、対象プロジェクトのルールに従い、SPDX-License-Identifier等で機械可読性を高めます。

Notice

著作権表示

会社名、個人名、既存ファイル、NOTICEファイルの扱いはプロジェクト方針に合わせ、過剰表示を避けます。

Account

アカウント運用

公式organization、個人アカウント、会社メール、退職時削除、2要素認証、公式発言と個人発言の区別を定めます。

AI支援開発時代の追加ルール

生成AIやコード補完AIは、出力コードの由来、類似性、ライセンス適合性、秘密情報入力、個人情報入力、セキュリティ品質の問題を生みます。AIの提案であっても、DCOやCLAでは提出者が権限を表明することになるため、人間のレビューと記録が必要です。

次の比較表は、AI利用時に社内ルールへ入れるべき確認事項を整理しています。AI出力を「便利な下書き」として扱い、提出物としての責任は人間と会社が負う点を読み取ってください。

確認項目社内ルールに入れる内容
入力制限機密コード、顧客コード、個人情報、秘密情報を未承認AIサービスへ入力しない。
出力確認AI生成コードを未確認のままOSSへ貢献しない。一定長以上または特徴的な出力は類似コード検索とライセンス確認を行う。
データ確認AIが生成したテストデータに個人情報らしきものがないか確認する。
責任の明示AI提案でも、提出者がDCO/CLA上の責任を負うことを教育する。
記録生成AI利用ログ、プロンプト、出力、採否を必要に応じて記録する。
プロジェクト方針対象プロジェクトがAI生成コードを禁止または開示要求していないか確認する。

AIモデルやモデル重みをOSSと呼ぶ場合も、従来のソフトウェアライセンスと同じ整理だけでは足りません。モデル、学習コード、データ、重み、評価、利用制限を分け、Open Source AI Definitionなどの考え方も参照します。

Section 08

OSSに自社コード貢献する際の規程例とチェックリスト

条項例と担当者別確認項目に落とし込み、日常業務で使える形にします。

規程例とチェックリストは、社内ルールを日常業務に埋め込むための実装部品です。抽象的な方針だけでは、開発者も法務担当も判断できないため、条項と確認項目を具体化します。

次の比較表は、規程化する際の条項例を目的別に整理したものです。どの条項がどのリスクを受け止めるかを読み取り、自社の就業規則、情報セキュリティ規程、個人情報保護規程、輸出管理規程、職務発明規程と整合させます。

条項定める内容
目的OSSコミュニティへの適切な貢献を促進しつつ、知財、秘密情報、個人情報、契約、輸出管理、セキュリティを管理する。
基本方針事業上合理的な範囲でOSS貢献を推奨し、会社または第三者の権利・利益を不当に害しない。
適用範囲役員、従業員、契約社員、派遣社員、業務委託先など、会社業務に従事する者の会社関連貢献に適用する。
私的活動勤務時間外で会社資産・会社情報・顧客情報を使わない個人活動は承認手続の対象外としつつ、秘密保持や利益相反には従う。
承認区分軽微貢献、小規模貢献、通常貢献、重要貢献、新規公開に分け、疑義があれば上位区分として扱う。
禁止事項第三者コード、顧客情報、営業秘密、個人情報、認証情報、未確認の輸出管理技術、未調整の脆弱性情報、未承認AI生成コードを禁止対象に置く。
CLA・DCO会社コードに関するCLA署名やDCO sign-offは、承認範囲でのみ行えると明記する。
特許出願予定発明、会社特許、標準化活動、共同研究、競争優位技術に関わる場合は知財確認を求める。
セキュリティ脆弱性の存在、攻撃手法、回避手段、悪用可能性を示す公開PRや公開Issueを避ける。
記録保存申請、承認、レビュー結果、CLA、DCO、スキャン結果、PR、Issue、コミットハッシュ、マージ結果を保存する。

次の一覧は、担当者別に使う確認項目をまとめたものです。誰がどの観点を確認するかを分担することで、開発者の負担を増やしすぎず、専門レビューが必要な場面を見逃さないことが重要です。

Developer

開発者

公式リポジトリ、LICENSE、CONTRIBUTING、SECURITY、CLA/DCO、レベル分類、秘密情報、AI出力、脆弱性、特許性、輸出管理、PR本文を確認します。

Legal

法務

ライセンス、CLA、DCO、署名主体、表明保証、補償、準拠法、権利帰属、顧客契約、商標、記録保存先を確認します。

Patent

知財・弁理士

発明該当性、出願前公開、既存特許、特許ライセンス範囲、防衛的公開、共同研究・標準化への影響を確認します。

Security

セキュリティ

脆弱性修正、SECURITY.md、公開差分の危険性、自社製品影響、secret scanning、SAST/SCA、CI/CD権限を確認します。

Privacy

個人情報

実データ、ログ、スクリーンショット、個人データ、要配慮個人情報、合成データ、メタデータ、DCO表示情報を確認します。

Export

輸出管理

規制対象技術、暗号・認証・サイバーセキュリティ、外国向け提供、特例、米国EAR、制裁対象・懸念用途を確認します。

Section 09

OSSに自社コード貢献する際の記録保存と内部統制

監査、KPI、90日導入、大企業でのOSPO化まで整理します。

OSS貢献は、提出したら終わりではありません。数年後に、誰が、何を、どの権限で、どのライセンスで、どの承認に基づいて貢献したのかを説明できる記録が必要です。

保存すべき記録

次の比較表は、記録保存の対象を整理しています。M&A、IPO、製品売却、セキュリティインシデント、ライセンス監査、顧客監査、訴訟、退職者トラブルの際に説明できることを目的として読み取ってください。

分類保存する記録
申請・承認申請フォーム、承認履歴、承認者、承認日、例外承認、事後フォロー事項。
対象情報対象プロジェクト、リポジトリURL、Pull Request URL、Issue URL、コミットハッシュ、マージ結果。
権利・契約ライセンス確認結果、CLA/DCO、コード由来確認、第三者コード有無、契約確認結果、特許レビュー結果。
安全確認秘密情報スキャン、セキュリティスキャン、輸出管理判定、個人情報確認、脆弱性対応記録。

監査と指標

内部監査では、承認マトリクス、無承認の会社コード貢献、CLA/DCO記録、秘密情報スキャン、高リスク貢献の専門レビュー、退職者アカウント権限、例外承認、教育受講率を確認します。OSPOまたは法務は、貢献件数、承認リードタイム、小規模貢献の簡易承認率、法務レビュー件数、差戻し理由、秘密情報検出件数、上流マージ率、独自パッチ削減数をKPIとして追うと、プロセス改善につながります。

中小企業・スタートアップでの導入

次の時系列は、専任法務やOSPOがない企業でも現実的に導入できる90日計画を示しています。最初から完璧な制度を目指すのではなく、30日、60日、90日の順に、最低限の統制から継続運用へ進める点を読み取ってください。

30日

最小構成を作る

OSS貢献方針、禁止事項、1ページ承認フォーム、GitHub権限整理、secret scanning、主要利用OSS一覧、CLA必要プロジェクト、30分研修を整えます。

60日

標準化する

承認済みプロジェクト、承認済みライセンス、小規模貢献ルート、委託契約条項、職務発明・著作権規程、PRテンプレートを整えます。

90日

継続運用へ移す

OSS貢献台帳、SBOMまたはOSS部品表、専門レビュー手順、脆弱性開示手順、四半期監査、外部専門家レビューを整えます。

大企業・上場企業・規制業種での高度化

継続的にOSS貢献を行う企業では、OSPOまたはOSPO的機能を置き、開発、法務、知財、セキュリティ、調達、広報、人事、内部監査をつなぎます。OpenChain ISO/IEC 5230、OpenChain ISO/IEC 18974、NIST SSDFを参照し、Inbound、Internal、OutboundのOSS管理、SBOM、SCA、脆弱性管理、サプライチェーン契約、M&A・IPOのデューデリジェンスへ接続します。

Section 10

OSSに自社コード貢献する際のよくある質問

個別判断ではなく、一般的な制度説明として疑問点を整理します。

Q1. OSSへの小さなバグ修正も法務承認が必要ですか。

一般的には、誤字修正、軽微なテスト修正、数行の明白なバグ修正は、事前教育とチェックリストを前提に、開発責任者承認または簡易記録で進める設計が考えられます。ただし、CLA署名、特許、秘密情報、顧客コード、脆弱性、暗号、個人情報が関わる場合は、小規模でも専門レビューが必要になる可能性があります。具体的な承認区分は、会社規程と対象プロジェクトの条件を確認する必要があります。

Q2. 個人アカウントで会社業務の貢献をしてよいですか。

一般的には、プロジェクト慣行上、個人アカウントでの貢献が自然な場合があります。ただし、会社業務として会社コードを貢献する場合は、会社承認、DCO/CLA、メールアドレス、会社名表示、退職後の記録、コミュニティ上の発言責任を明確にする必要があります。具体的な運用は、会社のアカウント規程や対象プロジェクトの貢献ルールによって変わります。

Q3. DCOは契約ではないから気にしなくてよいですか。

一般的には、DCOは各コミットについて提出権限を証明する仕組みであり、貢献と氏名・メールアドレスが公開記録として残る可能性があります。会社コードについてSigned-off-byを付す場合、会社として提出を許可しているかを確認する必要があります。具体的な取り扱いは、対象プロジェクトのDCO要件と会社の承認手続によって変わります。

Q4. CLAに個人で署名すれば会社承認は不要ですか。

一般的には、個人CLAであっても、会社の職務上作成したコード、会社が権利を持つコード、会社の特許に関わる貢献を提出する場合は、会社承認が必要になる可能性があります。プロジェクトによっては企業CLAが必要または望ましい場合もあります。具体的には、CLA本文、会社規程、権利帰属、対象コードの由来を確認する必要があります。

Q5. GPLプロジェクトへ会社コードを貢献すると、自社製品全体がGPLになりますか。

一般的には、貢献したコードは対象GPLプロジェクトの条件で取り込まれます。一方で、自社製品全体への影響は、そのコードを自社製品へどのように組み込むか、配布するか、結合関係がどうかによって異なります。上流貢献そのものと、自社製品での利用・頒布義務は分けて検討する必要があります。

Q6. Apache-2.0プロジェクトへの貢献では特許に注意すべきですか。

一般的には、Apache License 2.0は貢献者からの一定の特許ライセンスを含むため、会社の特許または出願予定技術に関わる貢献では知財レビューが必要になる可能性があります。具体的な影響範囲は、貢献内容、会社特許、CLAの有無、対象プロジェクトのルールによって変わります。

Q7. 顧客案件で作った汎用的なバグ修正をOSSへ戻してよいですか。

一般的には、受託開発契約、NDA、成果物帰属条項、秘密保持条項、再利用条項、OSS貢献条項を確認する必要があります。汎用的に見える修正でも、顧客環境や要件に由来する場合があります。具体的な公開可否は、関連契約と修正内容の由来を整理したうえで判断する必要があります。

Q8. 脆弱性修正を公開Pull Requestで送ってよいですか。

一般的には、未知または未公表の脆弱性に関わる場合、公開PRではなく対象プロジェクトのSecurity Policyに従い、非公開でメンテナに連絡する運用が想定されます。自社製品への影響、CVE、顧客通知、パッチ公開時期によって対応は変わります。具体的な進め方は、セキュリティ担当と対象プロジェクトの手順を確認する必要があります。

Q9. AIが生成したコードをOSSへ貢献してよいですか。

一般的には、社内ルールと対象プロジェクトの方針に従う必要があります。AI生成コードは出所や類似性の確認が難しいため、未確認のまま提出することは避ける設計が望まれます。DCOやCLAでは提出者が権限を表明することになるため、人間のレビュー、類似性確認、秘密情報確認が必要です。

Q10. 社内ルールを厳しくすれば安全ですか。

一般的には、過度に厳しいルールは、非公式な貢献、無申請の個人アカウント利用、独自パッチの蓄積、上流追随困難を招く可能性があります。安全なルールとは、すべてを止めるものではなく、低リスク貢献を速く通し、高リスク貢献を確実に専門レビューへ送る仕組みです。具体的な厳しさは、会社規模、業種、製品、契約、技術領域によって調整する必要があります。

Section 11

OSSに自社コード貢献する際の社内ルールの到達点

企業価値を守りながら、OSSコミュニティへ責任を持って参加する仕組みにします。

OSSに自社コード貢献する際の社内ルールは、企業法務だけで完結しません。著作権、特許、営業秘密、契約、個人情報、輸出管理、セキュリティ、内部統制、開発文化、コミュニティ理解が統合されて初めて機能します。

OSS貢献を例外的に許す危険行為と捉えると、現場は萎縮し、必要な修正が上流へ戻らず、長期的には保守負担とセキュリティリスクが増えます。一方で、自由に進めてよい活動とだけ捉えると、知財、契約、秘密情報、個人情報、輸出管理の重大事故が起こり得ます。

次の強調部分は、社内ルールの到達点をまとめたものです。自社の制度が、開発者を止めるための手続ではなく、会社として安全にOSSコミュニティへ参加するための実務インフラになっているかを読み取ってください。

成熟した社内ルールは、貢献を公式な技術戦略として管理します

基本方針、承認マトリクス、専門レビュー、チェックリスト、記録保存、教育、OSPO的機能を組み合わせ、企業価値を守りながらOSSコミュニティとの信頼を築きます。

  • OSS貢献を推奨する基本方針を明文化する。
  • 自社コード、私的貢献、顧客コード、第三者コードを区別する。
  • 小規模貢献を迅速に通す承認マトリクスを作る。
  • CLA、DCO、ライセンス、特許、秘密情報、個人情報、輸出管理、脆弱性を確認する。
  • 開発者が使えるチェックリストとテンプレートを整備する。
  • 記録を保存し、M&A、IPO、監査、顧客説明に備える。
  • 教育とツールにより、ルールを日常業務へ埋め込む。
  • OSPOまたはOSPO的機能を置き、法務と開発の橋渡しをする。
Reference

参考資料

OSS定義・貢献実務

  • Open Source Initiative, The Open Source Definition
  • TODO Group, A Guide to Outbound Open Source Software
  • TODO Group, Open Source Policy Examples and Templates
  • Developer Certificate of Origin 1.1
  • Apache Software Foundation, Contributor Agreements
  • Linux Foundation, Creating an Open Source Program

ライセンス・標準

  • SPDX License List
  • SPDX, Handling License Info
  • ISO/IEC 5962 SPDX Specification V2.2.1
  • Apache License, Version 2.0
  • GNU General Public License v3.0
  • Mozilla MPL 2.0 FAQ
  • OpenChain ISO/IEC 5230 License Compliance
  • OpenChain ISO/IEC 18974 Security Assurance

法令・公的資料

  • e-Gov法令検索 著作権法 第15条等
  • e-Gov法令検索 不正競争防止法 第2条第6項等
  • e-Gov法令検索 特許法 第35条等
  • 経済産業省 安全保障貿易管理 Q&A 技術関連
  • 個人情報保護委員会 漏えい等報告・本人への通知の義務化について

セキュリティ・SBOM・AI

  • NIST SP 800-218 Secure Software Development Framework Version 1.1
  • NTIA The Minimum Elements For a Software Bill of Materials
  • CISA Software Bill of Materials
  • GitHub Copilot 公開説明資料
  • Open Source Initiative, The Open Source AI Definition 1.0