質問するログイン新規登録

回答編集履歴

1

追記

2021/04/29 04:07

投稿

退会済みユーザー
answer CHANGED
@@ -35,4 +35,18 @@
35
35
 
36
36
  この場合、Set-Cookie: に expires=...; は付与されないので、認証クッキーはブラウザのメモリにしか保持されません。従って、ブラウザを閉じれば認証クッキーは消えます。
37
37
 
38
- 逆に、ブラウザを閉じなければ認証クッキーは消えません。要求のたびに送られ続けます。(ただし、中身の認証チケットが有効かどうかは別の話で、有効期限はアプリの設定によります)
38
+ 逆に、ブラウザを閉じなければ認証クッキーは消えません。要求のたびに送られ続けます。(ただし、中身の認証チケットが有効かどうかは別の話で、有効期限はアプリの設定によります)
39
+
40
+ **【追記】**
41
+
42
+ もう一つの疑問、
43
+
44
+ > その場合、クッキーには生のパスワードが保存されると思いますが、クッキーは他の人がその人のパソコンを触れるなら見ることが出来る気がしますし、それでいいものなのか気になっています。
45
+
46
+ に答えてなかったですね。
47
+
48
+ 上に書いた ASP.NET のクッキーベースの認証システムの場合ですが、パスワードは認証チケット/クッキーには含まれません。認証チケットの中身は暗号化されたユーザー名、ユーザーが属するロール、有効期限などです。
49
+
50
+ 認証クッキーから認証チケットを取得し、それが所定の暗号キー、プロテクタで復号できて、有効期限内であればその認証クッキーを送ってきたユーザーは認証されます。
51
+
52
+ なお、パスワードはハッシュされてサーバーに保持されます。ユーザーから生のパスワードが送信されてくるのは、上に書いた Login ページでログインするときのみです。その生のパスワードをハッシュしてサーバーのハッシュされたパスワードを比較するようにしています。