セキュアなアーキテクチャ、設計、実装を行うためのデザインパターン情報が公開

2009年7月1日

JPCERT コ-ディネーションセンター

政府機関や企業から独立した組織として情報セキュリティ対策活に取り組んでいるJPCERTコーディネーションセンターが、ソフトウェアの脆弱性を減じるための資料「ソフトウエア設計工程における脆弱性低減対策 「セキュアデザインパターン」(日本語版)」(pdf)を公開したと、ITmediaエンタープライズの記事「ソフトウェア設計の安全性を高める技術資料、JPCERT/CCが日本語公開」が伝えています。

ソフトウェアのデザインパターンとは、ソフトウェアの設計をするときに使える設計ノウハウをまとめたものです。有名なものに「ギャング・オブ・フォー」と呼ばれる4人の専門家によってまとめられた書籍「オブジェクト指向における再利用のためのデザインパターン」で紹介された23種類のパターンなどがあります。

この資料ではどんなデザインパターンが紹介されているのか、のぞいてみることにしましょう。

アーキテクチャ、設計、実装に関するデザインパターン

セキュアデザインパターンの表紙

この資料の目的は、ソフトウェア開発のアーキテクチャ、設計、実装のそれぞれのフェーズでのセキュリティ上の課題を解決することだ、というのが「本書の目的」の項目に書かれています。そのため、

セキュアデザインパターンは、システムの上位レベルの設計にかかわるアーキテクチャレベルのパターンから、関数やメソッドの部品を実装する方法のガイダンスを提供する実装レベルのパターンまで、特徴の異なる幅広いレベルのセキュリティ問題に対応する。

と、この資料にはさまざまなレベルのデザインパターンが含まれていることが説明されています。ただし、この資料に書かれたものがセキュリティのためのデザインパターンのすべてではなく、

セキュアデザインパターンのカタログは、将来拡充される予定である。

と、さらに新しいデザインパターンがあってもおかしくないとのこと。以下に、資料に含まれるデザインパターンの紹介を引用します。

アーキテクチャレベルのパターン : アーキテクチャレベルのパターンは、システムの異なる構成要素間の責任配分を抽象度の高いレベルで扱い、構成要素間のやり取りを定義する。本報告書で定義するアーキテクチャレベルのパターンは以下のとおりである。

設計レベルのパターン : 設計レベルのパターンは、システム構成要素をいかに設計し実装するかを記述する。つまり、単一のシステム構成要素の内部設計における問題を対象とする。本報告書で定義する設計レベルのパターンは以下のとおりである。

実装レベルのパターン : 実装レベルのパターンは、抽象度の低い実装寄りのセキュリティ上の課題を対象とする。このクラスにおけるパターンは、一般にシステム内の特定の関数やメソッドの実装に適用できる。実装レベルのパターンは、CERT Secure Coding Standards [CERT 2009a] が対象とする問題と同種の問題を取り上げ、多くの場合、対応するセキュアコーディングのガイドラインに関連付けられている。本報告書で定義する実装レベルのパターンは以下のとおりである。

関連記事 on Publickey

参考記事 on the Web

このエントリーをはてなブックマークに追加
follow us in feedly

カテゴリ 開発ツール / 言語 / プログラミング
タグ  システム開発 , セキュリティ


次の記事
「エコポイント」の申し込み画面はクラウド上に。開発期間わずか1カ月?

前の記事
Linus Torvalds氏が東京にやってくる10月


カテゴリ



Blogger in Chief

photo of jniino Junichi Niino(jniino)
IT系の雑誌編集者、オンラインメディア発行人を経て独立。2009年にPublickeyを開始しました。
詳しいプロフィール

Publickeyの新着情報をチェックしませんか?
Twitterで : @Publickey
Facebookで : Publickeyのページ
RSSリーダーで : Feed



新着記事 10本


PR - Books


fig

fig

fig