簡體   English   中英

問題:@SessionScope是否可以在JHipster API Gateway Java應用程序中工作?

[英]Question: does @SessionScope work in JHipster API Gateway Java application?

我們有一個基於JHipster的API網關應用程序,該應用程序當前將JJWT用於..為了安全起見,我什至不知道如何正確命名。

我們遇到了一個問題,即當用戶請求針對第三方的某些操作時,我們需要對其進行身份驗證。 因此,想法是使用@SessionScope -d bean將用戶憑據保留在第三方中。 它會起作用嗎? 我對JWT據說是無國籍的感到困惑。社區應該提出什么方法? 謝謝

我的同事對此進行了調查:

為了支持我們的網關(UI-后端)的@SessionScope批注功能,我們首先應該調整一些配置:

  1. 在application.yml中,我們應該將http-only會話參數更改為false:

服務器:servlet:會話:cookie:僅HTTP:false

  1. 然后,我們應該配置會話超時,以使其與我們的JWT令牌生存期相關聯:

服務器:servlet:會話:超時:86400

  1. 最后,我們應該配置會話創建策略。 這可以在SecurityConfiguration.java完成:

@Override public void configure(HttpSecurity http)引發異常{http.sessionCreationPolicy(SessionCreationPolicy.ALWAYS); }

從這一點開始,我們將有一個會話,該會話將為每個經過身份驗證的用戶存儲Spring Secuirty上下文,但是它將永遠不會用於身份驗證機制,因為我們已經為此目的使用了JWT。 我們僅將會話用於存儲自定義數據。

配置完成后,我們現在可以為會話范圍創建自定義bean: CustomSessionScopeBean.java

@Component
@SessionScope
public class CustomSessionScopeBean{
    @Getter
    @Setter
    ///What ever you want to store in session scope
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM