私は websocket でいくつかの作業を行っており、セキュリティに対処する必要があります。私が読んだことから、私の状況では SSL が最良のアプローチであることは明らかなので、WSS を使用することをお勧めします (これは問題ではなく、単なる事実の表明です)。
サーバーは大量のデータをクライアントにストリーミングする場合があります。データはプライベートでも機密でもないので、誰かがデータを盗聴する心配はありません. 私の主な懸念は、サーバーでコマンドを受信すると有害で破壊的な可能性があるため、WS 接続が検証されることです。クライアントは信頼されている必要があります。
サーバーは、処理能力が制限された組み込みデバイスになります。したがって、データは WS を介して平文で送信できるというのが私の見解です。
したがって、私のアプローチは、クライアントが wss してサーバーに接続し、認証してセッション キーを要求することです。次に、クライアントは wss 接続から切断し、ws を介してサーバーに接続し、前の wss 接続から受け取ったセッション キーを渡します。サーバーは、接続が有効なセッション キー (セッション キーの適切な有効期限付き) をすぐに渡す場合にのみ ws 接続を受け入れます。クライアントごとに ws 経由でのみ 1 回の接続試行が許可され、wss 接続が成功するとリセットされます。
したがって、私の質問は、このアプローチが合理的かどうか、または私のアプローチに深刻な脆弱性があるかどうかです。私は ws と wss に制限されています。サーバーでは websocket-node で node.js を使用し、クライアントでは純粋な javascript を使用しています。