タグ付けされた質問 「jwt」

JSON Web Token(JWT、「jot」と発音)は、HTTP Authorizationヘッダーなどのスペースに制約のある環境で使用される新しいタイプのトークンベースの認証です。

11
JWT(JSON Web Token)有効期限の自動延長
新しいREST APIにJWTベースの認証を実装したいと思います。しかし、有効期限はトークンに設定されているので、自動的に延長することは可能ですか?ユーザーがその期間にアプリケーションをアクティブに使用している場合、X分ごとにサインインする必要がないようにしたい。それは大きなUXの失敗です。 ただし、有効期限を延長すると新しいトークンが作成されます(古いトークンは有効期限が切れるまで有効です)。そして、各リクエストの後に新しいトークンを生成することは、私にはばかげているように思えます。複数のトークンが同時に有効な場合、セキュリティの問題のように聞こえます。もちろん、ブラックリストを使用して古いものを無効にすることもできますが、トークンを保存する必要があります。また、JWTの利点の1つはストレージがないことです。 Auth0がそれを解決する方法を見つけました。JWTトークンだけでなく更新トークンも使用します:https : //docs.auth0.com/refresh-token しかし、これも(Auth0なしで)これを実装するには、リフレッシュトークンを保存し、有効期限を維持する必要があります。では、本当のメリットは何ですか?(JWTではなく)トークンを1つだけ使用して、サーバーで有効期限を維持しないのはなぜですか? 他のオプションはありますか?JWTの使用はこのシナリオに適していませんか?

22
JSON Webトークンの無効化
私が取り組んでいる新しいnode.jsプロジェクトの場合、Cookieベースのセッションアプローチから切り替えることを考えています(つまり、IDを、ユーザーのブラウザーでユーザーセッションを含むKey-Valueストアに格納します)。 JSON Web Token(jwt)を使用したトークンベースのセッションアプローチ(Key-Valueストアなし)に。 このプロジェクトは、socket.ioを利用するゲームです。単一のセッション(webおよびsocket.io)に複数の通信チャネルがあるようなシナリオでは、トークンベースのセッションがあると便利です。 jwtアプローチを使用して、サーバーからトークン/セッションの無効化をどのように提供しますか? また、この種のパラダイムで注意する必要のある一般的な(または一般的でない)落とし穴/攻撃についても理解したいと思いました。たとえば、このパラダイムが、セッションストア/ Cookieベースのアプローチと同じ/異なる種類の攻撃に対して脆弱である場合。 だから、私は次のものを持っていると言います(これとこれから適応されます): セッションストアログイン: app.get('/login', function(request, response) { var user = {username: request.body.username, password: request.body.password }; // Validate somehow validate(user, function(isValid, profile) { // Create session token var token= createSessionToken(); // Add to a key-value database KeyValueStore.add({token: {userid: profile.id, expiresInMinutes: 60}}); // The client …

9
JWT認証とOAuth認証の主な違いは何ですか?
JWTを使用したステートレス認証モデルを備えた新しいSPAがあります。単純なトークンヘッダーの代わりにすべてのリクエストに対して「ベアラートークン」を送信するように依頼するなど、認証フローについてOAuthを参照するようにしばしば求められますが、OAuthは単純なJWTベースの認証よりもはるかに複雑だと思います。主な違いは何ですか、JWT認証をOAuthのように動作させる必要がありますか? XSRF-TOKENとしてJWTを使用してXSRFを防止していますが、それらを個別に保持するように求められますか?それらを分離しておくべきですか?ここでの助けは高く評価され、コミュニティのための一連のガイドラインにつながるかもしれません。

7
JWTをデコードできる場合、どのように安全ですか?
JWTを取得してペイロードをデコードできる場合、どのように安全ですか?ヘッダーからトークンを取得し、ペイロードのユーザー情報をデコードして変更し、同じ正しいエンコードされたシークレットで送り返すことはできませんか? 安全である必要があることは承知していますが、実際にテクノロジーについて理解したいと思います。何が欠けていますか?

5
ASP.NET Web APIのJWT認証
Web APIアプリケーションでJWTベアラートークン(JSON Webトークン)をサポートしようとしていますが、道に迷ってしまいます。 .NET CoreとOWINアプリケーションがサポートされています。 現在、IISでアプリケーションをホストしています。 アプリケーションでこの認証モジュールをどのように実現できますか?<authentication>フォーム/ Windows認証を使用する方法と同様の構成を使用する方法はありますか?

4
RS256とHS256:違いは何ですか?
Webアプリで認証を処理するためにAuth0を使用しています。ASP.NET Core v1.0.0とAngular 2 rc5を使用していますが、認証/セキュリティ一般についてはあまり知りません。 ASP.NET Core Web ApiのAuth0ドキュメントでは、JWTアルゴリズムにRS256とHS256の2つの選択肢があります。これは馬鹿げた質問かもしれませんが: RS256とHS256の違いは何ですか?いくつかのユースケース(該当する場合)は何ですか?

2
JWTに最適なHTTP Authorizationヘッダータイプ
JWTトークンに最適なAuthorizationHTTPヘッダーの種類は何でしょうか。 おそらく最も人気のあるタイプの1つはBasicです。例えば: Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ== ログインとパスワードなどの2つのパラメーターを処理します。したがって、JWTトークンには関係ありません。 また、私は例えばベアラータイプについて聞いた: Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWV9.TJVA95OrM7E2cBab30RMHrHDcEfxjoYZgeFONFh7HgQ しかし、その意味はわかりません。それはクマに関連していますか? HTTP AuthorizationヘッダーでJWTトークンを使用する特定の方法はありますか?を使用するBearerか、単純化して使用するだけですか? Authorization: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWV9.TJVA95OrM7E2cBab30RMHrHDcEfxjoYZgeFONFh7HgQ ありがとう。 編集: または、たぶん、JWTHTTPヘッダーだけです: JWT: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWV9.TJVA95OrM7E2cBab30RMHrHDcEfxjoYZgeFONFh7HgQ
228 http-headers  jwt 

16
ライブラリを使用せずにJavaScriptでJWTトークンをデコードする方法は?
JavaScriptを使用してJWTのペイロードをどのようにデコードできますか?ライブラリなし。したがって、トークンは、私のフロントエンドアプリが使用できるペイロードオブジェクトを返すだけです。 トークンの例: xxxxxxxxx.XXXXXXXX.xxxxxxxx そして結果はペイロードです: {exp: 10012016 name: john doe, scope:['admin']}
209 javascript  jwt 

4
JWTが盗まれた場合はどうなりますか?
RESTful APIのステートレス認証をJWTで実装しようとしています。 AFAIK、JWTは基本的に、REST呼び出し中にHTTPヘッダーとして渡される暗号化された文字列です。 しかし、リクエストを見てトークンを盗む盗聴者がいる場合はどうでしょうか?それから彼は私のアイデンティティでリクエストを偽ることができますか? 実際、この問題はすべてのトークンベースの認証に当てはまります。 それを防ぐ方法は?HTTPSのような安全なチャネル?

12
Postmanを使用したヘッダーでのJWTトークンの送信
次の記事に基づいて、JWTトークンベースのセキュリティの実装をテストしています。テストサーバーからトークンを正常に受信しました。Chrome POSTMAN RESTクライアントプログラムでヘッダー内のトークンを送信する方法がわかりません。 私の質問は次のとおりです。 1)正しいヘッダー名やPOSTMANインターフェイスを使用していますか? 2)トークンをbase 64エンコードする必要がありますか?トークンを送り返すだけでいいと思った。
169 express  jwt  postman 

3
ブラウザでJWTを保存する場所は?CSRFから保護する方法は?
私はクッキーベースの認証を知っています。SSLおよびHttpOnlyフラグを適用して、Cookieベースの認証をMITMおよびXSSから保護できます。ただし、CSRFから保護するには、さらに特別な対策が必要になります。それらは少し複雑です。(参考) 最近、JSON Web Token(JWT)が認証のソリューションとして非常にホットであることを発見しました。JWTのエンコード、デコード、および検証について知っています。ただし、JWTを使用している場合に、一部のWebサイト/チュートリアルでCSRF保護が不要であると説明されている理由がわかりません。私はかなりたくさん読んで、以下の問題を要約しようとします。私は、誰かがJWTの全体像を提供し、JWTについて誤解している概念を明確にしてほしいと思っています。 JWTがCookieに格納されている場合、サーバーがCookie /トークンを検証するためのセッションを必要としないことを除いて、Cookieベースの認証と同じだと思います。特別な対策が講じられていない場合、CSRFには依然としてリスクがあります。JWTはCookieに保存されませんか? JWTがlocalStorage / sessionStorageに格納されている場合、Cookieがないため、CRSFから保護する必要はありません。問題は、JWTをサーバーに送信する方法です。ここで見つけたのは、jQueryを使用してajaxリクエストのHTTPヘッダーでJWTを送信することです。それで、ajaxリクエストだけが認証を行うことができますか? また、「Authorization header」と「Bearer」を使用してJWTを送信するブログショーがもう1つ見つかりました。私はブログが話している方法を理解していません。誰かが「Authorizationヘッダー」と「Bearer」についてもっと説明してもらえますか?これにより、JWTはすべてのリクエストのHTTPヘッダーによって送信されますか?はいの場合、CSRFはどうですか?


3
Spring Securityフィルターチェーンの仕組み
Springのセキュリティはフィルターのチェーン上に構築されていることを理解しています。これは、リクエストを傍受し、認証を検出(存在しない)し、認証エントリポイントにリダイレクトするか、リクエストを承認サービスに渡し、最終的にリクエストをサーブレットにヒットするか、セキュリティ例外をスローします。 (未認証または無許可)。DelegatingFitlerProxyはこれらのフィルターを接着します。これらのタスクを実行するために、これらはUserDetailsS​​erviceやAuthenticationManagerなどのアクセスサービスにフィルターをかけます。 チェーン内の主要なフィルターは(順序で) SecurityContextPersistenceFilter(JSESSIONIDから認証を復元します) UsernamePasswordAuthenticationFilter(認証を実行) ExceptionTranslationFilter(FilterSecurityInterceptorからのセキュリティ例外をキャッチ) FilterSecurityInterceptor(認証と承認の例外をスローする場合があります) これらのフィルターの使用方法がわかりません。春に提供されるフォームログインの場合、UsernamePasswordAuthenticationFilterは/ loginにのみ使用され、後者のフィルターは使用されないのですか?フォーム・ログイン名前空間の要素は、これらのフィルタを自動設定しますか?すべてのリクエスト(認証済みかどうかにかかわらず)は、非ログインURLのFilterSecurityInterceptorに到達しますか? ログインから取得したJWT-tokenでREST APIを保護したい場合はどうなりますか?2つの名前空間構成httpタグ、権利を構成する必要がありますか?1つは/ loginでUsernamePasswordAuthenticationFilter、もう1つはREST URLで、customを使用しJwtAuthenticationFilterます。 2つのhttp要素を構成すると2つ作成されますspringSecurityFitlerChainsか?されてUsernamePasswordAuthenticationFilter、私は宣言するまで、デフォルトではオフになってform-login?どのように既存のものからSecurityContextPersistenceFilter取得するフィルターに置き換えるのですか?AuthenticationJWT-tokenJSESSIONID

3
JWT更新トークンフロー
私はモバイルアプリを作成していて、認証にJWTを使用しています。 これを行う最善の方法は、JWTアクセストークンと更新トークンをペアにして、アクセストークンを必要なだけ頻繁に期限切れにできるようにすることです。 更新トークンはどのようなものですか?ランダムな文字列ですか?その文字列は暗号化されていますか?別のJWTですか? 更新トークンは、アクセスのためにユーザーモデルのデータベースに格納されますよね?この場合は暗号化する必要があるようです ユーザーのログイン後に更新トークンを送り返し、クライアントに別のルートにアクセスさせてアクセストークンを取得させますか?

4
認証:JWTの使用とセッション
認証などの状況でセッションよりもJWTを使用する利点は何ですか? スタンドアロンのアプローチとして使用されていますか、それともセッションで使用されていますか?
122 session  jwt 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.