精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

手摸手教你定制 Spring Security 表單登錄

開(kāi)發(fā) 前端
對(duì)于一個(gè)完整的應(yīng)用系統(tǒng),與登錄驗(yàn)證相關(guān)的頁(yè)面都是高度定制化的,非常美觀而且提供多種登錄方式。這就需要Spring Security支持我們自己定制登錄頁(yè)面,也就是本文給大家介紹的FormLogin模式登錄認(rèn)證模式。

在本專(zhuān)欄前篇文章中介紹了HttpBasic模式,該模式比較簡(jiǎn)單,只是進(jìn)行了通過(guò)攜帶Http的Header進(jìn)行簡(jiǎn)單的登錄驗(yàn)證,而且沒(méi)有可以定制的登錄頁(yè)面,所以使用場(chǎng)景比較窄。

對(duì)于一個(gè)完整的應(yīng)用系統(tǒng),與登錄驗(yàn)證相關(guān)的頁(yè)面都是高度定制化的,非常美觀而且提供多種登錄方式。這就需要Spring Security支持我們自己定制登錄頁(yè)面,也就是本文給大家介紹的FormLogin模式登錄認(rèn)證模式。

1. 新建項(xiàng)目

在介紹相關(guān)內(nèi)容之前,需要先搭建一個(gè)demo,新建一個(gè)項(xiàng)目spring-security-02,需要添加依賴(lài)如下:

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>

除此之外其實(shí)還需要添加web、thymeleaf的依賴(lài),這里就不在貼出來(lái)了。

demo結(jié)構(gòu)如下:

圖片

2. 新建登錄頁(yè)面

這里不再使用Security默認(rèn)的頁(yè)面,自己定制一個(gè),代碼如下:

圖片

單純的一個(gè)表單登錄頁(yè)面,需要注意以下幾個(gè)參數(shù):

  • action:security登錄的url,可以自定義。
  • username:security登錄的用戶(hù)名,可以自定義。
  • password:security登錄的密碼,可以自定義。

以上三個(gè)參數(shù)都可以在security通過(guò)配置的方式定義。

3. 新建首頁(yè)

這個(gè)是登錄成功后跳轉(zhuǎn)的首頁(yè),代碼如下:

圖片

4. 新建接口

在security中一切的接口都稱(chēng)之為資源,下面新建兩個(gè)測(cè)試接口,代碼如下:

圖片

5. formLogin配置

在介紹如何配置之前,先來(lái)看下formLogin模式登錄的5個(gè)要素:

  • 登錄認(rèn)證邏輯-登錄URL:這個(gè)URL在security中默認(rèn)是/login且POST請(qǐng)求,但是也可以通過(guò)配置自定義。
  • 如何接收登錄參數(shù):用戶(hù)名、密碼默認(rèn)接收的字段分別是username、password,同樣也是可以通過(guò)配置自定義。
  • 登陸成功后邏輯:登錄成功后的處理邏輯,比如跳轉(zhuǎn)到指定的頁(yè)面、返回特定的JSON數(shù)據(jù),這個(gè)也是可以定制。
  • 資源訪問(wèn)控制規(guī)則:這個(gè)用于控制什么用戶(hù)、什么角色可以訪問(wèn)什么資源,可以靜態(tài)指定也可以從數(shù)據(jù)庫(kù)中加載。
  • 用戶(hù)具有角色權(quán)限:配置某個(gè)用戶(hù)擁有什么角色、擁有什么權(quán)限,可以靜態(tài)指定也可以從數(shù)據(jù)庫(kù)中加載。

一般來(lái)說(shuō),使用權(quán)限認(rèn)證框架的的業(yè)務(wù)系統(tǒng)登錄驗(yàn)證邏輯是固定的,而資源訪問(wèn)控制規(guī)則和用戶(hù)信息是從數(shù)據(jù)庫(kù)或其他存儲(chǔ)介質(zhì)靈活加載的。但本文所有的用戶(hù)、資源、權(quán)限信息都是代碼配置寫(xiě)死的,旨在為大家介紹formLogin認(rèn)證模式,如何從數(shù)據(jù)庫(kù)加載權(quán)限認(rèn)證相關(guān)信息我還會(huì)結(jié)合RBAC權(quán)限模型再寫(xiě)文章的。

針對(duì)上述5個(gè)的要素,formLogin配置代碼如下:

圖片

首先,我們要繼承WebSecurityConfigurerAdapte?r ,重寫(xiě)configure(HttpSecurity http) 方法,該方法用來(lái)配置登錄驗(yàn)證邏輯。請(qǐng)注意看代碼中的注釋信息。

上述代碼分為兩個(gè)部分:

第一部分是formLogin配置段,用于配置登錄驗(yàn)證邏輯相關(guān)的信息。如:登錄頁(yè)面、登錄成功頁(yè)面、登錄請(qǐng)求處理路徑等。

  • .loginPage("/login/page")?:指定的第2步定制的登錄頁(yè)面,需要寫(xiě)個(gè)mvc接口跳轉(zhuǎn)到login.html,見(jiàn)源碼。
  • .loginProcessingUrl("/login")?:指定處理登錄的邏輯的url,這個(gè)接口不需要開(kāi)發(fā)者定義,security中通過(guò)過(guò)濾器。UsernamePasswordAuthenticationFilter處理,后文介紹。
  • .usernameParameter("username")?:指定用戶(hù)名的接收參數(shù)的字段,默認(rèn)是username,具體邏輯在UsernamePasswordAuthenticationFilter。
  • .passwordParameter("password")?:指定密碼的接收參數(shù)的字段,默認(rèn)是username,具體邏輯在UsernamePasswordAuthenticationFilter。
  • .defaultSuccessUrl("/")?:登錄認(rèn)證成功后默認(rèn)轉(zhuǎn)跳的路徑,這里/?則是跳轉(zhuǎn)到/index.html,可以自定義。
  • .failureUrl("/login/page"):登陸失敗的跳轉(zhuǎn)的路徑。

第二部分是authorizeRequests配置段,用于配置資源的訪問(wèn)控制規(guī)則

  • .antMatchers("/login/page","/login").permitAll():配置登錄頁(yè)面、登錄接口直接放行,不需要攔截登錄
  • .antMatchers("/","/hello1").hasAnyAuthority("ROLE_user","ROLE_admin")?:設(shè)置/hello1、/?這兩個(gè)資源需要user和admin的角色才可以訪問(wèn)。
  • .antMatchers("/hello2").hasAnyRole("admin")?:配置/hello2?這個(gè)資源需要admin的角色才可以訪問(wèn)。
  • .anyRequest().authenticated():除了上面的配置的規(guī)則,訪問(wèn)其他的資源都需要登錄認(rèn)證通過(guò)才可以訪問(wèn)。

6. 用戶(hù)、角色配置

在上述的規(guī)則中配置了一些資源需要特定的角色才可以訪問(wèn),比如user、admin,那么這些角色如何去指定呢?

在security中提供了配置的方式,代碼如下:

圖片

上述的代碼配置很簡(jiǎn)單,創(chuàng)建了兩個(gè)用戶(hù)且指定了角色,分別如下:

  • user:密碼123456,賦予的角色為user。
  • admin:密碼123456,賦予的角色為user、admin。

配置解釋如下:

  • .inMemoryAuthentication():指的是在內(nèi)存里面存儲(chǔ)用戶(hù)的身份認(rèn)證和授權(quán)信息;這里還可以配置從數(shù)據(jù)庫(kù)中動(dòng)態(tài)加載,后文介紹。
  • withUser("user"):用戶(hù)名是user。
  • password(passwordEncoder().encode("123456")):密碼是加密之后的123456。
  • roles():方法用于指定用戶(hù)的角色,一個(gè)用戶(hù)可以有多個(gè)角色。
  • passwordEncoder(passwordEncoder())?:指定密碼的加密方式,使用的是BCryptPasswordEncoder,后文介紹。

7. 簡(jiǎn)單測(cè)試

按照上述6個(gè)步驟基本實(shí)現(xiàn)了一個(gè)表單登錄,下面測(cè)試一下。

瀏覽器訪問(wèn)http://localhost:8081/hello2,第一次訪問(wèn)由于未登錄會(huì)自動(dòng)跳轉(zhuǎn)到登錄頁(yè)面,如下圖:

圖片

輸入用戶(hù)名和密碼,由于/hello2?這個(gè)資源需要admin?的角色才能訪問(wèn),因此必須用admin這個(gè)用戶(hù)登錄,否則將會(huì)報(bào)403的錯(cuò)誤,登錄成功后將能夠正常訪問(wèn)。

圖片

如果用戶(hù)名或者密碼錯(cuò)誤將會(huì)觸發(fā).failureUrl("/login/page")這個(gè)配置,自動(dòng)跳轉(zhuǎn)到登錄頁(yè)面

8. 自定義登錄結(jié)果

在第5步的配置中,和登錄結(jié)果相關(guān)的配置有如下兩個(gè):

  • .defaultSuccessUrl("/")?:登錄認(rèn)證成功后默認(rèn)轉(zhuǎn)跳的路徑,這里/?則是跳轉(zhuǎn)到/index.html,可以自定義。
  • .failureUrl("/login/page"):登陸失敗的跳轉(zhuǎn)的路徑。

這兩個(gè)配置都是指定URL的方式:

  • 當(dāng)我們登錄成功的時(shí)候,是由AuthenticationSuccessHandler?進(jìn)行登錄結(jié)果處理,默認(rèn)跳轉(zhuǎn)到defaultSuccessUrl配置的路徑對(duì)應(yīng)的資源頁(yè)面(一般是首頁(yè)index.html)。
  • 當(dāng)我們登錄失敗的時(shí)候,是由AuthenticationfailureHandler?進(jìn)行登錄結(jié)果處理,默認(rèn)跳轉(zhuǎn)到failureUrl配置的路徑對(duì)應(yīng)的資源頁(yè)面(一般也是跳轉(zhuǎn)登錄頁(yè)login.html,重新登錄)。

但是在web應(yīng)用開(kāi)發(fā)過(guò)程中需求是千變?nèi)f化的,有時(shí)需要我們針對(duì)登錄結(jié)果做個(gè)性化處理,比如:

  • 我們希望不同的人登陸之后,看到不同的首頁(yè)(及向不同的路徑跳轉(zhuǎn))。
  • 我們應(yīng)用是前后端分離的,驗(yàn)證響應(yīng)結(jié)果是JSON格式數(shù)據(jù),而不是頁(yè)面跳轉(zhuǎn)。
  • …… 其他未盡的例子。

因此需要自定義的登錄結(jié)果,這篇文章先介紹如何定制跳轉(zhuǎn)頁(yè)面,關(guān)于JSON格式數(shù)據(jù)就是前后端分離架構(gòu)下需要用到。

8.1 自定義登錄成功結(jié)果

AuthenticationSuccessHandler?接口是Security提供的認(rèn)證成功處理器接口,我們只需要去實(shí)現(xiàn)它即可。但是通常來(lái)說(shuō),我們不會(huì)直接去實(shí)現(xiàn)AuthenticationSuccessHandler?接口,而是繼承SavedRequestAwareAuthenticationSuccessHandler? 類(lèi),這個(gè)類(lèi)會(huì)記住用戶(hù)上一次請(qǐng)求的資源路徑,比如/hello2?這個(gè)路徑,登錄成功后將會(huì)自動(dòng)跳轉(zhuǎn)到/hello2這個(gè)頁(yè)面而不是首頁(yè)。

代碼如下:

圖片

8.2 自定義登錄失敗結(jié)果

這里我們同樣沒(méi)有直接實(shí)現(xiàn)AuthenticationFailureHandler?接口,而是繼承SimpleUrlAuthenticationFailureHandler 類(lèi)。該類(lèi)中默認(rèn)實(shí)現(xiàn)了登錄驗(yàn)證失敗的跳轉(zhuǎn)邏輯,即登陸失敗之后回到登錄頁(yè)面。我們可以利用這一點(diǎn)簡(jiǎn)化我們的代碼。

代碼如下:

圖片

8.3 SecurityConfig中配置

配置如下:

圖片

將自定義的AuthenticationSuccessHandler和AuthenticationFailureHandler注入到Spring Security配置類(lèi)中

使用formlogin模式,配置successHandler和failureHandler。

不要配置defaultSuccessUrl和failureUrl,否則自定義handler將失效。handler配置與URL配置只能二選一

總結(jié)

本篇文章介紹了Spring Security 的 formLogin的配置方式,需要注意的是這里不支持前后端分離架構(gòu),

責(zé)任編輯:武曉燕 來(lái)源: 碼猿技術(shù)專(zhuān)欄
相關(guān)推薦

2022-08-15 09:22:12

JWT認(rèn)證系統(tǒng)

2021-07-19 07:01:20

Chrome 插件瀏覽器

2022-01-26 00:02:00

Nacos服務(wù)注冊(cè)中心

2020-09-23 07:45:32

Docker前端

2020-09-15 10:25:13

Redis命令Java

2021-11-12 07:00:46

tsdx開(kāi)發(fā)環(huán)境

2022-11-26 00:00:02

2021-04-26 08:54:17

Spring BootSecurity防重登錄

2025-02-04 11:18:49

Spring安全應(yīng)用

2021-05-12 08:32:53

Spring Secu 自定義session

2021-03-04 11:50:48

微信Spring Secu登錄

2021-06-29 12:27:19

Spring BootCAS 登錄

2009-08-24 14:12:46

IT運(yùn)維管理表單設(shè)計(jì)工具摩卡軟件

2019-11-12 10:50:13

Spring BootstarterJava

2021-04-23 07:33:10

SpringSecurity單元

2021-08-29 18:36:57

項(xiàng)目

2025-11-12 07:50:52

SpringBoot登錄框OAuth2

2022-08-30 08:50:07

Spring權(quán)限控制

2022-08-15 08:42:46

權(quán)限控制Spring

2022-08-30 08:36:13

Spring權(quán)限控制
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

www.一区二区.com| 国产精品一区专区欧美日韩| 91av在线免费| avav成人| 亚洲免费电影在线| 久久久婷婷一区二区三区不卡| 国产一卡二卡三卡| 欧美激情第二页| 日韩av在线看| 不卡中文字幕在线观看| av资源新版天堂在线| 久久久久国产一区二区三区四区| 国产美女被下药99| 精品无码人妻一区二区三区品| 国产欧美日韩免费观看| 日韩午夜av电影| 色一情一乱一伦一区二区三区日本| 国产美女在线观看| 久久亚区不卡日本| 亚洲xxx视频| 久久久久女人精品毛片九一| 久久精品影视| 亚洲一区二区久久久| 国产香蕉精品视频| 欧美综合影院| 91国偷自产一区二区三区成为亚洲经典| 91免费网站视频| 日本精品专区| 成人在线视频一区| 91久久久久久久| 欧美性猛交xxxx乱大交hd| 亚洲国产精品一区| 欧美床上激情在线观看| 三区四区在线观看| 亚洲精华一区二区三区| 欧美精品一区二| 国产亚洲色婷婷久久| 日韩av首页| 欧美日韩一区二区免费视频| 国产成人一二三区| 国产在线69| 中文字幕精品一区二区精品绿巨人 | 国产制服丝袜在线| 99久久人爽人人添人人澡| 在线电影国产精品| 色噜噜狠狠一区二区| 成人片免费看| 精品久久中文字幕| 黄色免费福利视频| 97蜜桃久久| 午夜a成v人精品| 久无码久无码av无码| 污片在线免费观看| 亚洲婷婷综合久久一本伊一区| 香蕉久久免费影视| 成人三级黄色免费网站| 久久久不卡网国产精品二区| 久久精品日产第一区二区三区| 亚洲美女综合网| 国产精品一品二品| 波多野结衣精品久久| 精品人妻无码一区二区色欲产成人 | 国产精品免费观看视频| 日韩欧美一区二区视频在线播放| 人成在线免费视频| 久久久不卡影院| 亚洲国产精品视频一区| yourporn在线观看视频| 中文字幕免费观看一区| 一区二区三区四区久久| av大大超碰在线| 一区二区三区资源| 国产成a人亚洲精v品在线观看| 天堂av在线电影| 亚洲午夜一区二区三区| 国产乱子伦农村叉叉叉| 日韩免费电影| 欧美三级三级三级爽爽爽| 99re6在线观看| 国产精品视频一区二区三区综合| 欧美一区二区三区免费观看视频| 在线观看免费看片| 好吊妞视频这里有精品| 亚洲精品色婷婷福利天堂| 性猛交娇小69hd| 亚洲精品国产偷自在线观看| 久久99久久久久久久噜噜| 日韩精品人妻中文字幕| 日韩综合一区二区| 成人中文字幕在线观看| 内射后入在线观看一区| 国产欧美va欧美不卡在线| 一本一道久久久a久久久精品91| 成人av黄色| 欧美午夜精品久久久久久人妖| 一级片视频免费观看| 日韩视频一二区| 亚洲欧美激情四射在线日| 一区二区国产精品精华液| 亚洲经典视频在线观看| 国产日韩一区在线| 午夜福利视频一区二区| 亚洲欧洲www| av网站在线观看不卡| 精品国产一区二区三区性色av| 精品视频久久久| 麻豆chinese极品少妇| 久久久人人人| 高清不卡日本v二区在线| 日本在线丨区| 亚洲一区二区视频| 五月婷婷之婷婷| 欧美亚洲大陆| 欧美日韩xxxxx| 一级特黄aaa大片| 久久综合狠狠综合久久激情 | 黄色网页网址在线免费| 亚洲aⅴ怡春院| 成人黄色一级大片| 欧美挤奶吃奶水xxxxx| 精品国产一二三| 韩国一级黄色录像| 国产欧美一区二区三区国产幕精品| 国产精品www| 亚洲欧美强伦一区二区| 亚洲国产成人在线| 免费一级特黄特色毛片久久看| www.久久久久爱免| 亚洲日本成人网| 久久久久亚洲天堂| 蜜桃av一区二区在线观看| 国产精品欧美久久| 久草资源在线观看| 天涯成人国产亚洲精品一区av| 中文字幕一区二区在线观看视频| 一区二区三区日本久久久 | 色一区在线观看| 在线免费观看污视频| 久久精品亚洲人成影院| 国产成人精品av在线| 亚洲国产成人在线观看| 中文字幕欧美区| 免费日韩视频在线观看| 国产精品1区| 久久精品国产清自在天天线| 亚洲视频 欧美视频| 99久久99久久精品免费看蜜桃| 男女激烈动态图| 四虎成人精品一区二区免费网站| 欧美成人aa大片| 久久久久97国产| 国产一区二区久久| 手机看片日韩国产| 国产精品无码久久久久| 国产一区二区三区欧美| 日韩视频在线观看一区| 久久精品一区二区三区不卡 | 91九色极品视频| 免费网站免费进入在线| 91麻豆精品91久久久久久清纯 | 好男人www社区| 免费观看不卡av| 26uuu国产精品视频| 日本护士...精品国| 高潮白浆女日韩av免费看| 国产黑丝一区二区| 精品成人免费| 国产日韩欧美精品| 操你啦视频在线| 精品999久久久| 国产无遮挡又黄又爽| 国产91精品久久久久久久网曝门| 中文字幕色一区二区| 欧美亚洲二区| 久久精品色欧美aⅴ一区二区| 精品黑人一区二区三区国语馆| 亚洲欧美色图小说| 亚洲天堂小视频| 国产综合视频| 久久久亚洲综合网站| 成人日韩精品| 日韩中文字幕精品视频| 96日本xxxxxⅹxxx17| 亚洲欧美日韩国产另类专区| av影片在线播放| 亚洲激情自拍| 日韩在线电影一区| 欧美影院精品| 97视频在线观看视频免费视频| 亚州男人的天堂| 色偷偷久久一区二区三区| 三年中国中文观看免费播放| 久久97超碰色| 欧美在线观看成人| 成人一级毛片| 91高跟黑色丝袜呻吟在线观看| 暖暖在线中文免费日本| 日韩精品视频在线观看免费| 成年人晚上看的视频| 亚洲男人的天堂网| aa片在线观看视频在线播放| 奇米四色…亚洲| 成年人视频大全| 日本精品影院| 国产成人久久久精品一区| 日韩av毛片| 国产一区二区美女视频| 国产女同91疯狂高潮互磨| 亚洲v中文字幕| 成人一级片免费看| 91色九色蝌蚪| 五月六月丁香婷婷| 性欧美videos另类喷潮| 成人手机视频在线| 蜜桃精品wwwmitaows| 国产精品一区二区免费| 亚洲电影有码| 久久久久国产精品一区| 又爽又大又黄a级毛片在线视频| 日韩精品中文字幕在线一区| 亚洲天堂视频网站| 亚洲大型综合色站| 女人18毛片毛片毛片毛片区二| www.亚洲免费av| 国产精品自在自线| 国产精品久久久久久久免费软件| 亚洲不卡1区| 欧美日日夜夜| 成人激情av| 国产日本久久| 97超碰色婷婷| 精品人人视频| 九九精品在线播放| 在线免费观看黄| 日韩精品中文在线观看| www.色视频| 日韩欧美色综合网站| 中文字幕免费高清在线观看| 欧美日韩色婷婷| 精品无码久久久久| 一区二区三区中文在线观看| 日日骚一区二区三区| 国产精品久久久久久久蜜臀| 波多野结衣一二三四区| 久久夜色精品一区| www.狠狠爱| 欧美激情在线一区二区三区| 人妻丰满熟妇av无码久久洗澡 | av在线免费网站| 亚洲片av在线| 91xxx在线观看| 亚洲毛片在线观看| 熟妇人妻系列aⅴ无码专区友真希| 日韩一级精品视频在线观看| 亚洲中文一区二区三区| 777xxx欧美| 国产一区二区在线播放视频| 欧美天堂一区二区三区| 亚洲欧美一二三区| 色爱区综合激月婷婷| 国产精品xxxxxx| 欧美羞羞免费网站| 中文字幕在线播放av| 欧美又粗又大又爽| 亚洲欧美日韩一区二区三区四区| 欧美中文字幕一区二区三区亚洲 | 亚洲AV成人无码一二三区在线| 亚洲精品www| 午夜福利视频一区二区| 日韩精品中文字幕在线观看| 欧美成熟毛茸茸| 日韩精品高清在线| 91精品大全| 久久亚洲精品小早川怜子66| 18videosex性欧美麻豆| 美女视频黄免费的亚洲男人天堂| 黄色在线播放网站| 欧美高清激情视频| 黄视频网站在线观看| 日韩av三级在线观看| 韩国三级成人在线| 成人av片网址| 亚洲欧美成人vr| 日本不卡一二三区| 综合日韩在线| 男女激情无遮挡| 老司机精品导航| 中文字幕日韩综合| 韩国成人在线视频| 中文字幕5566| 国产精品视频你懂的| 欧美爱爱免费视频| 亚洲成人黄色影院| 亚洲一区二区三区高清视频| 日韩午夜在线影院| 欧美视频免费一区二区三区| 中国china体内裑精亚洲片| 免费网站成人| 热久久免费视频精品| 国产成人久久精品麻豆二区| 91老司机在线| 婷婷成人综合| 日韩亚洲视频| 欧美日韩第一区| 日日碰狠狠丁香久燥| 国产在线视频不卡二| 日韩精品视频网址| 国产欧美精品一区二区色综合 | 久久精品在这里| 国产一区二区精彩视频| 欧美日韩另类字幕中文| 国产精品区在线观看| 精品福利av导航| 天堂аⅴ在线地址8| 69av在线播放| 粉嫩av国产一区二区三区| 日韩av电影在线观看| 91综合在线| 大陆极品少妇内射aaaaa| 麻豆免费精品视频| avtt香蕉久久| 综合久久久久久| 亚洲国产av一区二区三区| 欧美刺激午夜性久久久久久久| jizz视频在线观看| 97免费视频在线| 亚洲不卡在线| 中文字幕中文字幕99| 久久亚洲欧美| 人妻换人妻a片爽麻豆| 中文字幕视频一区| 色网站在线播放| 亚洲成人激情在线| 超碰免费在线播放| 成人av在线亚洲| 日韩欧美天堂| 国产二区视频在线播放| 国产成人精品免费| 三级在线观看免费大全| 精品magnet| 亚洲aⅴ在线观看| 久久久这里只有精品视频| 精品国产乱码久久久久久樱花| 日本一区视频在线观看| 日本大胆欧美人术艺术动态| theav精尽人亡av| 性久久久久久久久| 精品人妻无码一区二区色欲产成人| 日韩在线视频免费观看| 99re66热这里只有精品4| 欧美午夜欧美| 亚洲一区图片| 人妻精品久久久久中文字幕| 午夜不卡av在线| 好吊色在线观看| 欧美亚洲国产成人精品| 免费看久久久| heyzo亚洲| 99久久婷婷国产综合精品| 日韩欧美成人一区二区三区| 亚洲国产精品高清久久久| caoporn-草棚在线视频最| av一区二区三区四区电影| av成人黄色| 久久久亚洲av波多野结衣| 黑人欧美xxxx| 天天干,天天操,天天射| 国产成人福利网站| 欧美少妇xxxx| 永久免费的av网站| **欧美大码日韩| 99精品在线视频观看| 久久99视频免费| xvideos.蜜桃一区二区| 国产91在线视频观看| 国产日韩欧美a| 一级特黄aaa大片在线观看| www.欧美精品一二三区| 国产精品17p| 91九色在线观看视频| 91网址在线看| av图片在线观看| 日韩三级影视基地| 911亚洲精品| 18岁网站在线观看| 亚洲视频狠狠干| 亚洲精品国偷拍自产在线观看蜜桃| 久久久久久久网站| 亚洲欧美成人vr| 精品久久久噜噜噜噜久久图片| 国产精品久久久久久久岛一牛影视 | 欧美色另类天堂2015| 免费黄色在线网站| 国产精品9999久久久久仙踪林| 国产精品亚洲综合久久| 成人在线观看免费高清| 日韩精品自拍偷拍| 欧美人与性动交xxⅹxx| 日本最新一区二区三区视频观看| 国产精品一区久久久久|