Upload
rwsjapan
View
1.530
Download
1
Embed Size (px)
Citation preview
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++ 米国コロラド州ボルダー近郊– 開発者支援のツールを開発 / 販売– 開発をシンプルに 安全で高品質のコードを すばやくお客様のもとへ
お問い合わせは [email protected] へ
61© 2015 Rogue Wave Software, Inc. All Rights Reserved.
61
OSC2015 .Enterprise in 渋谷
ブースでお待ちしております!
62© 2015 Rogue Wave Software, Inc. All Rights Reserved.
62
質疑応答