具体的なセキュリティ方針のないシステムは概して穴だらけのシステムになりがちです。
次々と発見されるセキュリティホールに対して常に後追いで、場当たり的な対処で、いつまで経ってもパッチ当てに追われることになります。
Magic3はよりセキュリティを高める考え方や設計思想に基づいて構築されています。
Webサイトは、不正行為の防御や運用監視機能までに至るまで、強力なセキュリティな機能によって防御されます。
Magic3へのアクセスポイント?(実行可能なPHPスクリプトファイル)は必要最小限に押さえ、サイトへの入り口を限定することによって、
システムへの不正アクセスを防止しています。(ディレクトリ構成)
アクセスポイント?を通ったアクセスはすべて監視しています。
問題あるアクセスについては、処理をブロックし、運用ログに記録を残しています。(運用ログの参照?)
POSTされたデータもログに残るので、不正な送信データをチェックすることができます。(アクセスログの参照?)
GETやPOSTで送られたデータはすべて、そのままシステムで扱うのではなく、必ず一旦データ内容をチェックし、
XSS(Cross Site Scripting)の手段となるJavaScript?等を含んだタグや不正なデータを除いてからシステムに渡るようになっています。
問題があるデータを検知したときは、運用ログに記録されます。(運用ログの参照?)
PDOのプリペアードステートメント機能を使ってSQLインジェクション?を防いでいます。(BaseDbクラス?)
SSLを使って通信を暗号化することができます。(SSL機能?)
使用しない機能(ウィジェット)は、ユーザからのアクセスから完全にブロックされます。
また、問題が発生したウィジェットは、サイトの運用を停止することなく、瞬時に取り外すことができます。
(ウィジェットのデプロイ?)
基本的に、DBに格納したすべてのデータの変更は履歴管理されています。
ユーザの間違った操作によるデータ喪失の場合でも再生可能です。
ウィジェットに問題が見つかった場合など、サイト全体の運用は停止しないでそのウィジェットだけを
瞬時に停止することができます。(ウィジェットの管理?)