2017-04-13 111 views
-2

我正在使用Spring(Web MVC-REST)4.3.3,spring security 3.2.4,Spring安全Oauth 1.0.0和OAuth2授權。從OAuth令牌獲取用戶ID

我將用戶的id存儲爲認證對象的原理。

我的問題是, 我想知道哪個用戶在服務層中調用了Web服務。我怎麼弄到的?

我想用它這樣的,

假如有人創建了一個用戶。創建者將被存儲在新用戶中。一種方法是從客戶端傳遞用戶對象中的創建者,但我希望從令牌本身獲取它,因爲它已經擁有該信息。

編輯

downvote的簡要說明表示歡迎。

回答

1

您可以通過

Authentication auth = SecurityContextHolder.getContext().getAuthentication(); 

SecurityContextHolder的訪問認證信息包含ThreadLocal變量,所以請求處理過程中的可用任何地方。 Authentication對象應包含來自令牌的信息。

相關問題