質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Vue.js

Vue.jsは、Webアプリケーションのインターフェースを構築するためのオープンソースJavaScriptフレームワークです。

SPA(Single-page Application)

SPA(Single-page Application)は、単一のWebページのみでコンテンツの切り替えができるWebアプリケーションもしくはWebサイトです。ブラウザでのページ遷移がないため、デスクトップアプリケーションのようなUXを提供します。

React.js

Reactは、アプリケーションのインターフェースを構築するためのオープンソースJavaScriptライブラリです。

Q&A

1回答

2215閲覧

SPAでログイントークンを扱う方法のベストプラクティスはありますか?

Hayato1201

総合スコア231

Vue.js

Vue.jsは、Webアプリケーションのインターフェースを構築するためのオープンソースJavaScriptフレームワークです。

SPA(Single-page Application)

SPA(Single-page Application)は、単一のWebページのみでコンテンツの切り替えができるWebアプリケーションもしくはWebサイトです。ブラウザでのページ遷移がないため、デスクトップアプリケーションのようなUXを提供します。

React.js

Reactは、アプリケーションのインターフェースを構築するためのオープンソースJavaScriptライブラリです。

0グッド

0クリップ

投稿2021/07/26 13:09

現在Vueでフロントシステムの開発を行っています。

ログインでアカパスを入力してバックエンドからトークンを取得してフロントからは各種APIをログイン時に取得したトークンを使って叩いています。

現状そのトークンはlocal storageに保存しています。
しかしそれだと残り続けるためセキュリティー上やや危ないという事でどうすべきか悩んでいます。

session storageだと複数タブで使う際に再度トークンの取得が必要になってしまう為不便で却下しました。

そこで こちら で紹介されている様に一定時間が経ったら削除される様に実装するのが良いかと検討してます。

この様にトークンを保存するというスキームは良くあると思いますが、一般的なベストプラクティスはあるのでしょうか?

ご教示いただけますと幸いです。

因みにvuex-persistedstateを仕様してvuexのstoreをlocal storageに保存しています。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2021/07/28 20:52

> 現状そのトークンはlocal storageに保存しています。 しかしそれだと残り続けるためセキュリティー上やや危ないという事でどうすべきか悩んでいます。 これは何を危惧していますか? ブラウザに保存したものが盗まれることを前提としているのであれば、アプローチは全く別角度からすることになると思います。
Hayato1201

2021/07/29 00:15

XSSやCSRFを危惧しています。 ですので色々見てみて確かに「一定時間が経ったら削除される様」というアプローチではあまり意味ないと思ってました。。。 そこでcookie上にトークンを保存する方針にしようかと思っているのですがいかがでしょうか?またそれに伴い下記に質問を掲載しているのですがそちらももしご確認いただけると大変ありがたいです・・・ https://teratail.com/questions/351718
guest

回答1

0

想定されている脅威に対してはこの質問と回答が参考になると思います。
JWTなどのTokenをlocalstrage(HTML5の)に保管することについて

ただ、本質問の回答にはなっていないので、もう少し質問を整理された方が良い回答が付くかと。

投稿2021/07/29 00:42

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問