オブジェクトを React ファイルにインポートしてその値の一部を使用すると、セキュリティ上の問題が発生しますか?
たとえば、次のようなオブジェクトがあるとします:
リーリーそして、次のようにインポートします:
リーリー誰かがインポートされた「データ」オブジェクトを使用して「シークレット」値を呼び出して表示できるシナリオを作成しますか、それとも React がこれが起こらないようにするでしょうか?
P粉8521147522023-09-17 12:32:39
クライアント マシンに送信するコードはすべてパブリックとして扱う必要があります。十分に熱心な開発者であれば、最終的にはリバース エンジニアリングを行うことができます (ただし、コードのサイズと縮小/難読化によって難易度は上がる可能性があります)。
secret
シークレットを保持する唯一の方法は、最初からクライアントに送信しないことです。これは、サーバー上ですべてのレンダリング作業を実行し、結果の HTML マークアップを送信することで実現できます。クライアントに。 (とはいえ、クライアント側でレンダリングされるコンポーネントの柔軟性が高いため、多くの場合、クライアントのバンドルに機密値を 含めないことがベスト プラクティスとなります。)