DDBMS-分散データベースのセキュリティ

多くのユーザー、多様なデータ、複数のサイト、分散制御があるため、分散システムには集中システムよりも追加のセキュリティ対策が必要です。この章では、分散データベースセキュリティのさまざまな側面について説明します。

分散型通信システムには、2種類の侵入者がいます。

  • Passive eavesdroppers −メッセージを監視し、個人情報を入手します。

  • Active attackers −メッセージを監視するだけでなく、新しいデータを挿入したり、既存のデータを変更したりして、データを破損します。

セキュリティ対策には、通信のセキュリティ、データのセキュリティ、およびデータ監査が含まれます。

通信セキュリティ

分散データベースでは、データ、ユーザー、トランザクションの場所が多様化するため、多くのデータ通信が行われます。そのため、ユーザーとデータベース間、および異なるデータベース環境間の安全な通信が必要です。

通信におけるセキュリティには、次のものが含まれます。

  • 転送中にデータが破損してはなりません。

  • 通信チャネルは、受動的な盗聴者と能動的な攻撃者の両方から保護する必要があります。

  • 上記の要件を達成するには、明確に定義されたセキュリティアルゴリズムとプロトコルを採用する必要があります。

エンドツーエンドの安全な通信を実現するための2つの一般的で一貫性のあるテクノロジーは次のとおりです。

  • セキュアソケットレイヤープロトコルまたはトランスポートレイヤーセキュリティプロトコル。
  • 仮想プライベートネットワーク(VPN)。

データセキュリティ

分散システムでは、通信とは別にデータを保護するための対策を講じることが不可欠です。データセキュリティ対策は次のとおりです。

  • Authentication and authorization−これらは、本物のユーザーのみがデータベースを使用できるようにするために採用されたアクセス制御手段です。認証を提供するために、デジタル証明書が使用されます。また、ログインはユーザー名とパスワードの組み合わせによって制限されます。

  • Data encryption −分散システムにおけるデータ暗号化の2つのアプローチは次のとおりです。

    • 分散データベースアプローチの内部:ユーザーアプリケーションはデータを暗号化してから、暗号化されたデータをデータベースに保存します。保存されたデータを使用するために、アプリケーションは暗号化されたデータをデータベースからフェッチし、それを復号化します。

    • 分散データベースの外部:分散データベースシステムには、独自の暗号化機能があります。ユーザーアプリケーションは、データが暗号化された形式でデータベースに格納されていることに気付かずに、データを格納および取得します。

  • Validated input−このセキュリティ対策では、ユーザーアプリケーションは、データベースの更新に使用する前に、各入力をチェックします。検証されていない入力は、バッファオーバーラン、コマンドインジェクション、クロスサイトスクリプティング、データの破損など、さまざまな悪用を引き起こす可能性があります。

データ監査

データベースセキュリティシステムは、採用すべきセキュリティ対策を確認するために、セキュリティ違反を検出および監視する必要があります。多くの場合、発生時にセキュリティ違反を検出することは非常に困難です。セキュリティ違反を特定する1つの方法は、監査ログを調べることです。監査ログには、次のような情報が含まれます。

  • アクセス試行が失敗した日付、時刻、およびサイト。
  • 成功したアクセス試行の詳細。
  • データベースシステムの重要な変更。
  • 特に複数のサイトのデータベースからの膨大な量のデータへのアクセス。

上記のすべての情報は、データベース内のアクティビティの洞察を提供します。ログの定期的な分析は、その場所と発生時間とともに不自然な活動を特定するのに役立ちます。このログは、攻撃者がアクセスできないように、別のサーバーに保存するのが理想的です。