中文字幕在线观看,亚洲а∨天堂久久精品9966,亚洲成a人片在线观看你懂的,亚洲av成人片无码网站,亚洲国产精品无码久久久五月天

Spring Security 5.1.0.M2 發(fā)布,Spring 安全框架

2018-08-01    來(lái)源:oschina

容器云強(qiáng)勢(shì)上線!快速搭建集群,上萬(wàn)Linux鏡像隨意使用
Spring Security

Spring Security 5.1.0.M2 已發(fā)布,該版本關(guān)閉了超過(guò) 100 個(gè) issue。下面說(shuō)說(shuō)值得關(guān)注的更新:

OAuth2

OAuth2 Resource Server

添加了對(duì) OAuth2 資源服務(wù)器的基本支持。見(jiàn) oauth2resourceserver

Authorization Code Flow

用戶現(xiàn)在可以使用OAuth 2.0 Authorization Code grant 獲取訪問(wèn)令牌(access token)。請(qǐng)查看 authcodegrant 示例。

支持 WebClient 和 OAuth2

現(xiàn)在內(nèi)置了對(duì) OAuth2 和 WebClient 的支持,該支持將允許:

  • 將訪問(wèn)令牌添加到請(qǐng)求中

  • 訪問(wèn)令牌過(guò)期時(shí)自動(dòng)刷新

  • 解析要使用的訪問(wèn)令牌

例如,在 servlet 環(huán)境中,你可以配置一個(gè)如下所示的 Bean:

@Bean
WebClient webClient(OAuth2AuthorizedClientRepository repository) {
    ServletOAuth2AuthorizedClientExchangeFilterFunction filter =
        new ServletOAuth2AuthorizedClientExchangeFilterFunction(repository);
    return WebClient.builder()
        .filter(new OAuth2AuthorizedClientExchangeFilterFunction())
        .apply(filter.oauth2Configuration())
        .build();
 }

現(xiàn)在,你可以通過(guò)多種不同方式添加 OAuth 令牌。如果需要,可以使用 Spring MVC 支持來(lái)解析 OAuth2AuthorizedClient。如果授權(quán)服務(wù)器返回已刷新的令牌并且訪問(wèn)令牌即將過(guò)期,則 Spring Security 將透明地更新訪問(wèn)令牌并提交已更新的訪問(wèn)令牌。

@GetMapping("/users")
Mono<String> users(@RegisteredOAuth2AuthorizedClient("client-id")
        OAuth2AuthorizedClient authorizedClient) {
    return this.webClient.get()
        .uri("https://api.example.com/user")
        .attributes(oauth2AuthorizedClient(authorizedClient))
        .retrieve()
        .bodyToMono(String.class);
}

你可以通過(guò) WebClient 來(lái)解析訪問(wèn)令牌,例如

Mono<String> users() {
    return this.webClient.get()
        .uri("https://api.example.com/user")
        .attributes(clientRegistrationId("client-id"))
        .retrieve()
        .bodyToMono(String.class);
}

如果使用 OAuth2 Log In 或 OIDC 進(jìn)行身份驗(yàn)證,則可以應(yīng)用默認(rèn)的訪問(wèn)令牌而無(wú)需用戶交互。

Mono<String> users() {
    // if Authenticated with OIDC
    // OAuth2 Log In use the access token associated to log in
    return this.webClient.get()
        .uri("https://api.example.com/user")
        .retrieve()
        .bodyToMono(String.class);
}

WebFlux OAuth2 Log In Supports OIDC

WebFlux 應(yīng)用程序現(xiàn)在可以使用 OAuth2 和 OIDC 進(jìn)行身份驗(yàn)證。有關(guān)詳細(xì)示例,請(qǐng)查看 oauth2login-webflux。

配置改進(jìn)

改進(jìn)默認(rèn)登錄頁(yè)面,更現(xiàn)代化

默認(rèn)登錄頁(yè)面實(shí)用了 HTML5,變得更現(xiàn)代化,看起來(lái)更具視覺(jué)吸引力。

默認(rèn)注銷頁(yè)面

由于添加了 CSRF 注銷保護(hù),因此默認(rèn)應(yīng)用程序無(wú)法注銷,F(xiàn)在,如果正在使用默認(rèn)登錄頁(yè)面(例如沒(méi)有配置登錄頁(yè)面),那么還會(huì)有一個(gè)默認(rèn)的注銷頁(yè)面,它顯示了一個(gè)注銷表單。

簡(jiǎn)化 RequestCache 配置

用戶現(xiàn)在可以配置默認(rèn)的 RequestCache,用于將其暴露給@Bean。

本次更新內(nèi)容較多,詳情請(qǐng)查看發(fā)布說(shuō)明。
源碼下載 >>> https://github.com/spring-projects/spring-security/releases/tag/5.1.0.M2

標(biāo)簽: idc isp 服務(wù)器

版權(quán)申明:本站文章部分自網(wǎng)絡(luò),如有侵權(quán),請(qǐng)聯(lián)系:west999com@outlook.com
特別注意:本站所有轉(zhuǎn)載文章言論不代表本站觀點(diǎn)!
本站所提供的圖片等素材,版權(quán)歸原作者所有,如需使用,請(qǐng)與原作者聯(lián)系。

上一篇:Harbor 開(kāi)源鏡像倉(cāng)庫(kù)成為 CNCF 托管項(xiàng)目

下一篇:Git LFS 2.5.0 發(fā)布,實(shí)現(xiàn) Git 對(duì)大文件支持的 Git 擴(kuò)展