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