当社では、プロジェクトでフロントエンドとバックエンドを分離することを計画しています。フロントエンドとフロントエンドのログイン状態を維持するために、トークンの使用についてインターネットでよく読みました。ログインを維持することで、md5 (セッション ID) をトークンに直接保存できるようになりました。何か問題がありますか?
基本的に、フロントエンドはプライバシー保護の目的で、ユーザーの機密データなどの可読性を下げるためにデータを暗号化します。 seesion_id を渡す場合、暗号化する必要はありません。上記の md5 メソッドに関しては、seesion_id 自体がキーとして使用され、md5 はハッシュ メソッド (不可逆的) であるため、バックエンドが使用したい場合は直接使用できます。使用してください。MD5 のレイヤーは無意味です (ハイジャックされている場合は、直接使用してください)
あなたが言及したトークンの問題は、バックエンドが認証部分を実装する方法、情報を保存するためにセッションを復元するか、インターフェイス呼び出し権限を確認するためにトークンを使用するかにあります。バックエンドの実装方法によって異なります。
セッションはブラウザに配置された Cookie によって保存され、ブラウザの Cookie の有効期限に基づいてログイン保持時間を制御します (クライアントの観点)。
残りの内容については、このセッション Cookie とトークンを参照してください
さらにいくつかのレイヤーで暗号化します。MD5 は単純すぎます。
トークン、ログイン時に MD5 で暗号化された日付を取得し、それを Redis にスローし、インターセプターでブロックして判断します
機密性の高いコンテンツ (パスワードなど) が保存されていない限り、問題はありません。人気のjwtを使うのがおすすめです。様々な言語で実装されているライブラリがあり、とても便利です。
セッション ID は単なるトークンであり、md5 は冗長です。
sessionid 暗号化された平文トークンではありませんか? md5 する必要はありません
sessionid
全く問題ありません。jwt を使用してください。トークンの合法性の検証には注意してください。
基本的に、フロントエンドはプライバシー保護の目的で、ユーザーの機密データなどの可読性を下げるためにデータを暗号化します。 seesion_id を渡す場合、暗号化する必要はありません。上記の md5 メソッドに関しては、seesion_id 自体がキーとして使用され、md5 はハッシュ メソッド (不可逆的) であるため、バックエンドが使用したい場合は直接使用できます。使用してください。MD5 のレイヤーは無意味です (ハイジャックされている場合は、直接使用してください)
あなたが言及したトークンの問題は、バックエンドが認証部分を実装する方法、情報を保存するためにセッションを復元するか、インターフェイス呼び出し権限を確認するためにトークンを使用するかにあります。バックエンドの実装方法によって異なります。
セッションはブラウザに配置された Cookie によって保存され、ブラウザの Cookie の有効期限に基づいてログイン保持時間を制御します (クライアントの観点)。
残りの内容については、このセッション Cookie とトークンを参照してください
さらにいくつかのレイヤーで暗号化します。MD5 は単純すぎます。
トークン、ログイン時に MD5 で暗号化された日付を取得し、それを Redis にスローし、インターセプターでブロックして判断します
機密性の高いコンテンツ (パスワードなど) が保存されていない限り、問題はありません。人気のjwtを使うのがおすすめです。様々な言語で実装されているライブラリがあり、とても便利です。
セッション ID は単なるトークンであり、md5 は冗長です。
sessionid
暗号化された平文トークンではありませんか? md5 する必要はありません全く問題ありません。jwt を使用してください。トークンの合法性の検証には注意してください。