1© 2015 Rogue Wave Software, Inc. All Rights Reserved. 1
リスクを低減するための
クラウド型OSS管理ツール
OpenLogic
および Zend PHP
ローグウェーブ ソフトウェア
柄澤良和 (からさわよしかず)
2© 2015 Rogue Wave Software, Inc. All Rights Reserved. 2
会社紹介
3© 2015 Rogue Wave Software, Inc. All Rights Reserved. 3
ローグウェーブ
4© 2015 Rogue Wave Software, Inc. All Rights Reserved. 4
ローグウェーブ製品紹介
• 大規模ライブラリ
– 数値計算・統計ライブラリ IMSL
– C++開発支援ライブラリ SourcePro
– 大規模GUI構築ライブラリ
Visualization
• 小粋なツール
– インタラクティブなデータ可視化
PV-WAVE
– MFC/.NET拡張 GUI作成ライブラリ
Stingray
• 動的、静的解析ツール
– HPC向け並列デバッガ TotalView
– GUI並列デバッガ CodeDynamics
– 静的コード解析 Klocwork
• オープンソース
– OSSリスク管理 OpenLogic
– PHP コア技術および開発支援 Zend
• ローグウェーブ、1987年 tools.h++ 米国コロラド州ボルダー近郊
– 開発者支援のツールを開発/販売
– 開発をシンプルに 安全で高品質のコードを すばやくお客様のもとへ
5© 2015 Rogue Wave Software, Inc. All Rights Reserved. 5
ローグウェーブ
日本語ウェブサイト
http://roguewave.jp
本社英語ウェブサイト
http://roguewave.com
6© 2015 Rogue Wave Software, Inc. All Rights Reserved. 6
ローグウェーブ
ブログ
http://blog.roguewave.jp
Twitter
@RWSJapan
7© 2015 Rogue Wave Software, Inc. All Rights Reserved. 7
OSC2015 .Enterprise in 渋谷
8© 2015 Rogue Wave Software, Inc. All Rights Reserved. 8
Agenda
• 会社紹介
• OSSの魅力とリスク
• OSS管理をする必要性
• OLEX
– クラウドによるOSS管理ポータル
– Deep Discovery スキャン技術
– 技術サポート、その他
• PHPとZend製品
• まとめ
9© 2015 Rogue Wave Software, Inc. All Rights Reserved. 9
OSSの魅力とリスク
10© 2015 Rogue Wave Software, Inc. All Rights Reserved. 10
OSSの魅力とリスク
• Gartnerの予測: 2016年までに, 99 %のGlobal 2000 企業がミッションクリティ
カルなソフトウェアでOSSを使用することになる
• It’s everywhere. 携帯電話からテレビ、人工衛星、ミッションクリティカルな企
業システムまで
• イノベーション
– 幅広いコードの選択肢
– 様々な開発者、環境、フレームワーク、任意の組み合わせ。
– 開発のリソースや時間を最適化
– 車輪の再発明からの脱却
• 品質
– 納期に縛られない、多くの眼
• コストや配置の柔軟性、自由、入手しやすさ
• ベンダーロックインからの解放
11© 2015 Rogue Wave Software, Inc. All Rights Reserved. 11
OSSの魅力とリスク
• OSS/FOSS/FLOSS
• It’s Free!
– フリーは無償でなく自由
– 利用可能とコストがかからないのは違う
– オープンソースの使い方が問題
• リスク
– 入手は容易で無償、すばやく市場へ展開できるが、OSSを安全に使う
ための理解を深める必要がある。
– セキュリティ、法的(コンプライアンス)、技術、ビジネス
– 管理方法の確立 (できれば容易で効率的な)
12© 2015 Rogue Wave Software, Inc. All Rights Reserved. 12
ライセンス違反
• コピーレフト
– 複製、改変、使用は自由
– 第3者提供(利用)に制限
– 著作権侵害(民事だけでなく刑事も)
• GPL 違反
– Cisco、東芝、Elecom、VMWare、
MS、…
• Apache、BSD、MIT、…
– 制限の緩いApacheでもライセンス文
のコピーが存在しない、など
13© 2015 Rogue Wave Software, Inc. All Rights Reserved. 13
セキュリティ脆弱性
• 多くの開発者や利用者が関わっていても問題は起こる
– Heartbleed on OpenSSL
– shellshock on Bash
– POODLE on SSL 3.0
• 最近も続々と
• 自分のプロジェクトに関係
あるのか?どうすればよい?
14© 2015 Rogue Wave Software, Inc. All Rights Reserved. 14
ビジネス上のリスク
• ミッションクリティカルな
– ソフトウェアを期限内に納入
– 運用中のシステムにトラブル、予期しない動作
• 提供した商品にライセンス違反があった場合、買い手に「も」損害
– 製品展開の遅延、信用の失墜、損害賠償
• 多数のOSSに対する専門知識と人材をどう確保するか
– 情報の多くは「無料で」手に入るし対応できるが…
15© 2015 Rogue Wave Software, Inc. All Rights Reserved. 15
OSSだけが悪いのか?
• 商用も同様のリスク
• ただしOSSは入手がしやすく使いやすい
– メリットが裏目に
16© 2015 Rogue Wave Software, Inc. All Rights Reserved. 16
管理の必要性
17© 2015 Rogue Wave Software, Inc. All Rights Reserved. 17
管理の必要性
• OSSには様々なメリットがある
• しかし懸念材料も
• しっかりと管理することによって安全に価値を引き出す
18© 2015 Rogue Wave Software, Inc. All Rights Reserved. 18
レストランのたとえ
• 料理が好きで得意
– 新鮮なもの、おいしいもの、便利なもの、半加工品
• レストランを開きたい
• 食材の表示
– 栄養、アレルギー
– 菜食主義
– 食品衛生法
– 偽装
• 調理師免許、条例
– 河豚の肝、生レバー
• ハラール
– 食べても構わないもの。認証
– 宗教、習慣、文化、ポリシー
19© 2015 Rogue Wave Software, Inc. All Rights Reserved. 19
レストランのたとえ
• 販売・提供に対する規制
– 自分だけで食べるなら…
• 第3者に提供する場合には責任が伴う
– 入手した食材の中身を把握していますか?
– どの料理にどの食材が入っていますか?
– 適切な方法で調理をしましたか?
– あなたにその調理の権限はありますか?
20© 2015 Rogue Wave Software, Inc. All Rights Reserved. 20
OSS管理の必要性
• いつ?管理のタイミング
– M&Aのリスク査定
– COTS利用、OEMでサプライヤーから受領する時
– いつでも、定期的に。CI(継続的インテグレーション)
– 新しいプロジェクト開始、新しいOSS利用
• 大量のOSSを少人数で管理できない
• 脆弱性情報や重要な更新が発表されたとき、どのように気づくか?
• どこから?混入の経路
– コミュニティサイトからのダウンロード
– サプライチェーン、内部での開発、過去のコードの再利用、サードパー
ティのコード
– 善意、うっかり、
21© 2015 Rogue Wave Software, Inc. All Rights Reserved. 21
管理の方法
22© 2015 Rogue Wave Software, Inc. All Rights Reserved. 22
具体的にどのように管理すればよいのか
• 在庫の調査
– 自己申告、アンケート?
• 管理
– スプレッドシート?
• ポリシーの作成
– 個々のOSSやライセンスに細かいルールをいちいち作っていられない
• コードベース内のOSSを洗い出し、バグやセキュリティ脆弱性、ライセン
ス違反などの危険から解放する
• 組織内にOSS使用法のコントロールを浸透させる
• OSSのリスクを減らすために、管理用のOSSツールや静的/動的コード解析
を用いる
23© 2015 Rogue Wave Software, Inc. All Rights Reserved. 23
組織内でのオープンソース管理
• 使用状況の把握
– セキュリティの脆弱性にすばやく対応
– 知的財産の訴訟リスクを最低限に抑える
• 正しい使い方の知識
– 開発を進めていくために正しい判断
– 製品をスケジュール通りにリリース
– 技術的問題、ライセンスモデル、セキュリティ上の問題
• リスク管理、ガバナンス
– ポリシー作成、承認・申請手続き
• サポート
– 企業製品同様の専門的で迅速なサポート
24© 2015 Rogue Wave Software, Inc. All Rights Reserved. 24
Step 1: Define
ポリシーを作成する
– 必要性を調査する
– セキュリティ、保守性、サポートやトレーニングなど
– 内部利用か価値を外部に提供するのか
– 利用しているサプライチェーンについて
• サードパーティ製のソフトウェア
• 開発を外部委託した場合
ガバナンス
– 商用利用や取扱い製品についてのガイドライン
– 取得と許可のポリシー、ワークフロー
– オープンソースのコンプライアンス、レビューの担当者を設置
– OSS監査やコンプライアンスについて文書作成
– 業界やサプライチェーンに課せられる義務
25© 2015 Rogue Wave Software, Inc. All Rights Reserved. 25
Step 2: Discover
プロジェクト内に何があるか
– OSSの使用状況
– ライセンスやコンプライアンス: 二次利用、コピーレフトの強さ
– オープンソース内のオープンソースに注意
アプリケーション内のオープンソース
– 埋め込まれたOSSプロジェクト、ファイル、コード断片
– バイナリとソースコード双方をスキャン
– 状況に応じてリアルタイムに更新
– ライセンスやコピーライト/レフト情報を明らかにする
公開と義務条項を判断する
– リスクに備えて現在のオープンソースの在庫を分析する
– 内部利用と外部利用のポリシー、法令遵守
26© 2015 Rogue Wave Software, Inc. All Rights Reserved. 26
Step 3: Deploy
現状をオープンソース査定
– ベースラインと現状の差分スキャン
– 継続的インテグレーション(CI)と継続的ビルド
– 安全なオープンソースリポジトリ
– オープンソースのポリシーとコンプライアンスを反映
– バージョンアップやセキュリティ更新に対して積極的にアプローチ
サポート、メンテナンス
– セキュリティリスクと更新情報をモニター
– 誰があなたのオープンソースコードの面倒を見るのか?
– 継続的な開発 – 組織変更などがあったとしても
– 製品開発の下流側でITアプリケーションの利用状況と管理
27© 2015 Rogue Wave Software, Inc. All Rights Reserved. 27
管理システムの条件
• 柔軟性、堅牢性
– 組織ごとの特性、ワークフロー
– メンバーの異動など様々な状況変化
– 開発拠点の多様化。地理的分散
• 容易さ
– 少人数で大規模なシステムを管理
– システム用のハードウェア/ソフトウェアをメンテナンス
– 常に最新のデータベース
– 自動化、継続的インテグレーション
28© 2015 Rogue Wave Software, Inc. All Rights Reserved. 28
OpenLogic OLEX
29© 2015 Rogue Wave Software, Inc. All Rights Reserved. 29
OpenLogicとは
• Founded by Rod Cope in 1998
• 2013年秋にローグウェーブに合流
• OSSに関するリスク管理
– 安心してOSSの魅力を活用できる
• SaaS(クラウド)の管理ツール OLEX
– すぐに開始、柔軟でスケーラブルな運用
• ガバナンス
– スキャン、ライセンスのコンプライアンス、認証済みライブラリ
• Audit (監査)、サポート、CentOS、AzureやAWS
• 適用業界
– リスクプロファイルを扱う金融
– コンプライアンスが重要なソフトウェアベンダー
– M&A活動
30© 2015 Rogue Wave Software, Inc. All Rights Reserved. 30
OpenLogic OLEXの不思議
• すぐにサービスを始められます。
• どんなOSSがコードベースのどこにあるのかを洗い出します。
• そのOSSの種類や使用箇所をクラウド上で示します。
• 開発中のコードは組織の外に出ることはありません。
• ソースコードのどの部分がOSSを使っているのか比較して示します。
• どうやって可能なのか?
31© 2015 Rogue Wave Software, Inc. All Rights Reserved. 31
OLEXによるOSS管理
• コードは指紋情報としてハッシュ化かつ暗号化されて送信されるため、知財情報が外部に出ることはありません。
• クラウドで一元管理されているため、柔軟なポリシー設定や運用が可能です。開発拠点が分散していても一括管理できます。
32© 2015 Rogue Wave Software, Inc. All Rights Reserved. 32
Deep Discovery スキャニング
1. OLEXからJavaアプリを
ダウンロード
2. フォルダを指定してス
キャン
3. 暗号化された結果がバッ
クグラウンドでOLEXへ
4. OLEX上で結果を表示
33© 2015 Rogue Wave Software, Inc. All Rights Reserved. 33
Deep Discovery スキャニング
• コードは組織から外には出ないがOSSを検出
• ハッシュ化、暗号化、安全なデータセンター
• 少ないノイズでかつ高速に、安全に
• 多くのオープンソース技術を使用
• たとえば
– 単語がデータベースに存在するかどうか高速にチェックするフィルタ
– クラスタリングや件数表示を行う検索システム
– 分散ストレージシステム
• コードを外部に出さずにOSSの所在を確定するためのトリック
34© 2015 Rogue Wave Software, Inc. All Rights Reserved. 34
クラウドの利点
• 常に最新のデータベースとプラットフォーム
• インストール不要ですぐに開始できる
• ハードやセキュリティなどの管理の手間が不要
• 拠点が分散していても使える
• セキュア
• 最新のデータベース
35© 2015 Rogue Wave Software, Inc. All Rights Reserved. 35
自動化
• RESTfulなAPI
• xml, jsonでやりとり可能
– パッケージのバージョン情
報、脆弱性情報などを取得
• 豊富なドキュメント(ログインが
必要)
36© 2015 Rogue Wave Software, Inc. All Rights Reserved. 36
スキャン結果
OSSの在庫一覧
サマリー表示
ツリー表示
リスト表示
37© 2015 Rogue Wave Software, Inc. All Rights Reserved. 37
スキャン結果
セキュリティ脆弱性リスク
38© 2015 Rogue Wave Software, Inc. All Rights Reserved. 38
ポリシーの設定
柔軟性:
• ホワイトリスト
• ブラックリスト
• 申請の承認
許可/却下するライ
センスやパッケー
ジを調整
39© 2015 Rogue Wave Software, Inc. All Rights Reserved. 39
申請のワークフロー
申請理由
管理者が許可/
却下
40© 2015 Rogue Wave Software, Inc. All Rights Reserved. 40
スキャン実行
• 設定
• 対象フォルダを指定
• 結果を待つ
41© 2015 Rogue Wave Software, Inc. All Rights Reserved. 41
スキャン結果 サマリ
脆弱性情報
検出された
OSS
検出されたライセンス
OSS ライセンス義
務
42© 2015 Rogue Wave Software, Inc. All Rights Reserved. 42
脆弱性情報 (NVD Alerts)
NVD情報のある
パッケージを
ハイライト
ワンクリックで
脆弱性情報の
詳細を表示
43© 2015 Rogue Wave Software, Inc. All Rights Reserved. 43
ライセンス使用状況
ポリシーに
抵触
ライセンス
違反
44© 2015 Rogue Wave Software, Inc. All Rights Reserved. 44
サポートダッシュボード
様々なレベルの
サポート
ダッシュボード
からサポートの
依頼が可能
オープンな
チケットの状況
を確認
45© 2015 Rogue Wave Software, Inc. All Rights Reserved. 45
サポートチケットのワークフロー
連絡先 詳細
パッケージと
バージョン情報
実行環境
問題点、深刻度
添付ファイル
46© 2015 Rogue Wave Software, Inc. All Rights Reserved. 46
コードの比較
• OSS情報はOLEX上
• コードは組織から
出ていない
ユーザーのコード 検出されたOSS
47© 2015 Rogue Wave Software, Inc. All Rights Reserved. 47
Audit (監査)
• 在庫調査
– アンケート
– 専門家によるスキャン
• 使用状況を解説
– 含まれているOSSの明細
– ライセンスの種類、規約
– 使用方法やポリシー作成を
アドバイス
• ガバナンス導入のための最初のステップ
48© 2015 Rogue Wave Software, Inc. All Rights Reserved. 48
OSS技術サポート、コンサルティング
• 使用頻度の高い数百のOSS製品に対して企業レベルのサポート
– Apache、Tomcat、JBoss、MySQL、ActiveMQ、PostgreSQL、
CentOS
• Tier 2/3 の専門家(技術、アーキテクチャ、システム管理)が直接対応
• プロフェッショナルサービス
– アーキテクチャのレビューや移植の助言、主要製品の使用方法へのト
レーニング
– 性能チューニング、アーキテクチャのレビュー
– 製品のアップデートや脆弱性の情報はOLEXに掲載
– 定期的に通知するサービスも付属
49© 2015 Rogue Wave Software, Inc. All Rights Reserved. 49
サポート on Azure & AWS
Support for Linux images
in Microsoft Azure
• すぐに使用できるスタック
(例: CentOS + MySQL)
50© 2015 Rogue Wave Software, Inc. All Rights Reserved. 50
OpenLogic
51© 2015 Rogue Wave Software, Inc. All Rights Reserved. 51
話題は変わって
52© 2015 Rogue Wave Software, Inc. All Rights Reserved. 52
elePHPant
53© 2015 Rogue Wave Software, Inc. All Rights Reserved. 53
PHP
• OOPの汎用スクリプト言語
– PHP: Hypertext Preprocessor (もとは Personal Home Page)
– オープンソース
• HTMLに直接埋め込み可能
• 1995年 今年で20年
– JavaScript、Rubyと同年
• 最も広く使われているサーバサイド言語
– MediaWiki、PukiWiki、phpBB、
– WordPress、Drupal、Magento
54© 2015 Rogue Wave Software, Inc. All Rights Reserved. 54
PHP
ウェブ開発で根強い人気
55© 2015 Rogue Wave Software, Inc. All Rights Reserved. 55
PHP
• PHP7.0リリース! 12月3日
– PHP 5.6 が2014年8月
– PHP 5 in 2004以来最大の変更
– php 6 はスキップ
• PHPNG (Next-Gen)エンジン採用
– 2倍高速、実アプリで25%-75% 高速化
– メモリ消費50%
56© 2015 Rogue Wave Software, Inc. All Rights Reserved. 56
PHPは危険?
2007年頃、IPAの「セキュアプログラミング講座」 2015年現在、IPAの「セキュアプログラミング講座」
57© 2015 Rogue Wave Software, Inc. All Rights Reserved. 57
Zendの製品
• 創設者 Andi GutmansとZeev Suraski
オープンソース
• PHP NG engine (core of PHP 7)
• Zend Framework 3
– PHPの中核
• Apigility
– Web API構築
– RPC、RESTful
• Eclipse PDT for PHP
(#1 OSS IDE for PHP)
58© 2015 Rogue Wave Software, Inc. All Rights Reserved. 58
Zendの製品
商用
• Zend server
– PHPの実行、ウェブサイトのステージング、デプロイ、クラスタリング
– 継続的インテグレーション
• Z-ray
– Zend Serverのプラグイン。X-rayゴーグル。
– モニタリング、プロファイル、デバッグ
• Zend Guard
– 商用製品のためのセキュリティ。難読化、ライセンス管理機構
• Zend Studio
– PHP IDE
– デバッグ、モバイル用サイト
– Docker、Git、PHP7移行
– AWS、Azure
59© 2015 Rogue Wave Software, Inc. All Rights Reserved. 59
まとめ
• OSSと商用製品の違い
– ない。よいものはよい、悪いものは悪い
• 入手や個人利用は無償
– ただし商用サービスや開発支援の製品を使うほうが正しくかつ効率的
に結果を出せる
• OSSか商用かにこだわらず、結果に役立つ良いものを選び使いましょう。
ローグウェーブはどちらも提供します
60© 2015 Rogue Wave Software, Inc. All Rights Reserved. 60
会社紹介、製品紹介
• 大規模ライブラリ
– 数値計算・統計ライブラリ IMSL
– C++開発支援ライブラリ SourcePro
– 大規模GUI構築ライブラリ
Visualization
• 小粋なツール
– インタラクティブなデータ可視化
PV-WAVE
– MFC/.NET拡張 GUI作成ライブラリ
Stingray
• 動的、静的解析ツール
– HPC向け並列デバッガ TotalView
– GUI並列デバッガ CodeDynamics
– 静的コード解析 Klocwork
• オープンソース
– OSSリスク管理 OpenLogic
– PHP コア技術および開発支援 Zend
• ローグウェーブ、1987年 tools.h++ 米国コロラド州ボルダー近郊
– 開発者支援のツールを開発/販売
– 開発をシンプルに 安全で高品質のコードを すばやくお客様のもとへ
お問い合わせは sales@roguewave.jp へ
61© 2015 Rogue Wave Software, Inc. All Rights Reserved. 61
OSC2015 .Enterprise in 渋谷
62© 2015 Rogue Wave Software, Inc. All Rights Reserved. 62
質疑応答

リスクを低減するためのクラウド型OSS管理ツールOpenLogic および Zend PHP

  • 1.
    1© 2015 RogueWave Software, Inc. All Rights Reserved. 1 リスクを低減するための クラウド型OSS管理ツール OpenLogic および Zend PHP ローグウェーブ ソフトウェア 柄澤良和 (からさわよしかず)
  • 2.
    2© 2015 RogueWave Software, Inc. All Rights Reserved. 2 会社紹介
  • 3.
    3© 2015 RogueWave Software, Inc. All Rights Reserved. 3 ローグウェーブ
  • 4.
    4© 2015 RogueWave Software, Inc. All Rights Reserved. 4 ローグウェーブ製品紹介 • 大規模ライブラリ – 数値計算・統計ライブラリ IMSL – C++開発支援ライブラリ SourcePro – 大規模GUI構築ライブラリ Visualization • 小粋なツール – インタラクティブなデータ可視化 PV-WAVE – MFC/.NET拡張 GUI作成ライブラリ Stingray • 動的、静的解析ツール – HPC向け並列デバッガ TotalView – GUI並列デバッガ CodeDynamics – 静的コード解析 Klocwork • オープンソース – OSSリスク管理 OpenLogic – PHP コア技術および開発支援 Zend • ローグウェーブ、1987年 tools.h++ 米国コロラド州ボルダー近郊 – 開発者支援のツールを開発/販売 – 開発をシンプルに 安全で高品質のコードを すばやくお客様のもとへ
  • 5.
    5© 2015 RogueWave Software, Inc. All Rights Reserved. 5 ローグウェーブ 日本語ウェブサイト http://roguewave.jp 本社英語ウェブサイト http://roguewave.com
  • 6.
    6© 2015 RogueWave Software, Inc. All Rights Reserved. 6 ローグウェーブ ブログ http://blog.roguewave.jp Twitter @RWSJapan
  • 7.
    7© 2015 RogueWave Software, Inc. All Rights Reserved. 7 OSC2015 .Enterprise in 渋谷
  • 8.
    8© 2015 RogueWave Software, Inc. All Rights Reserved. 8 Agenda • 会社紹介 • OSSの魅力とリスク • OSS管理をする必要性 • OLEX – クラウドによるOSS管理ポータル – Deep Discovery スキャン技術 – 技術サポート、その他 • PHPとZend製品 • まとめ
  • 9.
    9© 2015 RogueWave Software, Inc. All Rights Reserved. 9 OSSの魅力とリスク
  • 10.
    10© 2015 RogueWave Software, Inc. All Rights Reserved. 10 OSSの魅力とリスク • Gartnerの予測: 2016年までに, 99 %のGlobal 2000 企業がミッションクリティ カルなソフトウェアでOSSを使用することになる • It’s everywhere. 携帯電話からテレビ、人工衛星、ミッションクリティカルな企 業システムまで • イノベーション – 幅広いコードの選択肢 – 様々な開発者、環境、フレームワーク、任意の組み合わせ。 – 開発のリソースや時間を最適化 – 車輪の再発明からの脱却 • 品質 – 納期に縛られない、多くの眼 • コストや配置の柔軟性、自由、入手しやすさ • ベンダーロックインからの解放
  • 11.
    11© 2015 RogueWave Software, Inc. All Rights Reserved. 11 OSSの魅力とリスク • OSS/FOSS/FLOSS • It’s Free! – フリーは無償でなく自由 – 利用可能とコストがかからないのは違う – オープンソースの使い方が問題 • リスク – 入手は容易で無償、すばやく市場へ展開できるが、OSSを安全に使う ための理解を深める必要がある。 – セキュリティ、法的(コンプライアンス)、技術、ビジネス – 管理方法の確立 (できれば容易で効率的な)
  • 12.
    12© 2015 RogueWave Software, Inc. All Rights Reserved. 12 ライセンス違反 • コピーレフト – 複製、改変、使用は自由 – 第3者提供(利用)に制限 – 著作権侵害(民事だけでなく刑事も) • GPL 違反 – Cisco、東芝、Elecom、VMWare、 MS、… • Apache、BSD、MIT、… – 制限の緩いApacheでもライセンス文 のコピーが存在しない、など
  • 13.
    13© 2015 RogueWave Software, Inc. All Rights Reserved. 13 セキュリティ脆弱性 • 多くの開発者や利用者が関わっていても問題は起こる – Heartbleed on OpenSSL – shellshock on Bash – POODLE on SSL 3.0 • 最近も続々と • 自分のプロジェクトに関係 あるのか?どうすればよい?
  • 14.
    14© 2015 RogueWave Software, Inc. All Rights Reserved. 14 ビジネス上のリスク • ミッションクリティカルな – ソフトウェアを期限内に納入 – 運用中のシステムにトラブル、予期しない動作 • 提供した商品にライセンス違反があった場合、買い手に「も」損害 – 製品展開の遅延、信用の失墜、損害賠償 • 多数のOSSに対する専門知識と人材をどう確保するか – 情報の多くは「無料で」手に入るし対応できるが…
  • 15.
    15© 2015 RogueWave Software, Inc. All Rights Reserved. 15 OSSだけが悪いのか? • 商用も同様のリスク • ただしOSSは入手がしやすく使いやすい – メリットが裏目に
  • 16.
    16© 2015 RogueWave Software, Inc. All Rights Reserved. 16 管理の必要性
  • 17.
    17© 2015 RogueWave Software, Inc. All Rights Reserved. 17 管理の必要性 • OSSには様々なメリットがある • しかし懸念材料も • しっかりと管理することによって安全に価値を引き出す
  • 18.
    18© 2015 RogueWave Software, Inc. All Rights Reserved. 18 レストランのたとえ • 料理が好きで得意 – 新鮮なもの、おいしいもの、便利なもの、半加工品 • レストランを開きたい • 食材の表示 – 栄養、アレルギー – 菜食主義 – 食品衛生法 – 偽装 • 調理師免許、条例 – 河豚の肝、生レバー • ハラール – 食べても構わないもの。認証 – 宗教、習慣、文化、ポリシー
  • 19.
    19© 2015 RogueWave Software, Inc. All Rights Reserved. 19 レストランのたとえ • 販売・提供に対する規制 – 自分だけで食べるなら… • 第3者に提供する場合には責任が伴う – 入手した食材の中身を把握していますか? – どの料理にどの食材が入っていますか? – 適切な方法で調理をしましたか? – あなたにその調理の権限はありますか?
  • 20.
    20© 2015 RogueWave Software, Inc. All Rights Reserved. 20 OSS管理の必要性 • いつ?管理のタイミング – M&Aのリスク査定 – COTS利用、OEMでサプライヤーから受領する時 – いつでも、定期的に。CI(継続的インテグレーション) – 新しいプロジェクト開始、新しいOSS利用 • 大量のOSSを少人数で管理できない • 脆弱性情報や重要な更新が発表されたとき、どのように気づくか? • どこから?混入の経路 – コミュニティサイトからのダウンロード – サプライチェーン、内部での開発、過去のコードの再利用、サードパー ティのコード – 善意、うっかり、
  • 21.
    21© 2015 RogueWave Software, Inc. All Rights Reserved. 21 管理の方法
  • 22.
    22© 2015 RogueWave Software, Inc. All Rights Reserved. 22 具体的にどのように管理すればよいのか • 在庫の調査 – 自己申告、アンケート? • 管理 – スプレッドシート? • ポリシーの作成 – 個々のOSSやライセンスに細かいルールをいちいち作っていられない • コードベース内のOSSを洗い出し、バグやセキュリティ脆弱性、ライセン ス違反などの危険から解放する • 組織内にOSS使用法のコントロールを浸透させる • OSSのリスクを減らすために、管理用のOSSツールや静的/動的コード解析 を用いる
  • 23.
    23© 2015 RogueWave Software, Inc. All Rights Reserved. 23 組織内でのオープンソース管理 • 使用状況の把握 – セキュリティの脆弱性にすばやく対応 – 知的財産の訴訟リスクを最低限に抑える • 正しい使い方の知識 – 開発を進めていくために正しい判断 – 製品をスケジュール通りにリリース – 技術的問題、ライセンスモデル、セキュリティ上の問題 • リスク管理、ガバナンス – ポリシー作成、承認・申請手続き • サポート – 企業製品同様の専門的で迅速なサポート
  • 24.
    24© 2015 RogueWave Software, Inc. All Rights Reserved. 24 Step 1: Define ポリシーを作成する – 必要性を調査する – セキュリティ、保守性、サポートやトレーニングなど – 内部利用か価値を外部に提供するのか – 利用しているサプライチェーンについて • サードパーティ製のソフトウェア • 開発を外部委託した場合 ガバナンス – 商用利用や取扱い製品についてのガイドライン – 取得と許可のポリシー、ワークフロー – オープンソースのコンプライアンス、レビューの担当者を設置 – OSS監査やコンプライアンスについて文書作成 – 業界やサプライチェーンに課せられる義務
  • 25.
    25© 2015 RogueWave Software, Inc. All Rights Reserved. 25 Step 2: Discover プロジェクト内に何があるか – OSSの使用状況 – ライセンスやコンプライアンス: 二次利用、コピーレフトの強さ – オープンソース内のオープンソースに注意 アプリケーション内のオープンソース – 埋め込まれたOSSプロジェクト、ファイル、コード断片 – バイナリとソースコード双方をスキャン – 状況に応じてリアルタイムに更新 – ライセンスやコピーライト/レフト情報を明らかにする 公開と義務条項を判断する – リスクに備えて現在のオープンソースの在庫を分析する – 内部利用と外部利用のポリシー、法令遵守
  • 26.
    26© 2015 RogueWave Software, Inc. All Rights Reserved. 26 Step 3: Deploy 現状をオープンソース査定 – ベースラインと現状の差分スキャン – 継続的インテグレーション(CI)と継続的ビルド – 安全なオープンソースリポジトリ – オープンソースのポリシーとコンプライアンスを反映 – バージョンアップやセキュリティ更新に対して積極的にアプローチ サポート、メンテナンス – セキュリティリスクと更新情報をモニター – 誰があなたのオープンソースコードの面倒を見るのか? – 継続的な開発 – 組織変更などがあったとしても – 製品開発の下流側でITアプリケーションの利用状況と管理
  • 27.
    27© 2015 RogueWave Software, Inc. All Rights Reserved. 27 管理システムの条件 • 柔軟性、堅牢性 – 組織ごとの特性、ワークフロー – メンバーの異動など様々な状況変化 – 開発拠点の多様化。地理的分散 • 容易さ – 少人数で大規模なシステムを管理 – システム用のハードウェア/ソフトウェアをメンテナンス – 常に最新のデータベース – 自動化、継続的インテグレーション
  • 28.
    28© 2015 RogueWave Software, Inc. All Rights Reserved. 28 OpenLogic OLEX
  • 29.
    29© 2015 RogueWave Software, Inc. All Rights Reserved. 29 OpenLogicとは • Founded by Rod Cope in 1998 • 2013年秋にローグウェーブに合流 • OSSに関するリスク管理 – 安心してOSSの魅力を活用できる • SaaS(クラウド)の管理ツール OLEX – すぐに開始、柔軟でスケーラブルな運用 • ガバナンス – スキャン、ライセンスのコンプライアンス、認証済みライブラリ • Audit (監査)、サポート、CentOS、AzureやAWS • 適用業界 – リスクプロファイルを扱う金融 – コンプライアンスが重要なソフトウェアベンダー – M&A活動
  • 30.
    30© 2015 RogueWave Software, Inc. All Rights Reserved. 30 OpenLogic OLEXの不思議 • すぐにサービスを始められます。 • どんなOSSがコードベースのどこにあるのかを洗い出します。 • そのOSSの種類や使用箇所をクラウド上で示します。 • 開発中のコードは組織の外に出ることはありません。 • ソースコードのどの部分がOSSを使っているのか比較して示します。 • どうやって可能なのか?
  • 31.
    31© 2015 RogueWave Software, Inc. All Rights Reserved. 31 OLEXによるOSS管理 • コードは指紋情報としてハッシュ化かつ暗号化されて送信されるため、知財情報が外部に出ることはありません。 • クラウドで一元管理されているため、柔軟なポリシー設定や運用が可能です。開発拠点が分散していても一括管理できます。
  • 32.
    32© 2015 RogueWave Software, Inc. All Rights Reserved. 32 Deep Discovery スキャニング 1. OLEXからJavaアプリを ダウンロード 2. フォルダを指定してス キャン 3. 暗号化された結果がバッ クグラウンドでOLEXへ 4. OLEX上で結果を表示
  • 33.
    33© 2015 RogueWave Software, Inc. All Rights Reserved. 33 Deep Discovery スキャニング • コードは組織から外には出ないがOSSを検出 • ハッシュ化、暗号化、安全なデータセンター • 少ないノイズでかつ高速に、安全に • 多くのオープンソース技術を使用 • たとえば – 単語がデータベースに存在するかどうか高速にチェックするフィルタ – クラスタリングや件数表示を行う検索システム – 分散ストレージシステム • コードを外部に出さずにOSSの所在を確定するためのトリック
  • 34.
    34© 2015 RogueWave Software, Inc. All Rights Reserved. 34 クラウドの利点 • 常に最新のデータベースとプラットフォーム • インストール不要ですぐに開始できる • ハードやセキュリティなどの管理の手間が不要 • 拠点が分散していても使える • セキュア • 最新のデータベース
  • 35.
    35© 2015 RogueWave Software, Inc. All Rights Reserved. 35 自動化 • RESTfulなAPI • xml, jsonでやりとり可能 – パッケージのバージョン情 報、脆弱性情報などを取得 • 豊富なドキュメント(ログインが 必要)
  • 36.
    36© 2015 RogueWave Software, Inc. All Rights Reserved. 36 スキャン結果 OSSの在庫一覧 サマリー表示 ツリー表示 リスト表示
  • 37.
    37© 2015 RogueWave Software, Inc. All Rights Reserved. 37 スキャン結果 セキュリティ脆弱性リスク
  • 38.
    38© 2015 RogueWave Software, Inc. All Rights Reserved. 38 ポリシーの設定 柔軟性: • ホワイトリスト • ブラックリスト • 申請の承認 許可/却下するライ センスやパッケー ジを調整
  • 39.
    39© 2015 RogueWave Software, Inc. All Rights Reserved. 39 申請のワークフロー 申請理由 管理者が許可/ 却下
  • 40.
    40© 2015 RogueWave Software, Inc. All Rights Reserved. 40 スキャン実行 • 設定 • 対象フォルダを指定 • 結果を待つ
  • 41.
    41© 2015 RogueWave Software, Inc. All Rights Reserved. 41 スキャン結果 サマリ 脆弱性情報 検出された OSS 検出されたライセンス OSS ライセンス義 務
  • 42.
    42© 2015 RogueWave Software, Inc. All Rights Reserved. 42 脆弱性情報 (NVD Alerts) NVD情報のある パッケージを ハイライト ワンクリックで 脆弱性情報の 詳細を表示
  • 43.
    43© 2015 RogueWave Software, Inc. All Rights Reserved. 43 ライセンス使用状況 ポリシーに 抵触 ライセンス 違反
  • 44.
    44© 2015 RogueWave Software, Inc. All Rights Reserved. 44 サポートダッシュボード 様々なレベルの サポート ダッシュボード からサポートの 依頼が可能 オープンな チケットの状況 を確認
  • 45.
    45© 2015 RogueWave Software, Inc. All Rights Reserved. 45 サポートチケットのワークフロー 連絡先 詳細 パッケージと バージョン情報 実行環境 問題点、深刻度 添付ファイル
  • 46.
    46© 2015 RogueWave Software, Inc. All Rights Reserved. 46 コードの比較 • OSS情報はOLEX上 • コードは組織から 出ていない ユーザーのコード 検出されたOSS
  • 47.
    47© 2015 RogueWave Software, Inc. All Rights Reserved. 47 Audit (監査) • 在庫調査 – アンケート – 専門家によるスキャン • 使用状況を解説 – 含まれているOSSの明細 – ライセンスの種類、規約 – 使用方法やポリシー作成を アドバイス • ガバナンス導入のための最初のステップ
  • 48.
    48© 2015 RogueWave Software, Inc. All Rights Reserved. 48 OSS技術サポート、コンサルティング • 使用頻度の高い数百のOSS製品に対して企業レベルのサポート – Apache、Tomcat、JBoss、MySQL、ActiveMQ、PostgreSQL、 CentOS • Tier 2/3 の専門家(技術、アーキテクチャ、システム管理)が直接対応 • プロフェッショナルサービス – アーキテクチャのレビューや移植の助言、主要製品の使用方法へのト レーニング – 性能チューニング、アーキテクチャのレビュー – 製品のアップデートや脆弱性の情報はOLEXに掲載 – 定期的に通知するサービスも付属
  • 49.
    49© 2015 RogueWave Software, Inc. All Rights Reserved. 49 サポート on Azure & AWS Support for Linux images in Microsoft Azure • すぐに使用できるスタック (例: CentOS + MySQL)
  • 50.
    50© 2015 RogueWave Software, Inc. All Rights Reserved. 50 OpenLogic
  • 51.
    51© 2015 RogueWave Software, Inc. All Rights Reserved. 51 話題は変わって
  • 52.
    52© 2015 RogueWave Software, Inc. All Rights Reserved. 52 elePHPant
  • 53.
    53© 2015 RogueWave Software, Inc. All Rights Reserved. 53 PHP • OOPの汎用スクリプト言語 – PHP: Hypertext Preprocessor (もとは Personal Home Page) – オープンソース • HTMLに直接埋め込み可能 • 1995年 今年で20年 – JavaScript、Rubyと同年 • 最も広く使われているサーバサイド言語 – MediaWiki、PukiWiki、phpBB、 – WordPress、Drupal、Magento
  • 54.
    54© 2015 RogueWave Software, Inc. All Rights Reserved. 54 PHP ウェブ開発で根強い人気
  • 55.
    55© 2015 RogueWave Software, Inc. All Rights Reserved. 55 PHP • PHP7.0リリース! 12月3日 – PHP 5.6 が2014年8月 – PHP 5 in 2004以来最大の変更 – php 6 はスキップ • PHPNG (Next-Gen)エンジン採用 – 2倍高速、実アプリで25%-75% 高速化 – メモリ消費50%
  • 56.
    56© 2015 RogueWave Software, Inc. All Rights Reserved. 56 PHPは危険? 2007年頃、IPAの「セキュアプログラミング講座」 2015年現在、IPAの「セキュアプログラミング講座」
  • 57.
    57© 2015 RogueWave Software, Inc. All Rights Reserved. 57 Zendの製品 • 創設者 Andi GutmansとZeev Suraski オープンソース • PHP NG engine (core of PHP 7) • Zend Framework 3 – PHPの中核 • Apigility – Web API構築 – RPC、RESTful • Eclipse PDT for PHP (#1 OSS IDE for PHP)
  • 58.
    58© 2015 RogueWave Software, Inc. All Rights Reserved. 58 Zendの製品 商用 • Zend server – PHPの実行、ウェブサイトのステージング、デプロイ、クラスタリング – 継続的インテグレーション • Z-ray – Zend Serverのプラグイン。X-rayゴーグル。 – モニタリング、プロファイル、デバッグ • Zend Guard – 商用製品のためのセキュリティ。難読化、ライセンス管理機構 • Zend Studio – PHP IDE – デバッグ、モバイル用サイト – Docker、Git、PHP7移行 – AWS、Azure
  • 59.
    59© 2015 RogueWave Software, Inc. All Rights Reserved. 59 まとめ • OSSと商用製品の違い – ない。よいものはよい、悪いものは悪い • 入手や個人利用は無償 – ただし商用サービスや開発支援の製品を使うほうが正しくかつ効率的 に結果を出せる • OSSか商用かにこだわらず、結果に役立つ良いものを選び使いましょう。 ローグウェーブはどちらも提供します
  • 60.
    60© 2015 RogueWave Software, Inc. All Rights Reserved. 60 会社紹介、製品紹介 • 大規模ライブラリ – 数値計算・統計ライブラリ IMSL – C++開発支援ライブラリ SourcePro – 大規模GUI構築ライブラリ Visualization • 小粋なツール – インタラクティブなデータ可視化 PV-WAVE – MFC/.NET拡張 GUI作成ライブラリ Stingray • 動的、静的解析ツール – HPC向け並列デバッガ TotalView – GUI並列デバッガ CodeDynamics – 静的コード解析 Klocwork • オープンソース – OSSリスク管理 OpenLogic – PHP コア技術および開発支援 Zend • ローグウェーブ、1987年 tools.h++ 米国コロラド州ボルダー近郊 – 開発者支援のツールを開発/販売 – 開発をシンプルに 安全で高品質のコードを すばやくお客様のもとへ お問い合わせは sales@roguewave.jp へ
  • 61.
    61© 2015 RogueWave Software, Inc. All Rights Reserved. 61 OSC2015 .Enterprise in 渋谷
  • 62.
    62© 2015 RogueWave Software, Inc. All Rights Reserved. 62 質疑応答