W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
如果您的應(yīng)用程序還具有
SpringCloudZuul嵌入式反向代理(使用@EnableZuulProxy
),則可以要求它向下游轉(zhuǎn)發(fā)OAuth2訪問令牌到它正在代理的服務(wù)。因此,可以像下面這樣簡單地增強上面的SSO應(yīng)用程序:
app.groovy。
@Controller @EnableOAuth2Sso @EnableZuulProxy class Application { }
并且它將(除了登錄用戶并獲取令牌之外)還將身份驗證令牌傳遞到/proxy/*
服務(wù)的下游。如果這些服務(wù)是通過@EnableResourceServer
實現(xiàn)的,則它們將在正確的標(biāo)頭中獲得有效的令牌。
它是如何工作的?@EnableOAuth2Sso
注釋會插入spring-cloud-starter-security
(您可以在傳統(tǒng)應(yīng)用中手動完成此操作),并依次觸發(fā)ZuulFilter
的一些自動配置,該激活本身是因為Zuul位于類路徑(通過@EnableZuulProxy
)。該
濾波器
只提取用于下游請求從當(dāng)前認(rèn)證的用戶的訪問令牌,并把它在請求報頭。
Spring Boot不會自動創(chuàng)建
refresh_token
所需的OAuth2RestOperations
。在這種情況下,您需要創(chuàng)建自己的OAuth2RestOperations
,以便OAuth2TokenRelayFilter
可以根據(jù)需要刷新令牌。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: