回答編集履歴

3

typo。なんじゃこりゃ

2019/03/31 11:11

投稿

ikedas
ikedas

スコア4337

test CHANGED
@@ -8,17 +8,17 @@
8
8
 
9
9
  基本的に「セッション」といったとき、認証側で有効性をコントロールできないといけないはずです。だから、認証サーバにセッションストアを持っていなければならない。サーバのセッションストアから当該アカウントのセッション情報を削除すれば、そのセッションを即座に無効にできます。
10
10
 
11
- しかしAWTの場合、サーバにセッションストアを持たないので、トークンが発行されてしまえばもうサーバのコントロールは利かない。いわば「投げっぱなしのセッション」なわけです (localStorageにセッション情報を保持しても解決にならないことはわかるとおもいます。トークンが署名や暗号によって改竄不能になっていても同じ)。上の記事の最大のポイントはこれだと思います。
11
+ しかしJWTの場合、サーバにセッションストアを持たないので、トークンが発行されてしまえばもうサーバのコントロールは利かない。いわば「投げっぱなしのセッション」なわけです (localStorageにセッション情報を保持しても解決にならないことはわかるとおもいます。トークンが署名や暗号によって改竄不能になっていても同じ)。上の記事の最大のポイントはこれだと思います。
12
12
 
13
13
  対策としてすぐ思いつくのが、トークンの有効期限を短くすることで侵害による被害を最小限にすることです。しかし、短いといっても1分とかにしては使い物になりませんから限度があります。だいたい、それではセッションストアを用意して毎回セッションの有効性をチェックするのと大して違いません (というかより不便になります)。
14
14
 
15
15
  詳しくは記事を読んで、末尾のフローチャートも見てください。
16
16
 
17
- だから絶対だめだということではなく、きちんとリスクアセスメントをして使えばいいのです。次の記事では、実際のサービスにAWTを導入したときの検討内容を解説しています。
17
+ だから絶対だめだということではなく、きちんとリスクアセスメントをして使えばいいのです。次の記事では、実際のサービスにJWTを導入したときの検討内容を解説しています。
18
18
 
19
19
  - じゅんいち☆かとう (2018-09-25)「[JWT形式を採用したChatWorkのアクセストークンについて](https://creators-note.chatwork.com/entry/2018/09/25/132218)」\[2019-03-31最終確認]
20
20
 
21
- セッションに対するAWTのメリットについても軽く触れています。
21
+ セッションに対するJWTのメリットについても軽く触れています。
22
22
 
23
23
  ---
24
24
 

2

微加筆

2019/03/31 11:11

投稿

ikedas
ikedas

スコア4337

test CHANGED
@@ -10,7 +10,7 @@
10
10
 
11
11
  しかしAWTの場合、サーバにセッションストアを持たないので、トークンが発行されてしまえばもうサーバのコントロールは利かない。いわば「投げっぱなしのセッション」なわけです (localStorageにセッション情報を保持しても解決にならないことはわかるとおもいます。トークンが署名や暗号によって改竄不能になっていても同じ)。上の記事の最大のポイントはこれだと思います。
12
12
 
13
- 対策としてすぐ思いつくのが、トークンの有効期限を短くすることで侵害による被害を最小限にすることです。しかし、短いといっても1分とかにしては使い物になりませんから限度があります。だいたい、それではセッションストアを用意して毎回セッションの有効性をチェックするのと大して違いません。
13
+ 対策としてすぐ思いつくのが、トークンの有効期限を短くすることで侵害による被害を最小限にすることです。しかし、短いといっても1分とかにしては使い物になりませんから限度があります。だいたい、それではセッションストアを用意して毎回セッションの有効性をチェックするのと大して違いません (というかより不便になります)
14
14
 
15
15
  詳しくは記事を読んで、末尾のフローチャートも見てください。
16
16
 

1

微加筆

2019/03/31 04:41

投稿

ikedas
ikedas

スコア4337

test CHANGED
@@ -1,4 +1,6 @@
1
1
  以下はわたしの見聞にもとづく説明なので、間違っていたり不正確なところもあるかもしれません。
2
+
3
+ 「従来のような、Sessionを使った認証でも問題ないのでは」についてですが、むしろセッションを使わないことが問題になりえます。
2
4
 
3
5
  最近読んだ記事で次のものがよかったです。
4
6
 
@@ -16,6 +18,8 @@
16
18
 
17
19
  - じゅんいち☆かとう (2018-09-25)「[JWT形式を採用したChatWorkのアクセストークンについて](https://creators-note.chatwork.com/entry/2018/09/25/132218)」\[2019-03-31最終確認]
18
20
 
21
+ セッションに対するAWTのメリットについても軽く触れています。
22
+
19
23
  ---
20
24
 
21
25
  また、ほかのアサーション型の認証方式もすべてだめかというとそんなことはなく、使いかた次第だと思います。自分の知っている例を書いておきます。