JS を使用してページをレンダリングし、セキュリティ機能を実装する必要がある場合は、次のようになります。
var userID = getUserID();
if (userID == 1) {
html += renderDeleteButton();
}
しかし、ユーザーはデバッガーを開いて userID の値を変更することはできませんか?
JS を使用してページをレンダリングし、セキュリティ機能を実装する必要がある場合は、次のようになります。
var userID = getUserID();
if (userID == 1) {
html += renderDeleteButton();
}
しかし、ユーザーはデバッガーを開いて userID の値を変更することはできませんか?
はい、そうします。JS を使用すると、ユーザーは自分のやりたいことを何でも実行できます。これが、ユーザーが変更できないため、サーバー側のコード (PHP / ASP / など) にセキュリティ関連のものを配置する必要がある理由です。
JS などのクライアント側スクリプトからは何も信用しないでください。すべてのクライアント側スクリプトは、ユーザーが操作できます。セキュリティで保護されたタイプのコードはすべて、サーバー サイド スクリプト内に存在する必要があります。
JavaScript での検証/セキュリティ チェックは常に、ユーザーがサーバーに行ったり戻ったりする時間を節約するためにのみ行われます。それらは厳密にパフォーマンスのみを目的としています。
実際のセキュリティが必要な場合は、サーバーに実装する必要があります。