セキュリティに関する基本的なヒントを開発者や管理者に提供することを目的としています。アプリケーションのセキュリティを確保するためには、このページで説明するヒントだけでは十分でない可能性があることに留意してください。サーバーに採用されています。フレームワーク機能が言語に組み込まれています。プログラミングのセキュリティに寄与しています。すべて考慮する必要があります。アプリケーションを安易に記述してしまいがちです。安全に使用するためには、その潜在的な危険性をすべて把握しておく必要があります。型指定に関してルーズです。不適切な型のデータがしかるべき型に自動変換されます。(例については下記の「入力処理」を参照)。暗黙の型変換を行わない関数および演算子を使うようにします。(より大きい、より小さいなど)。型指定の弱い比較関数が既定で使用されます。このことが適切なコードの記述を困難にしています。このため、欠陥のあるコードでも実行を続けることが可能です。この結果として、多くのバグが覆い隠されてしまいます。競合する他の多くの言語とほとんどの高級言語では、開発者のミスや、開発者が予測できなかった実行時エラーが原因でエラー状態になると、プログラムは実行を停止します。これが最も安全な対応です。次のコードを見てみましょう。このコードは、ユーザー名がブラックリストに含まれているかどうかを確認するデータベースクエリを使用して、特定の機能へのアクセスを制限します。機能のコードをここに記述します。このコードでは、さまざまな実行時エラーが発生する可能性があります。パスワードの誤りやサーバーの停止などによってデータベース接続が失敗したり、クライアント側で開かれた接続が、その後サーバーによって閉じられたりする場合があります。関数群は警告か通知を発しますが、例外や致命的エラーはスローしません。コードはそのまま続行するのです。