情報セキュリティにおけるSOA(サービス指向アーキテクチャ)のプライバシーとセキュリティの側面とは?
サービス指向アーキテクチャ(SOA)とは
サービス指向アーキテクチャ(Service-Oriented Architecture:SOA)とは、公開された発見可能なインターフェースを通じて、アプリケーションや他のサービスへ機能を提供するようソフトウェアを設計する手法です。各サービスは、疎結合(通常は非同期)でメッセージ依存型の通信モデルによって、独立したビジネス機能の単位を提供します。
高品質なソフトウェアソリューションや複雑な構造を持つシステムを設計する際には、十分に理解された設計手法・構造設計・設計スタイルに基づく、初期段階でのアーキテクチャ上の意思決定が不可欠です。こうした設計パターンは、スケーラビリティ、信頼性、セキュリティといったサービス全般に共通する課題への対応を可能にします。
サービス指向アーキテクチャには、主に以下のような重要な側面があります。
アーキテクチャモデルと実装モデルの区別
IT専門家がWebサービスを用いてアプリケーションを提供しようとする場合、アーキテクチャモデル(SOA)と実行モデル(Webサービス)の両方に同時に習熟しなければならない状況に陥りがちです。
この課題に対しては、モデル駆動アーキテクチャ(MDA)の手法を活用し、アプリケーションの構造や振る舞いを表すプラットフォーム非依存のモデルと、その振る舞いを実装するための具体的な手法やプラットフォームとを、慎重に混在させないことが重要です。
システムアーキテクトは、ドメイン固有言語(DSL)や統一モデリング言語(UML)のプロファイルを用いて、サービスドメインの問題をモデル化します。このモデルからプラットフォームや言語固有の要素を排除すべきという原則は、実装固有のセキュリティ上の問題もまたモデルから除外することを求めるものです。
セキュリティ課題の再検討
RosettaNetファミリーのB2B標準規格を開発したチームは、前述の内容と同様の懸念を抱き、それらへの対処に向けた第一歩を踏み出しました。その考え方は、ビジネスアーキテクト――RosettaNetチームがデータや処理要件を収集した主要なステークホルダー――に対して、簡素化された選択肢のグループを提示するというものでした。
これらのビジネスアーキテクトはセキュリティ問題の技術的側面には精通していませんでしたが、安全な方法で伝達すべき情報と、セキュリティ対策なしで送信できるデータとを区別することはできました。
セキュリティ課題の一般化
一般的なソフトウェアセキュリティに関する書籍は数多く存在し、特定のセキュリティ実装や技術を扱った文献はさらに多くあります。しかし、セキュリティ関連の技術的実装を支える根本的な意図に着目することが有効です。特に、理解しやすく、かつ具体的な技術的実装を特定するために活用できる、一連の記述的なプリミティブな意図を定義することが可能です。
実装の観点からは、認可(オーソライゼーション)には主に以下の2つのアプローチがあります。
- 個別当事者による認可: 各当事者に対して、機能へのアクセス権限の明示的なセットを割り当てることができます。
- ロール(役割)による認可: アプリケーションごとに複数のロールを作成し、アクセス権限を個々の当事者ではなくロールに割り当てます。各当事者が認証されると、その当事者に付与された資格情報にはロールが含まれており、そのロールによって当該当事者が特定の機能へのアクセスを許可されているかどうかが判定されます。
-
情報セキュリティサービスとは?押さえておきたい5つの主要サービス
情報セキュリティには、システムやデータをさまざまな脅威から守るために、複数の重要なサービスが存在します。本記事では、情報セキュリティを構成する5つの主要なサービスについて、それぞれの役割と特徴をわかりやすく解説します。 1. データの機密性(Confidentiality) 機密性とは、伝送される情報を受動的な攻撃から保護することを指します。情報伝送の内容に関しては、複数のレベルで保護を実現できます。 最も広範なサービスでは、2者の間である期間内に送受信されるすべてのユーザーデータを保護します。例えば、2つのシステム間にTCP接続が確立された場合、この広範な保護により、そのTCP接続上で伝送
-
情報セキュリティにおける復号化の種類とは?仕組みと代表的な3方式を解説
復号化(Decryption)とは、暗号化の逆プロセスであり、暗号文(Cipher Text)を平文(Plain Text)へと変換する手順のことです。受信側では、読み取ることができないメッセージ(暗号文)から元のメッセージを取り出すために、この復号化技術が不可欠となります。 復号化の基本的な仕組み 復号化は、情報を暗号化する際に使用された変換アルゴリズムと逆向きの処理を行うことで機能します。暗号化されたデータを元の状態へ戻すには、暗号化に使ったのと同じ鍵が必要になります。 復号化の過程では、システムが乱雑化された情報を抽出・変換し、人間にとって理解しやすいテキストや画像へと変換します。復号化