2

セッション共有を停止するには、コードを使用しました

<sessionState mode=”InProc” cookieless=”UseUri”&gt;</sessionState>

これは問題なく動作していますが、URL がぎこちなく表示されますが、問題ありません。私が直面している問題は、ユーザーがすでにアプリケーションにログインしており、ユーザーが Web ブラウザーで URL を直接コピーして貼り付けてページを開く場合、ユーザーは既にアクティブなセッションを取得しているため、ページを開くことができます。

ただし、ページを開くための URL のコピーと貼り付けを制限する必要があります。そのような場合、私たちは何をしなければなりませんか?

これは古いアプリケーションであるため、.cs ページはありません。javascript/VB スクリプトを使用した .aspx ページがあります。

アプリケーションにログインするときに発生したもう 1 つの問題<sessionState mode="InProc" cookieless="UseUri">と、ユーザーが URL を直接コピーして Web ブラウザーに URL を貼り付けて、最初のページ (URL をコピーした場所) を閉じた後にページを開くと、ユーザーはログインせずにページを開くことができます。例: http://XXX/YYY/(S(fxiejp3mncnt3wwob3ytkmbf))/Home/FrameSet.aspx 開いているウィンドウを閉じた後に URL の上に貼り付けると (この URL をコピーした場所)、ユーザーはアプリケーションを開くことができます。これはバグのようです。提案 してください 提案してください

4

3 に答える 3

1

ユーザーがページに直接移動しないようにしたい場合は、http ヘッダーのリファラー [原文のまま] を見て、それが設定されていて、ユーザーがサイトをナビゲートしてそのページにアクセスしたことを確認します。リファラーが google に設定されているか、設定されていない場合、ユーザーは直接 URL に移動しました。

セキュリティの観点から、セッション情報を保存するために Cookie 内の何らかの識別子に依存する必要があり、Cookie に個人情報や機密情報が含まれないようにする必要があります。Cookie 内のセッション ID が、サーバーがセッションに対して持っているものと一致しない場合、ページは拒否されます。(セッションに関するヒントについては、 http://www.truste.com/blog/2011/12/02/best-practices-for-using-cookies/を参照してください)

于 2012-11-21T18:07:44.960 に答える
1

このようなコードを使用して、Html マークアップでコピー ペーストを無効にすることはできますか?

<html>
<head>
</head>
<body oncopy="return false;" onpaste="return false;" oncut="return false;">
    <form id="form1" runat="server">
        <div>
           Try to copy this and paste in your editor
        </div>
    </form>
</body>
</html>
于 2012-11-21T17:58:57.080 に答える
0

別のユーザーが URL をカット アンド ペーストできないように、IP アドレスをログイン セッションに関連付けてみませんか。

(両方のユーザーが同じ NAT ルーターの背後にいる場合は機能せず、ユーザーが IP アドレスを変更するモバイル デバイスを使用している場合は問題になる可能性があることに注意してください。)

于 2012-11-21T18:10:23.047 に答える