久久精品国产精品国产精品污,男人扒开添女人下部免费视频,一级国产69式性姿势免费视频,夜鲁夜鲁很鲁在线视频 视频,欧美丰满少妇一区二区三区,国产偷国产偷亚洲高清人乐享,中文 在线 日韩 亚洲 欧美,熟妇人妻无乱码中文字幕真矢织江,一区二区三区人妻制服国产

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > asp.net >内容正文

asp.net

【 .NET Core 3.0 】框架之五 || JWT权限验证

發(fā)布時(shí)間:2023/12/4 asp.net 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【 .NET Core 3.0 】框架之五 || JWT权限验证 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

前言

關(guān)于JWT一共三篇 姊妹篇,內(nèi)容分別從簡(jiǎn)單到復(fù)雜,一定要多看多想:

? ? ? 一、Swagger的使用 3.3 JWT權(quán)限驗(yàn)證【修改】

? ? ? 二、解決JWT權(quán)限驗(yàn)證過期問題

? ? ? 三、JWT完美實(shí)現(xiàn)權(quán)限與接口的動(dòng)態(tài)分配

?這里一共三個(gè)文章,目前是第一篇,剩下兩篇主要是在博客園,大家點(diǎn)擊閱讀原文,自行查看就行。

本文有配套視頻:https://www.bilibili.com/video/av58096866/?p=4

1、如何給接口實(shí)現(xiàn)權(quán)限驗(yàn)證?

其實(shí)關(guān)于這一塊,我思考了下,因?yàn)楫吘刮业捻?xiàng)目中是使用的vue + api 搭建一個(gè)前臺(tái)展示,大部分頁(yè)面都沒有涉及到權(quán)限驗(yàn)證,本來要忽略這一章節(jié),可是猶豫再三,還是給大家簡(jiǎn)單分析了下,個(gè)人還是希望陪大家一直搭建一個(gè)較為強(qiáng)大的,只要是涉及到后端那一定就需要?登錄=》驗(yàn)證了

根據(jù)維基百科定義,JWT(讀作 [/d??t/]),即JSON Web Tokens,是一種基于JSON的、用于在網(wǎng)絡(luò)上聲明某種主張的令牌(token)。JWT通常由三部分組成: 頭信息(header), 消息體(payload)和簽名(signature)。它是一種用于雙方之間傳遞安全信息的表述性聲明規(guī)范。JWT作為一個(gè)開放的標(biāo)準(zhǔn)(RFC 7519),定義了一種簡(jiǎn)潔的、自包含的方法,從而使通信雙方實(shí)現(xiàn)以JSON對(duì)象的形式安全的傳遞信息。

以上是JWT的官方解釋,可以看出JWT并不是一種只能權(quán)限驗(yàn)證的工具,而是一種標(biāo)準(zhǔn)化的數(shù)據(jù)傳輸規(guī)范。所以,只要是在系統(tǒng)之間需要傳輸簡(jiǎn)短但卻需要一定安全等級(jí)的數(shù)據(jù)時(shí),都可以使用JWT規(guī)范來傳輸。規(guī)范是不因平臺(tái)而受限制的,這也是JWT做為授權(quán)驗(yàn)證可以跨平臺(tái)的原因。

如果理解還是有困難的話,我們可以拿JWT和JSON類比:

JSON是一種輕量級(jí)的數(shù)據(jù)交換格式,是一種數(shù)據(jù)層次結(jié)構(gòu)規(guī)范。它并不是只用來給接口傳遞數(shù)據(jù)的工具,只要有層級(jí)結(jié)構(gòu)的數(shù)據(jù)都可以使用JSON來存儲(chǔ)和表示。當(dāng)然,JSON也是跨平臺(tái)的,不管是Win還是Linux,.NET還是Java,都可以使用它作為數(shù)據(jù)傳輸形式。

1)客戶端向授權(quán)服務(wù)系統(tǒng)發(fā)起請(qǐng)求,申請(qǐng)獲取“令牌”。

2)授權(quán)服務(wù)根據(jù)用戶身份,生成一張專屬“令牌”,并將該“令牌”以JWT規(guī)范返回給客戶端

3)客戶端將獲取到的“令牌”放到http請(qǐng)求的headers中后,向主服務(wù)系統(tǒng)發(fā)起請(qǐng)求。主服務(wù)系統(tǒng)收到請(qǐng)求后會(huì)從headers中獲取“令牌”,并從“令牌”中解析出該用戶的身份權(quán)限,然后做出相應(yīng)的處理(同意或拒絕返回資源)

?

?

零、生成 Token 令牌

關(guān)于JWT授權(quán),其實(shí)過程是很簡(jiǎn)單的,大家其實(shí)這個(gè)時(shí)候靜下心想一想就能明白,這個(gè)就是四步走:

首先我們需要一個(gè)具有一定規(guī)則的 Token 令牌,也就是 JWT 令牌(比如我們的公司門禁卡),//登錄

然后呢,我們?cè)俣x哪些地方需要什么樣的角色(比如領(lǐng)導(dǎo)辦公室我們是沒辦法進(jìn)去的),//授權(quán)機(jī)制

接下來,整個(gè)公司需要定一個(gè)規(guī)則,就是如何對(duì)這個(gè) Token 進(jìn)行驗(yàn)證,不能隨便寫個(gè)字條,這樣容易被造假(比如我們公司門上的每一道刷卡機(jī)),//認(rèn)證方案

最后,就是安全部門,開啟認(rèn)證中間件服務(wù)(那這個(gè)服務(wù)可以關(guān)閉的,比如我們電影里看到的黑客會(huì)把這個(gè)服務(wù)給關(guān)掉,這樣整個(gè)公司安保就形同虛設(shè)了)。//開啟中間件

?

那現(xiàn)在我們就是需要一個(gè)具有一定規(guī)則的 Token 令牌,大家可以參考 JwtHelper 這個(gè)類:

這個(gè)實(shí)體類就是用來生成 Token 的,代碼記錄如下:

/// <summary> /// 頒發(fā)JWT字符串 /// </summary> /// <param name="tokenModel"></param> /// <returns></returns> public static string IssueJwt(TokenModelJwt tokenModel) { string iss = Appsettings.app(new string[] { "Audience", "Issuer" }); string aud = Appsettings.app(new string[] { "Audience", "Audience" }); string secret = AppSecretConfig.Audience_Secret_String; //var claims = new Claim[] //old var claims = new List<Claim> { /* * 特別重要: 1、這里將用戶的部分信息,比如 uid 存到了Claim 中,如果你想知道如何在其他地方將這個(gè) uid從 Token 中取出來,請(qǐng)看下邊的SerializeJwt() 方法,或者在整個(gè)解決方案,搜索這個(gè)方法,看哪里使用了! 2、你也可以研究下 HttpContext.User.Claims ,具體的你可以看看 Policys/PermissionHandler.cs 類中是如何使用的。 */ new Claim(JwtRegisteredClaimNames.Jti, tokenModel.Uid.ToString()), new Claim(JwtRegisteredClaimNames.Iat, $"{new DateTimeOffset(DateTime.Now).ToUnixTimeSeconds()}"), new Claim(JwtRegisteredClaimNames.Nbf,$"{new DateTimeOffset(DateTime.Now).ToUnixTimeSeconds()}") , //這個(gè)就是過期時(shí)間,目前是過期1000秒,可自定義,注意JWT有自己的緩沖過期時(shí)間 new Claim (JwtRegisteredClaimNames.Exp,$"{new DateTimeOffset(DateTime.Now.AddSeconds(1000)).ToUnixTimeSeconds()}"), new Claim(ClaimTypes.Expiration, DateTime.Now.AddSeconds(1000).ToString()), new Claim(JwtRegisteredClaimNames.Iss,iss), new Claim(JwtRegisteredClaimNames.Aud,aud), //new Claim(ClaimTypes.Role,tokenModel.Role),//為了解決一個(gè)用戶多個(gè)角色(比如:Admin,System),用下邊的方法 }; // 可以將一個(gè)用戶的多個(gè)角色全部賦予; // 作者:DX 提供技術(shù)支持; claims.AddRange(tokenModel.Role.Split(',').Select(s => new Claim(ClaimTypes.Role, s))); //秘鑰 (SymmetricSecurityKey 對(duì)安全性的要求,密鑰的長(zhǎng)度太短會(huì)報(bào)出異常) var key = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(secret)); var creds = new SigningCredentials(key, SecurityAlgorithms.HmacSha256); var jwt = new JwtSecurityToken( issuer: iss, claims: claims, signingCredentials: creds); var jwtHandler = new JwtSecurityTokenHandler(); var encodedJwt = jwtHandler.WriteToken(jwt); return encodedJwt; } /// <summary> /// 令牌 /// </summary> public class TokenModelJwt { /// <summary> /// Id /// </summary> public long Uid { get; set; } /// <summary> /// 角色 /// </summary> public string Role { get; set; } /// <summary> /// 職能 /// </summary> public string Work { get; set; } }

這里邊有一個(gè) Appsettings 類,主要的作用是自動(dòng)讀取項(xiàng)目配置文件 appsettings.json 。

?

public class AppSecretConfig { private static string Audience_Secret = Appsettings.app(new string[] { "Audience", "Secret" }); private static string Audience_Secret_File = Appsettings.app(new string[] { "Audience", "SecretFile" }); public static string Audience_Secret_String => InitAudience_Secret(); private static string InitAudience_Secret() { var securityString = DifDBConnOfSecurity(Audience_Secret_File); if (!string.IsNullOrEmpty(Audience_Secret_File)&& !string.IsNullOrEmpty(securityString)) { return securityString; } else { return Audience_Secret; } } private static string DifDBConnOfSecurity(params string[] conn) { foreach (var item in conn) { try { if (File.Exists(item)) { return File.ReadAllText(item).Trim(); } } catch (System.Exception) { } } return conn[conn.Length - 1]; } }

?

?

這個(gè)接口如何調(diào)用呢,很簡(jiǎn)單,就是我們的登錄api:

public async Task<object> GetJwtStr(string name, string pass) { string jwtStr = string.Empty; bool suc = false; // 獲取用戶的角色名,請(qǐng)暫時(shí)忽略其內(nèi)部是如何獲取的,可以直接用 var userRole="Admin"; 來代替更好理解。 var userRole = await _sysUserInfoServices.GetUserRoleNameStr(name, pass); if (userRole != null) { // 將用戶id和角色名,作為單獨(dú)的自定義變量封裝進(jìn) token 字符串中。 TokenModelJwt tokenModel = new TokenModelJwt {Uid = 1, Role = userRole}; jwtStr = JwtHelper.IssueJwt(tokenModel);//登錄,獲取到一定規(guī)則的 Token 令牌 suc = true; } else { jwtStr = "login fail!!!"; } return Ok(new { success = suc, token = jwtStr }); }

?

現(xiàn)在我們獲取到Token了,那如何進(jìn)行授權(quán)認(rèn)證呢,別著急,重頭戲馬上到來!

?

一、JWT授權(quán)認(rèn)證流程——自定義中間件

在之前的搭建中,swagger已經(jīng)基本成型,其實(shí)其功能之多,不是我這三篇所能寫完的,想要添加權(quán)限,先從服務(wù)開始

0、Swagger中開啟JWT服務(wù)

我們要測(cè)試 JWT 授權(quán)認(rèn)證,就必定要輸入 Token令牌,那怎么輸入呢,平時(shí)的話,我們可以使用 Postman 來控制輸入,就是在請(qǐng)求的時(shí)候,在 Header 中,添加Authorization屬性,

但是我們現(xiàn)在使用了 Swagger 作為接口文檔,那怎么輸入呢,別著急, Swagger 已經(jīng)幫我們實(shí)現(xiàn)了這個(gè)錄入 Token令牌的功能:

在startup.cs 中的 ConfigureServices? ->?AddSwaggerGen?服務(wù)中,增加以下代碼,注意是swagger服務(wù)內(nèi)部:

var basePath = Microsoft.DotNet.PlatformAbstractions.ApplicationEnvironment.ApplicationBasePath; services.AddSwaggerGen(c => { //遍歷出全部的版本,做文檔信息展示 typeof(ApiVersions).GetEnumNames().ToList().ForEach(version => { c.SwaggerDoc(version, new OpenApiInfo { // {ApiName} 定義成全局變量,方便修改 Version = version, Title = $"{ApiName} 接口文檔——Netcore 3.0", Description = $"{ApiName} HTTP API " + version, Contact = new OpenApiContact { Name = ApiName, Email = "Blog.Core@xxx.com", Url = new Uri("https://www.jianshu.com/u/94102b59cc2a") }, License = new OpenApiLicense { Name = ApiName, Url = new Uri("https://www.jianshu.com/u/94102b59cc2a") } }); c.OrderActionsBy(o => o.RelativePath); }); //就是這里 var xmlPath = Path.Combine(basePath, "Blog.Core.xml");//這個(gè)就是剛剛配置的xml文件名 c.IncludeXmlComments(xmlPath, true);//默認(rèn)的第二個(gè)參數(shù)是false,這個(gè)是controller的注釋,記得修改 var xmlModelPath = Path.Combine(basePath, "Blog.Core.Model.xml");//這個(gè)就是Model層的xml文件名 c.IncludeXmlComments(xmlModelPath); c.OperationFilter<AddResponseHeadersFilter>(); c.OperationFilter<AppendAuthorizeToSummaryOperationFilter>(); c.OperationFilter<SecurityRequirementsOperationFilter>(); #region Token綁定到ConfigureServices c.AddSecurityDefinition("oauth2",?new?OpenApiSecurityScheme { Description = "JWT授權(quán)(數(shù)據(jù)將在請(qǐng)求頭中進(jìn)行傳輸) 直接在下框中輸入Bearer {token}(注意兩者之間是一個(gè)空格)\"", Name = "Authorization",//jwt默認(rèn)的參數(shù)名稱 In = ParameterLocation.Header,//jwt默認(rèn)存放Authorization信息的位置(請(qǐng)求頭中) Type = SecuritySchemeType.ApiKey }); #endregion });

?

然后執(zhí)行代碼,就可以在 swagger/index.html 頁(yè)面里看到這個(gè)Token入口了:

?

?

大家點(diǎn)開,看到輸入框,在輸入Token的時(shí)候,需要在Token令牌的前邊加上Bearer (為什么要加這個(gè),下文會(huì)說明,請(qǐng)一定要注意看,一定要明白為啥要帶,因?yàn)樗婕暗搅耸裁词鞘跈?quán),什么是認(rèn)證,還要自定義認(rèn)證中間件還是官方認(rèn)證中間件的區(qū)別,請(qǐng)注意看下文),比如是這樣的:

但是請(qǐng)注意!如果你使用的是中間件 app.UseMiddleware<JwtTokenAuth>(),或者 app.UseJwtTokenAuth() 的時(shí)候(兩種寫法一樣) ,要是使用 Bearer xxxx傳值的時(shí)候,記得在中間件的方法中,把Token的 “Bearer 空格” 字符給截取掉,這樣的:

?

1:API接口授權(quán)策略

這里可以直接在api接口上,直接設(shè)置該接口所對(duì)應(yīng)的角色權(quán)限信息:

這個(gè)時(shí)候我們就需要對(duì)每一個(gè)接口設(shè)置對(duì)應(yīng)的 Roles 信息,但是如果我們的接口需要對(duì)應(yīng)多個(gè)角色的時(shí)候,我們就可以直接寫多個(gè):

?

這里有一個(gè)情況,如果角色多的話,不僅不利于我們閱讀,還可能在配置的時(shí)候少一兩個(gè)role,比如這個(gè) api接口1 少了一個(gè) system 的角色,再比如那個(gè) api接口2 把 Admin 角色寫成了 Adnin 這種不必要的錯(cuò)誤,真是很難受,那怎么辦呢,欸!這個(gè)時(shí)候就出現(xiàn)了基于策略的授權(quán)機(jī)制:

我們?cè)?ConfigureService 中可以這么設(shè)置:

// 1【授權(quán)】、這個(gè)和上邊的異曲同工,好處就是不用在controller中,寫多個(gè) roles 。 // 然后這么寫 [Authorize(Policy = "Admin")] services.AddAuthorization(options => { options.AddPolicy("Client", policy => policy.RequireRole("Client").Build()); options.AddPolicy("Admin", policy => policy.RequireRole("Admin").Build()); options.AddPolicy("SystemOrAdmin", policy => policy.RequireRole("Admin", "System")); });

?

這樣的話,我們只需要在 controller 或者 action 上,直接寫策略名就可以了:

[HttpGet] [Authorize(Policy = "SystemOrAdmin")] public ActionResult<IEnumerable<string>> Get() { return new string[] { "value1", "value2" }; }

?

這樣我們的第一步就完成了。繼續(xù)走第二步,身份驗(yàn)證方案。

?關(guān)于授權(quán)認(rèn)證有兩種方式,可以使用官方的認(rèn)證方式,也可以使用自定義中間件的方法,具體請(qǐng)往下看,咱們先說說如何進(jìn)行自定義認(rèn)證。

?

2、自定義認(rèn)證之身份驗(yàn)證設(shè)置

上邊第一步中,咱們已經(jīng)對(duì)每一個(gè)接口api設(shè)置好了 授權(quán)機(jī)制 ,那這里就要開始認(rèn)證,咱們先看看如何實(shí)現(xiàn)自定義的認(rèn)證:

?

JwtTokenAuth,一個(gè)中間件,用來過濾每一個(gè)http請(qǐng)求,就是每當(dāng)一個(gè)用戶發(fā)送請(qǐng)求的時(shí)候,都先走這一步,然后再去訪問http請(qǐng)求的接口

?

?

?

?

前兩步咱們都完成了,從授權(quán)到自定義身份驗(yàn)證方案,就剩下最后一步,開啟中間件了。

?

3:開啟自定義認(rèn)證中間件,實(shí)現(xiàn)Http信道攔截

這個(gè)很簡(jiǎn)單,只需要在 startup.cs ->?Configure 中配置認(rèn)證中間件

?

4:開始測(cè)試

這個(gè)時(shí)候我們的自定義JWT授權(quán)認(rèn)證已經(jīng)結(jié)束了,我們開始測(cè)試,假設(shè)對(duì)某一個(gè) api接口設(shè)置了權(quán)限:

?

在我們沒有輸入 Token 的時(shí)候,點(diǎn)擊測(cè)試接口會(huì)報(bào)錯(cuò):

?

?

這個(gè)錯(cuò)誤很明顯,就是說我們沒有配置默認(rèn)的認(rèn)證方案,也沒有自定義身份驗(yàn)證方案,

但是這個(gè)時(shí)候我們?cè)龠M(jìn)行試驗(yàn):

剛剛上邊的情況是我們沒有輸入 Token ,但是如果我們輸入token呢?看看是不是又會(huì)報(bào)錯(cuò)?

?

?

我們發(fā)現(xiàn)了什么?!!沒有報(bào)錯(cuò),這是因?yàn)槭裁?#xff1f;欸,聰明的你應(yīng)該想到了,請(qǐng)往下看,什么是 聲明主體 ClaimsPrincipal 。

?

5、聲明主體 ClaimsPrincipal 是如何保存的?

在上邊,我們解決了一些問題,同時(shí)也出現(xiàn)了一個(gè)問題,就是為什么不輸入 Token 就報(bào)錯(cuò)了,而輸入了 Bearer xxxxxxxxxxx 這樣的Token 就不報(bào)錯(cuò)了呢?這里要說到 聲明主體的作用了。

就是我們上邊寫的自定義中間件,大家可以再來看看:

?

?這個(gè)時(shí)候你就應(yīng)該明白了吧,

1、首先我們自定義授權(quán)認(rèn)證,為啥可以不用進(jìn)行下邊截圖中官方認(rèn)證那一塊的配置:

?

?

因?yàn)檫@一塊官方的服務(wù),就等同于我們的自定義身份驗(yàn)證方案——中間件

2、你應(yīng)該明白,為什么不輸入token的時(shí)候報(bào)錯(cuò),而輸入了就不報(bào)錯(cuò)了?

因?yàn)闆]有輸入的時(shí)候,直接 return了,并沒有在 httpContext 上下文中,進(jìn)行配置聲明主體?httpContext.User = principal 。

所以說,我們無論是自定義中間件的自定義身份驗(yàn)證方案,還是官方的認(rèn)證方案,只要我們的登錄了,也就是說,只要我們實(shí)現(xiàn)了某種規(guī)則:

?

這樣,就會(huì)觸發(fā)我們的內(nèi)部服務(wù),將當(dāng)前 token 所攜帶的信息,進(jìn)行自動(dòng)解碼,然后填充到聲明主體里(自定義中間件需要手動(dòng)配置,官方的自動(dòng)就實(shí)現(xiàn)該操作),

所以這個(gè)時(shí)候我們就可以輕松的拿到想到的東西,比如這里這些:

?

?

6、無策略依然授權(quán)錯(cuò)誤

上邊咱們說到了,如果我們自定義中間件的話,在中間件中,我們?cè)?Claims 添加了角色的相關(guān)權(quán)限:

而且很自然的在 接口中,也是分為兩種情況:要么沒有加權(quán)限,要么就是基于角色的加權(quán):

?

?但是如果這個(gè)時(shí)候,我們直接對(duì)接口增加 無任何策略 的加權(quán):

?

就是沒有任何的策略,我們登錄,然后添加 token,一看,還是報(bào)錯(cuò)了!

本來 [Authorize] 這種 無策略 的授權(quán),按理說只需要我們登錄了就可以了,不需要其他任何限制就可以訪問,但是現(xiàn)在依然報(bào)錯(cuò)401 ,證明我們的中間件并不能對(duì)這種方案起到效果,你可能會(huì)問,那帶有 Roles=“Admin” 的為啥可以呢?反而這種無策略的不行呢,我個(gè)人感覺可能還是中間件咱們?cè)O(shè)計(jì)的解決方案就是基于角色授權(quán)的那種,(我也再研究研究,看看能不能完善下這個(gè)自定義中間件,使它能適應(yīng)這個(gè) 無具體策略 的加權(quán)方案,但是可能寫到最后,就是無限接近官方的授權(quán)中間件了哈哈)。

這個(gè)時(shí)候我們發(fā)現(xiàn),自定義中間件還是挺麻煩的,但是你通過自己使用自定義授權(quán)中間件,不僅僅可以了解到中間件的使用,還可以了解 netcore 到底是如何授權(quán)的機(jī)制,但是我還是建議大家使用官方的認(rèn)證方案,畢竟他們考慮的很全面的。

?

那么如果我們想要用官方的認(rèn)證方案呢,要怎么寫呢?請(qǐng)往下看:

?

二、JWT授權(quán)認(rèn)證流程——官方認(rèn)證

上邊咱們說完了自定義中間件的形式,發(fā)現(xiàn)了也方便的地方,也有不方便之處,雖然靈活的使用了自定義身份驗(yàn)證,但是畢竟很受限,而且也無法對(duì)過期時(shí)間進(jìn)行判斷,以后的文章你會(huì)看到《36 ║解決JWT自定義中間件授權(quán)過期問題》,這里先不說,重點(diǎn)說說,如何通過官方認(rèn)證來實(shí)現(xiàn)。

1:API接口授權(quán)策略

和上邊自定義的過程一模一樣,略。

?

2、官方默認(rèn)認(rèn)證配置

在剛剛上邊,咱們說到了一個(gè)錯(cuò)誤,不知道還有沒有印象:

No authenticationScheme was specified, and there was no DefaultChallengeScheme found.?

就是這個(gè),自定義認(rèn)證中間件呢,就是前者,那官方的,就是后者 DefaultChallengeScheme;

?

很簡(jiǎn)單,只需要在 configureService 中,添加【統(tǒng)一認(rèn)證】即可:

#region 【第二步:配置認(rèn)證服務(wù)】 // 令牌驗(yàn)證參數(shù) var tokenValidationParameters = new TokenValidationParameters { ValidateIssuerSigningKey = true, IssuerSigningKey = signingKey, ValidateIssuer = true, ValidIssuer = audienceConfig["Issuer"],//發(fā)行人 ValidateAudience = true, ValidAudience = audienceConfig["Audience"],//訂閱人 ValidateLifetime = true, ClockSkew = TimeSpan.FromSeconds(30), RequireExpirationTime = true, }; //2.1【認(rèn)證】、core自帶官方JWT認(rèn)證 // 開啟Bearer認(rèn)證 services.AddAuthentication("Bearer") // 添加JwtBearer服務(wù) .AddJwtBearer(o => { o.TokenValidationParameters = tokenValidationParameters; o.Events = new JwtBearerEvents { OnAuthenticationFailed = context => { // 如果過期,則把<是否過期>添加到,返回頭信息中 if (context.Exception.GetType() == typeof(SecurityTokenExpiredException)) { context.Response.Headers.Add("Token-Expired", "true"); } return Task.CompletedTask; } }; });

上邊代碼中出現(xiàn)的部分參數(shù)定義(如果還看不懂,請(qǐng)看項(xiàng)目代碼):

//讀取配置文件 var audienceConfig = Configuration.GetSection("Audience"); var symmetricKeyAsBase64 = AppSecretConfig.Audience_Secret_String; var keyByteArray = Encoding.ASCII.GetBytes(symmetricKeyAsBase64); var signingKey = new SymmetricSecurityKey(keyByteArray); var signingCredentials = new SigningCredentials(signingKey, SecurityAlgorithms.HmacSha256);

?

具體的每個(gè)配置的含義呢,我的代碼里都有,大家自己可以看看,都很簡(jiǎn)單。

劃重點(diǎn):我們就是用的這個(gè)官方默認(rèn)的方案,來替換了我們自定義中間件的身份驗(yàn)證方案,從而達(dá)到目的,說白了,就是官方封裝了一套方案,這樣我們就不用寫中間件了。

?

3、配置官方認(rèn)證中間件

這個(gè)很簡(jiǎn)單,還是在 configure 中添加:

注意中間件的順序,UseRouting放在最前邊,UseAuthentication在UseAuthorization前邊,:

這樣就完成了,結(jié)果也不用看了,大家自行測(cè)試即可,無論添加或者不添加 token ,都不會(huì)報(bào)錯(cuò)。

?

?

4、補(bǔ)充:什么是 Claim

如果對(duì)?claim[] 定義不是很理解,可以看看dudu大神的解釋《理解ASP.NET Core驗(yàn)證模型(Claim, ClaimsIdentity, ClaimsPrincipal)不得不讀的英文博文》:

這篇英文博文是 Andrew Lock 寫的 Introduction to Authentication with ASP.NET Core 。

?

5、其他注意點(diǎn)

1、然后再Startup的Configure中,將TokenAuth注冊(cè)中間件

注意1:HTTP管道是有先后順序的,一定要寫在 app.Mvc() 之前,否則不起作用。

?

注意2:這里我們是自定義了認(rèn)證中間件,來對(duì)JWT的字符串進(jìn)行自定義授權(quán)認(rèn)證,所以上邊都很正常,甚至我們的Token可以不用帶 Bearer 特定字符串,如果你以后遇到了使用官方認(rèn)證中間件 UseAuthentication(),那么就必須在 configureService 中對(duì)認(rèn)證進(jìn)行配置(而且Token傳遞的時(shí)候,也必須帶上"Bearer " 這樣的特定字符串,這也就是解釋了上文,為啥要帶Bearer),這里先打個(gè)預(yù)防針,因?yàn)槲业淖钚?Github 上已經(jīng)使用了官方的認(rèn)證中間件,所以除了上邊配置的那些服務(wù)外,還需要配置 Service.AddAuthentication 和 Service.AddJwtBearer 兩個(gè)服務(wù)。

?

?如果你感覺上邊沒看懂,繼續(xù)用下邊的知識(shí)點(diǎn)來鞏固吧!

?


三、核心知識(shí)點(diǎn)梳理

?

1、Bearer認(rèn)證

HTTP提供了一套標(biāo)準(zhǔn)的身份驗(yàn)證框架:服務(wù)器可以用來針對(duì)客戶端的請(qǐng)求發(fā)送質(zhì)詢(challenge),客戶端根據(jù)質(zhì)詢提供身份驗(yàn)證憑證。質(zhì)詢與應(yīng)答的工作流程如下:服務(wù)器端向客戶端返回401(Unauthorized,未授權(quán))狀態(tài)碼,并在WWW-Authenticate頭中添加如何進(jìn)行驗(yàn)證的信息,其中至少包含有一種質(zhì)詢方式。然后客戶端可以在請(qǐng)求中添加Authorization頭進(jìn)行驗(yàn)證,其Value為身份驗(yàn)證的憑證信息。

在HTTP標(biāo)準(zhǔn)驗(yàn)證方案中,我們比較熟悉的是"Basic"和"Digest",前者將用戶名密碼使用BASE64編碼后作為驗(yàn)證憑證,后者是Basic的升級(jí)版,更加安全,因?yàn)锽asic是明文傳輸密碼信息,而Digest是加密后傳輸。在前文介紹的Cookie認(rèn)證屬于Form認(rèn)證,并不屬于HTTP標(biāo)準(zhǔn)驗(yàn)證。

本文要介紹的Bearer驗(yàn)證也屬于HTTP協(xié)議標(biāo)準(zhǔn)驗(yàn)證,它隨著OAuth協(xié)議而開始流行,詳細(xì)定義見:?RFC 6570。

A security token with the property that any party in possession of the token (a "bearer") can use the token in any way that any other party in possession of it can. Using a bearer token does not require a bearer to prove possession of cryptographic key material (proof-of-possession).

Bearer驗(yàn)證中的憑證稱為BEARER_TOKEN,或者是access_token,它的頒發(fā)和驗(yàn)證完全由我們自己的應(yīng)用程序來控制,而不依賴于系統(tǒng)和Web服務(wù)器,Bearer驗(yàn)證的標(biāo)準(zhǔn)請(qǐng)求方式如下:

Authorization: Bearer [BEARER_TOKEN]

那么使用Bearer驗(yàn)證有什么好處呢?

  • CORS: cookies + CORS 并不能跨不同的域名。而Bearer驗(yàn)證在任何域名下都可以使用HTTP header頭部來傳輸用戶信息。

  • 對(duì)移動(dòng)端友好: 當(dāng)你在一個(gè)原生平臺(tái)(iOS, Android, WindowsPhone等)時(shí),使用Cookie驗(yàn)證并不是一個(gè)好主意,因?yàn)槟愕煤虲ookie容器打交道,而使用Bearer驗(yàn)證則簡(jiǎn)單的多。

  • CSRF: 因?yàn)锽earer驗(yàn)證不再依賴于cookies, 也就避免了跨站請(qǐng)求攻擊。

  • 標(biāo)準(zhǔn):在Cookie認(rèn)證中,用戶未登錄時(shí),返回一個(gè)302到登錄頁(yè)面,這在非瀏覽器情況下很難處理,而Bearer驗(yàn)證則返回的是標(biāo)準(zhǔn)的401 challenge。

2、JWT(JSON WEB TOKEN)

上面介紹的Bearer認(rèn)證,其核心便是BEARER_TOKEN,而最流行的Token編碼方式便是:JSON WEB TOKEN。

Json web token (JWT), 是為了在網(wǎng)絡(luò)應(yīng)用環(huán)境間傳遞聲明而執(zhí)行的一種基于JSON的開放標(biāo)準(zhǔn)(RFC 7519)。該token被設(shè)計(jì)為緊湊且安全的,特別適用于分布式站點(diǎn)的單點(diǎn)登錄(SSO)場(chǎng)景。JWT的聲明一般被用來在身份提供者和服務(wù)提供者間傳遞被認(rèn)證的用戶身份信息,以便于從資源服務(wù)器獲取資源,也可以增加一些額外的其它業(yè)務(wù)邏輯所必須的聲明信息,該token也可直接被用于認(rèn)證,也可被加密。

JWT是由.分割的如下三部分組成:

頭部(Header)

Header 一般由兩個(gè)部分組成:

  • alg

  • typ

alg是所使用的hash算法,如:HMAC SHA256或RSA,typ是Token的類型,在這里就是:JWT。

{"alg": "HS256","typ": "JWT" }

然后使用Base64Url編碼成第一部分:

eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.<second part>.<third part>

載荷(Payload)

這一部分是JWT主要的信息存儲(chǔ)部分,其中包含了許多種的聲明(claims)。

Claims的實(shí)體一般包含用戶和一些元數(shù)據(jù),這些claims分成三種類型:

  • reserved claims:預(yù)定義的 一些聲明,并不是強(qiáng)制的但是推薦,它們包括 iss (issuer), exp (expiration time), sub (subject),aud(audience) 等(這里都使用三個(gè)字母的原因是保證 JWT 的緊湊)。

  • public claims: 公有聲明,這個(gè)部分可以隨便定義,但是要注意和 IANA JSON Web Token 沖突。

  • private claims: 私有聲明,這個(gè)部分是共享被認(rèn)定信息中自定義部分。

一個(gè)簡(jiǎn)單的Pyload可以是這樣子的:

{"sub": "1234567890","name": "John Doe","admin": true }

這部分同樣使用Base64Url編碼成第二部分:

eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWV9.<third part>

簽名(Signature)

Signature是用來驗(yàn)證發(fā)送者的JWT的同時(shí)也能確保在期間不被篡改。

在創(chuàng)建該部分時(shí)候你應(yīng)該已經(jīng)有了編碼后的Header和Payload,然后使用保存在服務(wù)端的秘鑰對(duì)其簽名,一個(gè)完整的JWT如下:

eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWV9.TJVA95OrM7E2cBab30RMHrHDcEfxjoYZgeFONFh7HgQ

因此使用JWT具有如下好處:

  • 通用:因?yàn)閖son的通用性,所以JWT是可以進(jìn)行跨語(yǔ)言支持的,像JAVA,JavaScript,NodeJS,PHP等很多語(yǔ)言都可以使用。

  • 緊湊:JWT的構(gòu)成非常簡(jiǎn)單,字節(jié)占用很小,可以通過 GET、POST 等放在 HTTP 的 header 中,非常便于傳輸。

  • 擴(kuò)展:JWT是自我包涵的,包含了必要的所有信息,不需要在服務(wù)端保存會(huì)話信息, 非常易于應(yīng)用的擴(kuò)展。

關(guān)于更多JWT的介紹,網(wǎng)上非常多,這里就不再多做介紹。下面,演示一下 ASP.NET Core 中 JwtBearer 認(rèn)證的使用方式。

3、示例

模擬Token

ASP.NET Core 內(nèi)置的JwtBearer驗(yàn)證,并不包含Token的發(fā)放,我們先模擬一個(gè)簡(jiǎn)單的實(shí)現(xiàn):

[HttpPost("authenticate")] public IActionResult Authenticate([FromBody]UserDto userDto) { var user = _store.FindUser(userDto.UserName, userDto.Password); if (user == null) return Unauthorized(); var tokenHandler = new JwtSecurityTokenHandler(); var key = Encoding.ASCII.GetBytes(Consts.Secret); var authTime = DateTime.UtcNow; var expiresAt = authTime.AddDays(7); var tokenDescriptor = new SecurityTokenDescriptor { Subject = new ClaimsIdentity(new Claim[] { new Claim(JwtClaimTypes.Audience,"api"), new Claim(JwtClaimTypes.Issuer,"http://localhost:5200"), new Claim(JwtClaimTypes.Id, user.Id.ToString()), new Claim(JwtClaimTypes.Name, user.Name), new Claim(JwtClaimTypes.Email, user.Email), new Claim(JwtClaimTypes.PhoneNumber, user.PhoneNumber) }), Expires = expiresAt, SigningCredentials = new SigningCredentials(new SymmetricSecurityKey(key), SecurityAlgorithms.HmacSha256Signature) }; var token = tokenHandler.CreateToken(tokenDescriptor); var tokenString = tokenHandler.WriteToken(token); return Ok(new { access_token = tokenString, token_type = "Bearer", profile = new { sid = user.Id, name = user.Name, auth_time = new DateTimeOffset(authTime).ToUnixTimeSeconds(), expires_at = new DateTimeOffset(expiresAt).ToUnixTimeSeconds() } }); }

如上,使用微軟提供的Microsoft.IdentityModel.Tokens幫助類(源碼地址:azure-activedirectory-identitymodel-extensions-for-dotnet),可以很容易的創(chuàng)建出JwtToen,就不再多說。

注冊(cè)JwtBearer認(rèn)證

首先添加JwtBearer包引用:

dotnet add package Microsoft.AspNetCore.Authentication.JwtBearer --version 2.0.0

然后在Startup類中添加如下配置

在JwtBearerOptions的配置中,通常IssuerSigningKey(簽名秘鑰),?ValidIssuer(Token頒發(fā)機(jī)構(gòu)),?ValidAudience(頒發(fā)給誰(shuí))?三個(gè)參數(shù)是必須的,后兩者用于與TokenClaims中的Issuer和Audience進(jìn)行對(duì)比,不一致則驗(yàn)證失敗(與上面發(fā)放Token中的Claims對(duì)應(yīng))。

而NameClaimType和RoleClaimType需與Token中的ClaimType一致,在IdentityServer中也是使用的JwtClaimTypes,否則會(huì)造成User.Identity.Name為空等問題。

添加受保護(hù)資源

創(chuàng)建一個(gè)需要授權(quán)的控制器,直接使用Authorize即可:

[Authorize] [Route("api/[controller]")] public class SampleDataController : Controller {[HttpGet("[action]")]public IEnumerable<WeatherForecast> WeatherForecasts(){return ...} }

運(yùn)行

最后運(yùn)行,直接訪問/api/SampleData/WeatherForecasts,將返回一個(gè)401:

HTTP/1.1 401 Unauthorized Server: Kestrel Content-Length: 0 WWW-Authenticate: Bearer

讓我們調(diào)用api/oauth/authenticate,獲取一個(gè)JWT:

請(qǐng)求: POST http://localhost:5200/api/oauth/authenticate HTTP/1.1 content-type: application/json{"username": "alice","password": "alice" }響應(yīng): HTTP/1.1 200 OK {"access_token":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjEiLCJuYW1lIjoiYWxpY2UiLCJlbWFpbCI6ImFsaWNlQGdtYWlsLmNvbSIsInBob25lX251bWJlciI6IjE4ODAwMDAwMDAxIiwibmJmIjoxNTA5NDY0MzQwLCJleHAiOjE1MTAwNjkxNDAsImlhdCI6MTUwOTQ2NDM0MH0.Y1TDz8KjLRh_vjQ_3iYP4oJw-fmhoboiAGPqIZ-ooNc","token_type":"Bearer","profile":{"sid":1,"name":"alice","auth_time":1509464340,"expires_at":1510069140}}

最后使用該Token,再次調(diào)用受保護(hù)資源:

GET http://localhost:5200/api/SampleData/WeatherForecasts HTTP/1.1 Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjEiLCJuYW1lIjoiYWxpY2UiLCJlbWFpbCI6ImFsaWNlQGdtYWlsLmNvbSIsInBob25lX251bWJlciI6IjE4ODAwMDAwMDAxIiwibmJmIjoxNTA5NDY0MzQwLCJleHAiOjE1MTAwNjkxNDAsImlhdCI6MTUwOTQ2NDM0MH0.Y1TDz8KjLRh_vjQ_3iYP4oJw-fmhoboiAGPqIZ-ooNc

授權(quán)成功,返回了預(yù)期的數(shù)據(jù):

HTTP/1.1 200 OK Content-Type: application/json; charset=utf-8[{"dateFormatted":"2017/11/3","temperatureC":35,"summary":"Chil l y","temperatureF":94}]

4、擴(kuò)展

自定義Token獲取方式

JwtBearer認(rèn)證中,默認(rèn)是通過Http的Authorization頭來獲取的,這也是最推薦的做法,但是在某些場(chǎng)景下,我們可能會(huì)使用Url或者是Cookie來傳遞Token,那要怎么來實(shí)現(xiàn)呢?

其實(shí)實(shí)現(xiàn)起來非常簡(jiǎn)單,如前幾章介紹的一樣,JwtBearer也在認(rèn)證的各個(gè)階段為我們提供了事件,來執(zhí)行我們的自定義邏輯:

.AddJwtBearer(o => {o.Events = new JwtBearerEvents(){OnMessageReceived = context =>{context.Token = context.Request.Query["access_token"];return Task.CompletedTask;}};o.TokenValidationParameters = new TokenValidationParameters{...};

然后在Url中添加access_token=[token],直接在瀏覽器中訪問:

同樣的,我們也可以很容易的在Cookie中讀取Token,就不再演示。

除了OnMessageReceived外,還提供了如下幾個(gè)事件:

  • TokenValidated:在Token驗(yàn)證通過后調(diào)用。

  • AuthenticationFailed: 認(rèn)證失敗時(shí)調(diào)用。

  • Challenge: 未授權(quán)時(shí)調(diào)用。

使用OIDC服務(wù)

在上面的示例中,我們簡(jiǎn)單模擬的Token頒發(fā),功能非常簡(jiǎn)單,并不適合在生產(chǎn)環(huán)境中使用,可是微軟也沒有提供OIDC服務(wù)的實(shí)現(xiàn),好在.NET社區(qū)中提供了幾種實(shí)現(xiàn),可供我們選擇:

NameDescription
AspNet.Security.OpenIdConnect.Server (ASOS)Low-level/protocol-first OpenID Connect server framework for ASP.NET Core and OWIN/Katana
IdentityServer4OpenID Connect and OAuth 2.0 framework for ASP.NET Core - officially certified by the OpenID Foundation and under governance of the .NET Foundation
OpenIddictEasy-to-use OpenID Connect server for ASP.NET Core
PwdLessSimple, stateless, passwordless authentication for ASP.NET Core

我們?cè)谶@里使用IdentityServer4來搭建一個(gè)OIDC服務(wù)器,具體代碼會(huì)給大家?guī)砘煜?#xff0c;所以忽略了。

?

?

四、常見疑惑解析

1、JWT里會(huì)存在一些用戶的信息,比如用戶id、角色role 等等,這樣會(huì)不會(huì)不安全,信息被泄露?

答:JWT 本來就是一種無狀態(tài)的登錄授權(quán)認(rèn)證,用來替代每次請(qǐng)求都需要輸入用戶名+密碼的尷尬情況,存在一些不重要的明文很正常,只要不把隱私放出去就行,就算是被動(dòng)機(jī)不良的人得到,也做不了什么事情。

2、生成 JWT 的時(shí)候需要 secret ,但是 解密的時(shí)候 為啥沒有用到 secret ?

答:secret的作用,主要是用來防止 token 被偽造和篡改的,想想上邊的那個(gè)第一個(gè)問題,用戶得到了你的令牌,獲取到了你的個(gè)人信息,這個(gè)是沒事兒的,他什么也干不了,但是如果用戶自己隨便的生成一個(gè) token ,帶上你的uid,豈不是隨便就可以訪問資源服務(wù)器了,所以這個(gè)時(shí)候就需要一個(gè) secret 來生成 token,這樣的話,就能保證數(shù)字簽名的正確性。

  而且,在我們資源服務(wù)器里,將token解析的時(shí)候,微軟封裝了方法,將secret進(jìn)行校驗(yàn)了,這就是保證了token的安全性,從而保證我們的資源api是安全的,你不信的話,可以用你網(wǎng)站的 token 來訪問我的在線項(xiàng)目,就算是 uid,role等等全部正確,還是不能訪問我的網(wǎng)站,因?yàn)槟悴恢牢业膕ecret,所以你生成的令牌對(duì)我的是無效的。

?

可以看看這個(gè)視頻:https://www.bilibili.com/video/av52076900?share_medium=android&share_source=qq&bbid=XZ786B57591674D68847894D8F16996AAFFB6&ts=1559452290064

?

?

?

五、結(jié)語(yǔ)

好啦!項(xiàng)目準(zhǔn)備階段就這么結(jié)束了,以后咱們就可以直接用swagger來調(diào)試了,而不是每次都用F5運(yùn)行等,接下來我們就要正式開始搭建項(xiàng)目了,主要采用的是泛型倉(cāng)儲(chǔ)模式 Repository+Service,也是一種常見的模式。

六、Github

本系列開源地址

https://github.com/anjoy8/Blog.Core.git

本文章小Demo

https://github.com/anjoy8/BlogArti/tree/master/Blog.Core_JWT

?

一起學(xué)習(xí),一起進(jìn)步 ? QQ群:867095512

總結(jié)

以上是生活随笔為你收集整理的【 .NET Core 3.0 】框架之五 || JWT权限验证的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

美女黄网站人色视频免费国产 | 亚洲狠狠色丁香婷婷综合 | 精品人妻人人做人人爽 | 欧美激情内射喷水高潮 | 亚洲国产精品成人久久蜜臀 | 日韩精品无码一区二区中文字幕 | 亚洲国产精品无码一区二区三区 | 精品无码av一区二区三区 | 夜精品a片一区二区三区无码白浆 | 中文字幕色婷婷在线视频 | 国产av一区二区精品久久凹凸 | 曰本女人与公拘交酡免费视频 | 亚洲熟妇色xxxxx欧美老妇 | 老熟女重囗味hdxx69 | yw尤物av无码国产在线观看 | 中文字幕色婷婷在线视频 | 国产精品久久久久久亚洲毛片 | 国产精品va在线观看无码 | 国产亚洲tv在线观看 | 国产成人久久精品流白浆 | 国产在线精品一区二区三区直播 | 国产欧美熟妇另类久久久 | 久久 国产 尿 小便 嘘嘘 | 亚洲欧美日韩综合久久久 | 99视频精品全部免费免费观看 | 久久精品中文字幕大胸 | 亚洲日本va午夜在线电影 | 日韩精品一区二区av在线 | 免费看少妇作爱视频 | 天下第一社区视频www日本 | 久久久久av无码免费网 | 亚洲阿v天堂在线 | 久久综合九色综合欧美狠狠 | 亚洲色无码一区二区三区 | 性色av无码免费一区二区三区 | 亚洲国产午夜精品理论片 | 扒开双腿吃奶呻吟做受视频 | 亚洲综合伊人久久大杳蕉 | 黄网在线观看免费网站 | 荫蒂被男人添的好舒服爽免费视频 | a在线观看免费网站大全 | 少妇性荡欲午夜性开放视频剧场 | 又大又黄又粗又爽的免费视频 | 丰满人妻精品国产99aⅴ | 国内少妇偷人精品视频免费 | 久久久久成人精品免费播放动漫 | 婷婷色婷婷开心五月四房播播 | 成人综合网亚洲伊人 | 国产亚av手机在线观看 | 久久久久免费看成人影片 | 国产成人综合色在线观看网站 | 日本熟妇人妻xxxxx人hd | 白嫩日本少妇做爰 | 国产超碰人人爽人人做人人添 | 天堂一区人妻无码 | 欧美阿v高清资源不卡在线播放 | 亚洲日韩中文字幕在线播放 | 亚洲午夜无码久久 | 久久久亚洲欧洲日产国码αv | 一个人看的www免费视频在线观看 | 精品少妇爆乳无码av无码专区 | 国产av一区二区三区最新精品 | 国产三级精品三级男人的天堂 | 小泽玛莉亚一区二区视频在线 | 国产精品毛多多水多 | 日本爽爽爽爽爽爽在线观看免 | 久久99精品久久久久久动态图 | www成人国产高清内射 | a在线亚洲男人的天堂 | 天天爽夜夜爽夜夜爽 | 大肉大捧一进一出视频出来呀 | 久久久中文字幕日本无吗 | 亲嘴扒胸摸屁股激烈网站 | 日本丰满护士爆乳xxxx | 骚片av蜜桃精品一区 | 久久综合久久自在自线精品自 | 亚洲狠狠婷婷综合久久 | 熟女俱乐部五十路六十路av | 国产9 9在线 | 中文 | 亚洲国产精品美女久久久久 | 久久精品丝袜高跟鞋 | 学生妹亚洲一区二区 | 亚洲精品成a人在线观看 | 亚洲国产精品无码久久久久高潮 | √天堂中文官网8在线 | 国产片av国语在线观看 | 麻豆国产人妻欲求不满谁演的 | av无码不卡在线观看免费 | 成人精品视频一区二区 | 国产性生大片免费观看性 | 骚片av蜜桃精品一区 | 亚洲人成网站在线播放942 | 狂野欧美性猛交免费视频 | 国产人妖乱国产精品人妖 | 精品久久久久久人妻无码中文字幕 | 性做久久久久久久久 | 国产精品国产三级国产专播 | 四虎国产精品免费久久 | 成人亚洲精品久久久久软件 | 国产真实乱对白精彩久久 | 久久精品国产一区二区三区肥胖 | 无码人妻av免费一区二区三区 | 精品偷拍一区二区三区在线看 | 日韩人妻无码中文字幕视频 | 国产高清av在线播放 | 国产乡下妇女做爰 | 亚洲爆乳大丰满无码专区 | 男女性色大片免费网站 | 亚洲国产欧美国产综合一区 | 久久久久久久人妻无码中文字幕爆 | 久久伊人色av天堂九九小黄鸭 | 性欧美牲交xxxxx视频 | 精品国产福利一区二区 | 欧美人与禽zoz0性伦交 | 麻豆国产丝袜白领秘书在线观看 | 中文字幕无码免费久久99 | 蜜桃视频韩日免费播放 | 无码人妻丰满熟妇区毛片18 | 国产69精品久久久久app下载 | 人妻无码久久精品人妻 | 久久99精品久久久久久 | 18禁黄网站男男禁片免费观看 | 天天av天天av天天透 | 亚洲中文字幕va福利 | 特黄特色大片免费播放器图片 | 国产精品自产拍在线观看 | 一二三四社区在线中文视频 | 国产办公室秘书无码精品99 | 伊在人天堂亚洲香蕉精品区 | 一二三四在线观看免费视频 | 国产麻豆精品一区二区三区v视界 | 最近免费中文字幕中文高清百度 | 天堂无码人妻精品一区二区三区 | 欧美激情内射喷水高潮 | 国产综合在线观看 | 国产精品高潮呻吟av久久4虎 | 精品国产乱码久久久久乱码 | 日韩av无码一区二区三区不卡 | 无码国产色欲xxxxx视频 | 国产超碰人人爽人人做人人添 | 亚洲一区av无码专区在线观看 | 日日碰狠狠躁久久躁蜜桃 | 精品国产青草久久久久福利 | 国产精品怡红院永久免费 | 欧美国产日韩亚洲中文 | 亚洲男人av香蕉爽爽爽爽 | 久久国语露脸国产精品电影 | 永久免费观看美女裸体的网站 | 理论片87福利理论电影 | 精品aⅴ一区二区三区 | 欧美成人家庭影院 | 日本一本二本三区免费 | 亚洲日韩av片在线观看 | 三上悠亚人妻中文字幕在线 | 老熟女重囗味hdxx69 | 亚洲精品欧美二区三区中文字幕 | 无码精品国产va在线观看dvd | 老头边吃奶边弄进去呻吟 | 亚洲无人区午夜福利码高清完整版 | 亚洲一区二区三区无码久久 | 色一情一乱一伦 | 老司机亚洲精品影院无码 | 无码成人精品区在线观看 | 亚洲一区二区三区无码久久 | 蜜臀av无码人妻精品 | 亚洲国产精品美女久久久久 | 永久免费精品精品永久-夜色 | аⅴ资源天堂资源库在线 | 成 人影片 免费观看 | 国内老熟妇对白xxxxhd | 日韩欧美成人免费观看 | 亚洲欧美综合区丁香五月小说 | 婷婷五月综合激情中文字幕 | 正在播放东北夫妻内射 | 牲欲强的熟妇农村老妇女 | 亚洲伊人久久精品影院 | 中文字幕日韩精品一区二区三区 | 欧美熟妇另类久久久久久不卡 | 国产午夜福利亚洲第一 | 天天躁夜夜躁狠狠是什么心态 | 成人片黄网站色大片免费观看 | 亚洲自偷自拍另类第1页 | 精品 日韩 国产 欧美 视频 | 久久人人爽人人爽人人片av高清 | 免费观看激色视频网站 | 久精品国产欧美亚洲色aⅴ大片 | 99精品国产综合久久久久五月天 | 高潮毛片无遮挡高清免费 | 亚洲精品国产品国语在线观看 | 精品国产成人一区二区三区 | 亚洲国产精品毛片av不卡在线 | 国产亚洲精品久久久久久久久动漫 | 老熟女乱子伦 | 未满成年国产在线观看 | 国产午夜视频在线观看 | 红桃av一区二区三区在线无码av | 一本色道久久综合亚洲精品不卡 | 任你躁在线精品免费 | 在线看片无码永久免费视频 | 欧美熟妇另类久久久久久多毛 | 久久精品成人欧美大片 | 中文毛片无遮挡高清免费 | 久久久久久av无码免费看大片 | 国产精华av午夜在线观看 | 国产精品无套呻吟在线 | 日本va欧美va欧美va精品 | 欧洲精品码一区二区三区免费看 | 日韩av激情在线观看 | 1000部夫妻午夜免费 | 亚洲中文字幕久久无码 | 黄网在线观看免费网站 | 老子影院午夜伦不卡 | 久精品国产欧美亚洲色aⅴ大片 | 欧美怡红院免费全部视频 | 夜夜影院未满十八勿进 | 99精品视频在线观看免费 | 国产精品久久久久9999小说 | 国产莉萝无码av在线播放 | 中文字幕乱码人妻二区三区 | 熟女少妇人妻中文字幕 | 久久综合给久久狠狠97色 | 精品国产国产综合精品 | 97精品国产97久久久久久免费 | 性欧美熟妇videofreesex | 性色av无码免费一区二区三区 | 精品久久久久久亚洲精品 | aa片在线观看视频在线播放 | 水蜜桃亚洲一二三四在线 | 日日天日日夜日日摸 | 日韩视频 中文字幕 视频一区 | 国产成人无码一二三区视频 | 无码福利日韩神码福利片 | 亚洲精品久久久久久久久久久 | 日日橹狠狠爱欧美视频 | 天堂无码人妻精品一区二区三区 | 熟女俱乐部五十路六十路av | 18精品久久久无码午夜福利 | 无码av岛国片在线播放 | 久激情内射婷内射蜜桃人妖 | 亚洲精品久久久久中文第一幕 | 亚洲国产综合无码一区 | 国产av无码专区亚洲a∨毛片 | 欧美老妇交乱视频在线观看 | 国产精品美女久久久 | 国产熟女一区二区三区四区五区 | 一本无码人妻在中文字幕免费 | 亚洲午夜无码久久 | 亚洲日本一区二区三区在线 | 久久伊人色av天堂九九小黄鸭 | 日本大乳高潮视频在线观看 | 欧美freesex黑人又粗又大 | yw尤物av无码国产在线观看 | 扒开双腿吃奶呻吟做受视频 | 国产无遮挡又黄又爽免费视频 | 亚洲国产精品无码一区二区三区 | 久久国产精品偷任你爽任你 | 亚洲综合在线一区二区三区 | 亚洲国产av美女网站 | 亚洲日韩精品欧美一区二区 | 久久精品人妻少妇一区二区三区 | 国产精品成人av在线观看 | 欧美人与禽猛交狂配 | 少妇无套内谢久久久久 | 日本丰满护士爆乳xxxx | 色综合视频一区二区三区 | 人妻人人添人妻人人爱 | 精品国产av色一区二区深夜久久 | 综合网日日天干夜夜久久 | 精品欧美一区二区三区久久久 | 欧美三级不卡在线观看 | 国产激情一区二区三区 | 中国女人内谢69xxxxxa片 | 国产精品久久久久久亚洲毛片 | 又大又硬又黄的免费视频 | 久久亚洲日韩精品一区二区三区 | av在线亚洲欧洲日产一区二区 | 欧美日韩综合一区二区三区 | 久久精品女人的天堂av | 中文字幕+乱码+中文字幕一区 | 妺妺窝人体色www在线小说 | 人妻有码中文字幕在线 | 久久熟妇人妻午夜寂寞影院 | 亚洲成av人在线观看网址 | 红桃av一区二区三区在线无码av | 久久久久久久久888 | 国产午夜无码精品免费看 | 三上悠亚人妻中文字幕在线 | 国产精品理论片在线观看 | 永久免费精品精品永久-夜色 | 日韩欧美中文字幕在线三区 | 牲欲强的熟妇农村老妇女 | 日本大香伊一区二区三区 | 中文毛片无遮挡高清免费 | 67194成是人免费无码 | 粗大的内捧猛烈进出视频 | 久久国内精品自在自线 | 男女作爱免费网站 | 久久精品丝袜高跟鞋 | 免费播放一区二区三区 | 久久久久人妻一区精品色欧美 | 午夜福利不卡在线视频 | 亚洲精品久久久久久久久久久 | 在线а√天堂中文官网 | 国产特级毛片aaaaaa高潮流水 | 成熟人妻av无码专区 | 日韩成人一区二区三区在线观看 | 最近免费中文字幕中文高清百度 | 久久99精品久久久久婷婷 | а天堂中文在线官网 | 欧美日韩一区二区综合 | 亚洲色无码一区二区三区 | 欧美人与牲动交xxxx | 激情五月综合色婷婷一区二区 | 在线观看国产午夜福利片 | 一区二区三区高清视频一 | 一区二区传媒有限公司 | 天堂一区人妻无码 | 亚洲成av人在线观看网址 | 成人动漫在线观看 | 亚洲欧洲无卡二区视頻 | 欧美乱妇无乱码大黄a片 | 国内少妇偷人精品视频 | 乱人伦人妻中文字幕无码久久网 | 宝宝好涨水快流出来免费视频 | 夜夜躁日日躁狠狠久久av | 精品午夜福利在线观看 | 色综合久久久无码中文字幕 | 日韩人妻无码中文字幕视频 | 国产69精品久久久久app下载 | 国产亚洲人成在线播放 | 西西人体www44rt大胆高清 | 牲欲强的熟妇农村老妇女 | 狂野欧美性猛交免费视频 | 人人爽人人澡人人高潮 | 波多野结衣一区二区三区av免费 | 亚洲色欲色欲欲www在线 | 成人精品天堂一区二区三区 | 国产艳妇av在线观看果冻传媒 | 国内少妇偷人精品视频免费 | 国产亚洲人成a在线v网站 | 天天做天天爱天天爽综合网 | 巨爆乳无码视频在线观看 | 永久免费观看美女裸体的网站 | 又大又黄又粗又爽的免费视频 | 麻花豆传媒剧国产免费mv在线 | 亚洲精品国产品国语在线观看 | 丰满岳乱妇在线观看中字无码 | 亚洲成a人一区二区三区 | 国产sm调教视频在线观看 | 国产精品永久免费视频 | 男人和女人高潮免费网站 | 一本大道伊人av久久综合 | 欧洲极品少妇 | 人人澡人人透人人爽 | 人妻无码久久精品人妻 | 在线 国产 欧美 亚洲 天堂 | 久久精品丝袜高跟鞋 | 人妻体内射精一区二区三四 | 亚洲熟妇自偷自拍另类 | 日本一区二区三区免费播放 | 亚洲小说春色综合另类 | 在线精品亚洲一区二区 | 亚洲熟悉妇女xxx妇女av | 久久亚洲a片com人成 | 久久午夜无码鲁丝片 | 国产精品亚洲综合色区韩国 | 国产激情综合五月久久 | 久久精品丝袜高跟鞋 | 青青久在线视频免费观看 | 人人妻人人澡人人爽人人精品浪潮 | 97夜夜澡人人爽人人喊中国片 | 亚洲欧美中文字幕5发布 | 欧美性生交活xxxxxdddd | 国内少妇偷人精品视频免费 | 成熟人妻av无码专区 | 国产香蕉尹人综合在线观看 | 无码人妻出轨黑人中文字幕 | 乱人伦中文视频在线观看 | 久久综合香蕉国产蜜臀av | 亚洲а∨天堂久久精品2021 | 少女韩国电视剧在线观看完整 | 亚洲欧美日韩综合久久久 | 免费国产成人高清在线观看网站 | 国产精品va在线播放 | 日韩精品a片一区二区三区妖精 | 少妇无码av无码专区在线观看 | 内射爽无广熟女亚洲 | 永久免费观看美女裸体的网站 | 久久天天躁夜夜躁狠狠 | 国产又爽又猛又粗的视频a片 | 天堂а√在线地址中文在线 | 亚洲一区av无码专区在线观看 | 久久精品中文字幕大胸 | 秋霞成人午夜鲁丝一区二区三区 | 久久aⅴ免费观看 | 国内精品一区二区三区不卡 | 无码av免费一区二区三区试看 | 无遮挡啪啪摇乳动态图 | 免费播放一区二区三区 | 亚洲无人区一区二区三区 | 国产成人无码av一区二区 | 亚洲小说春色综合另类 | 无码人妻精品一区二区三区下载 | 丰满少妇熟乱xxxxx视频 | 日韩人妻无码中文字幕视频 | 性欧美牲交在线视频 | 无码一区二区三区在线观看 | 欧美日韩一区二区免费视频 | 亚洲精品中文字幕久久久久 | 久久久久久九九精品久 | 日本xxxx色视频在线观看免费 | 中文字幕 人妻熟女 | 波多野结衣高清一区二区三区 | 精品无码一区二区三区爱欲 | 午夜免费福利小电影 | 国产成人无码专区 | 国产精品内射视频免费 | 亚洲第一网站男人都懂 | 377p欧洲日本亚洲大胆 | 国产va免费精品观看 | 久久天天躁狠狠躁夜夜免费观看 | 精品亚洲韩国一区二区三区 | 中文字幕无码av波多野吉衣 | 一本色道久久综合狠狠躁 | 久久久久久久久888 | 国产亚洲精品精品国产亚洲综合 | 日本丰满护士爆乳xxxx | yw尤物av无码国产在线观看 | 免费无码肉片在线观看 | 国产精品办公室沙发 | 久久精品人人做人人综合试看 | 无码av中文字幕免费放 | 在线观看欧美一区二区三区 | 色一情一乱一伦一视频免费看 | 熟妇人妻激情偷爽文 | 欧美日本日韩 | 亚洲一区av无码专区在线观看 | 丰满少妇熟乱xxxxx视频 | 中文字幕人妻无码一区二区三区 | 国产精品成人av在线观看 | 中文字幕无码人妻少妇免费 | 伊人久久大香线蕉av一区二区 | 亚洲理论电影在线观看 | 国产熟女一区二区三区四区五区 | 亚洲一区二区三区四区 | 高清国产亚洲精品自在久久 | 久久综合久久自在自线精品自 | 亚洲另类伦春色综合小说 | 牲交欧美兽交欧美 | 鲁鲁鲁爽爽爽在线视频观看 | 妺妺窝人体色www在线小说 | 蜜桃视频韩日免费播放 | 性生交片免费无码看人 | 欧美人与牲动交xxxx | 成人毛片一区二区 | 男女作爱免费网站 | 亚洲成av人在线观看网址 | 伊人久久大香线蕉午夜 | 亚洲综合在线一区二区三区 | 丰满护士巨好爽好大乳 | 国产成人无码a区在线观看视频app | 99re在线播放 | 国产精品无码久久av | 中文字幕中文有码在线 | 女人被男人爽到呻吟的视频 | 色一情一乱一伦一区二区三欧美 | 老子影院午夜伦不卡 | 亚洲精品中文字幕 | 领导边摸边吃奶边做爽在线观看 | 久久精品国产日本波多野结衣 | 最近中文2019字幕第二页 | 久久天天躁狠狠躁夜夜免费观看 | 亚洲精品www久久久 | 精品久久久无码中文字幕 | 成人欧美一区二区三区黑人 | 欧美freesex黑人又粗又大 | 精品无码一区二区三区的天堂 | 好爽又高潮了毛片免费下载 | 久久久久成人片免费观看蜜芽 | 乱码av麻豆丝袜熟女系列 | 日本爽爽爽爽爽爽在线观看免 | 国产高清av在线播放 | 久久精品国产日本波多野结衣 | 亚洲精品中文字幕久久久久 | 东京热无码av男人的天堂 | 久久精品人人做人人综合试看 | 国产亚洲精品精品国产亚洲综合 | 国内精品久久久久久中文字幕 | 久久久久久亚洲精品a片成人 | 久久成人a毛片免费观看网站 | 99久久久国产精品无码免费 | 亚洲精品久久久久久一区二区 | 激情内射亚州一区二区三区爱妻 | 亚洲成av人片天堂网无码】 | 亚洲成色在线综合网站 | 亚洲 欧美 激情 小说 另类 | 欧美成人家庭影院 | 国产明星裸体无码xxxx视频 | 久久精品中文字幕一区 | 亚洲天堂2017无码中文 | 亚洲国产高清在线观看视频 | 国产精品久久久午夜夜伦鲁鲁 | 高潮毛片无遮挡高清免费视频 | 特大黑人娇小亚洲女 | 97久久精品无码一区二区 | 亚洲欧美日韩国产精品一区二区 | 久久www免费人成人片 | 久久综合九色综合欧美狠狠 | 在线播放无码字幕亚洲 | 大肉大捧一进一出好爽视频 | 国产无套粉嫩白浆在线 | 成人综合网亚洲伊人 | 无码任你躁久久久久久久 | 牲交欧美兽交欧美 | 亚洲小说图区综合在线 | 亚洲国产欧美日韩精品一区二区三区 | 国产三级久久久精品麻豆三级 | 久久久久se色偷偷亚洲精品av | 人人妻人人藻人人爽欧美一区 | 奇米影视7777久久精品人人爽 | 无码吃奶揉捏奶头高潮视频 | 免费国产黄网站在线观看 | 2019nv天堂香蕉在线观看 | 国产疯狂伦交大片 | 蜜桃臀无码内射一区二区三区 | 午夜精品一区二区三区的区别 | 日产精品高潮呻吟av久久 | 久久午夜夜伦鲁鲁片无码免费 | 人妻少妇精品久久 | 国产极品美女高潮无套在线观看 | 一个人看的视频www在线 | 国产精品久久久久久久9999 | 激情综合激情五月俺也去 | 波多野结衣av在线观看 | 国产亚洲精品久久久闺蜜 | 亚洲色成人中文字幕网站 | 久久国语露脸国产精品电影 | 无码精品人妻一区二区三区av | 麻豆md0077饥渴少妇 | 中文字幕乱码人妻无码久久 | av在线亚洲欧洲日产一区二区 | 无码av中文字幕免费放 | 国产成人午夜福利在线播放 | 国产乱人无码伦av在线a | 亚洲欧美日韩成人高清在线一区 | 国产精品美女久久久网av | 性色欲网站人妻丰满中文久久不卡 | 国产精品18久久久久久麻辣 | 377p欧洲日本亚洲大胆 | 国产成人无码av在线影院 | 日本又色又爽又黄的a片18禁 | 国产精品无码永久免费888 | 国产亲子乱弄免费视频 | 亚洲中文无码av永久不收费 | 国产精品99久久精品爆乳 | 激情爆乳一区二区三区 | 少妇性l交大片欧洲热妇乱xxx | 人人妻人人澡人人爽欧美一区九九 | 7777奇米四色成人眼影 | 国内精品一区二区三区不卡 | 牲欲强的熟妇农村老妇女 | 人人妻人人澡人人爽人人精品浪潮 | 国产精品爱久久久久久久 | 精品国产一区二区三区四区在线看 | 国产欧美精品一区二区三区 | 日韩欧美中文字幕在线三区 | 欧美性生交活xxxxxdddd | 国内精品人妻无码久久久影院蜜桃 | 99久久久国产精品无码免费 | 性欧美牲交在线视频 | 久久精品女人天堂av免费观看 | 在线欧美精品一区二区三区 | 亚洲日韩中文字幕在线播放 | 亚洲精品美女久久久久久久 | 欧美午夜特黄aaaaaa片 | 日韩亚洲欧美精品综合 | 高清不卡一区二区三区 | 麻豆人妻少妇精品无码专区 | ass日本丰满熟妇pics | 初尝人妻少妇中文字幕 | 精品国产av色一区二区深夜久久 | 亚洲精品午夜国产va久久成人 | 成年女人永久免费看片 | 嫩b人妻精品一区二区三区 | 欧美激情综合亚洲一二区 | 性色av无码免费一区二区三区 | 老头边吃奶边弄进去呻吟 | 人人妻人人藻人人爽欧美一区 | 丰满妇女强制高潮18xxxx | 精品国产一区二区三区四区 | 日韩亚洲欧美精品综合 | 亚洲色在线无码国产精品不卡 | 99国产精品白浆在线观看免费 | 久久精品无码一区二区三区 | 日韩人妻无码中文字幕视频 | 久久99精品国产麻豆蜜芽 | 亚洲精品国产精品乱码不卡 | 国产精品久久久一区二区三区 | 亚洲欧美综合区丁香五月小说 | 免费无码肉片在线观看 | 欧美35页视频在线观看 | 亚洲日韩一区二区三区 | 色妞www精品免费视频 | 国产精品对白交换视频 | 色偷偷av老熟女 久久精品人妻少妇一区二区三区 | 亚洲国产精品久久久天堂 | 婷婷综合久久中文字幕蜜桃三电影 | 欧美变态另类xxxx | 国产欧美亚洲精品a | 日本一卡2卡3卡四卡精品网站 | 人妻少妇被猛烈进入中文字幕 | 国产激情无码一区二区 | 精品国产麻豆免费人成网站 | 99久久无码一区人妻 | 玩弄人妻少妇500系列视频 | 久久午夜无码鲁丝片 | 欧美丰满老熟妇xxxxx性 | 国产欧美熟妇另类久久久 | 国产精品久久久久久久影院 | 风流少妇按摩来高潮 | 久久久久免费看成人影片 | 色一情一乱一伦一视频免费看 | 国产精品嫩草久久久久 | 国产成人综合色在线观看网站 | 日韩人妻无码中文字幕视频 | 初尝人妻少妇中文字幕 | 日本熟妇人妻xxxxx人hd | 人人妻在人人 | 亚洲色欲久久久综合网东京热 | 免费无码一区二区三区蜜桃大 | 日本高清一区免费中文视频 | 漂亮人妻洗澡被公强 日日躁 | 色一情一乱一伦一区二区三欧美 | 无码人妻丰满熟妇区毛片18 | 狠狠色噜噜狠狠狠7777奇米 | 国产精品久久久久久无码 | 国产偷抇久久精品a片69 | 久久久久人妻一区精品色欧美 | 少妇性俱乐部纵欲狂欢电影 | 国产av人人夜夜澡人人爽麻豆 | 久久精品国产99久久6动漫 | 牲欲强的熟妇农村老妇女 | 欧美日韩在线亚洲综合国产人 | 久久午夜无码鲁丝片 | 色综合久久久无码网中文 | 国产亚洲精品精品国产亚洲综合 | 精品欧美一区二区三区久久久 | 性生交大片免费看女人按摩摩 | 欧美第一黄网免费网站 | 成人免费视频在线观看 | 精品一区二区不卡无码av | 亚洲一区二区三区在线观看网站 | 亚洲综合无码久久精品综合 | 久久久av男人的天堂 | www一区二区www免费 | 亚洲精品欧美二区三区中文字幕 | 蜜桃av抽搐高潮一区二区 | 国产成人综合在线女婷五月99播放 | 少妇性l交大片欧洲热妇乱xxx | 精品成在人线av无码免费看 | 国产人成高清在线视频99最全资源 | 欧美性色19p | 国语精品一区二区三区 | 国产精品久久久久久亚洲毛片 | 亚洲成在人网站无码天堂 | 中文字幕乱妇无码av在线 | 久久精品国产99久久6动漫 | 天天摸天天透天天添 | 国产另类ts人妖一区二区 | 欧美丰满熟妇xxxx性ppx人交 | 亚洲成在人网站无码天堂 | 玩弄人妻少妇500系列视频 | 精品 日韩 国产 欧美 视频 | 国语自产偷拍精品视频偷 | 中文字幕无码视频专区 | 小鲜肉自慰网站xnxx | a片免费视频在线观看 | 成人影院yy111111在线观看 | 亚洲中文字幕在线无码一区二区 | 人妻尝试又大又粗久久 | 欧美日韩在线亚洲综合国产人 | 激情内射日本一区二区三区 | 蜜桃视频插满18在线观看 | 亚洲国产欧美在线成人 | 麻豆成人精品国产免费 | 国产av久久久久精东av | 精品亚洲韩国一区二区三区 | 东北女人啪啪对白 | 国产精品怡红院永久免费 | 露脸叫床粗话东北少妇 | 久久精品中文字幕一区 | 国产无遮挡吃胸膜奶免费看 | 内射爽无广熟女亚洲 | 国产又爽又黄又刺激的视频 | 久久久久亚洲精品男人的天堂 | 国产精品久久久久久亚洲毛片 | 97久久精品无码一区二区 | 高清不卡一区二区三区 | 在线视频网站www色 | 国产麻豆精品一区二区三区v视界 | 中文字幕无码人妻少妇免费 | 少妇无码一区二区二三区 | 内射老妇bbwx0c0ck | 亚洲爆乳大丰满无码专区 | 久久成人a毛片免费观看网站 | 亚洲熟妇色xxxxx亚洲 | 亚洲精品国产品国语在线观看 | 人妻无码久久精品人妻 | 国产精品理论片在线观看 | 波多野结衣 黑人 | 无码乱肉视频免费大全合集 | 日日摸夜夜摸狠狠摸婷婷 | 中文字幕无线码 | 少女韩国电视剧在线观看完整 | 国产成人综合在线女婷五月99播放 | 亚洲欧美日韩成人高清在线一区 | 99riav国产精品视频 | 国产精品人妻一区二区三区四 | 亚洲综合伊人久久大杳蕉 | 亚洲人成网站免费播放 | 色诱久久久久综合网ywww | 无码帝国www无码专区色综合 | 麻豆av传媒蜜桃天美传媒 | 午夜福利试看120秒体验区 | 欧洲精品码一区二区三区免费看 | 人妻少妇精品视频专区 | 日本精品久久久久中文字幕 | 久久99精品国产麻豆蜜芽 | 日韩人妻无码中文字幕视频 | 亚洲乱码日产精品bd | 正在播放东北夫妻内射 | 亚洲综合伊人久久大杳蕉 | 未满小14洗澡无码视频网站 | 日日躁夜夜躁狠狠躁 | 日本欧美一区二区三区乱码 | 国产亚洲精品精品国产亚洲综合 | 欧美zoozzooz性欧美 | 亚洲 日韩 欧美 成人 在线观看 | 日日碰狠狠丁香久燥 | www国产亚洲精品久久网站 | 高潮喷水的毛片 | 少妇高潮喷潮久久久影院 | 捆绑白丝粉色jk震动捧喷白浆 | 欧美黑人巨大xxxxx | 狠狠噜狠狠狠狠丁香五月 | 国产精品99久久精品爆乳 | 精品少妇爆乳无码av无码专区 | 精品国产一区二区三区四区在线看 | 亚洲精品国产a久久久久久 | 免费观看黄网站 | 久久99精品国产麻豆 | 波多野结衣av一区二区全免费观看 | 国产人妻精品午夜福利免费 | 77777熟女视频在线观看 а天堂中文在线官网 | www成人国产高清内射 | 亚洲一区二区三区国产精华液 | 人妻与老人中文字幕 | 四十如虎的丰满熟妇啪啪 | 人妻少妇被猛烈进入中文字幕 | 久9re热视频这里只有精品 | 日韩精品无码免费一区二区三区 | 久久久久久av无码免费看大片 | 亚洲小说春色综合另类 | 国产免费无码一区二区视频 | 亚洲の无码国产の无码步美 | 一本久道久久综合婷婷五月 | 日韩少妇白浆无码系列 | 亚洲一区二区三区无码久久 | 久久国产精品萌白酱免费 | 国产激情精品一区二区三区 | 狠狠cao日日穞夜夜穞av | 欧美兽交xxxx×视频 | 欧美乱妇无乱码大黄a片 | 亚洲成av人影院在线观看 | 日韩亚洲欧美精品综合 | 人人妻人人藻人人爽欧美一区 | 日韩精品a片一区二区三区妖精 | 色综合久久久久综合一本到桃花网 | 国产97色在线 | 免 | 欧美日本精品一区二区三区 | 清纯唯美经典一区二区 | 日韩欧美中文字幕公布 | 国产精品va在线观看无码 | 一本一道久久综合久久 | 国产av一区二区精品久久凹凸 | 欧美人与动性行为视频 | 国产精品高潮呻吟av久久4虎 | 欧美激情一区二区三区成人 | 又大又硬又爽免费视频 | 曰韩少妇内射免费播放 | 欧洲熟妇色 欧美 | 水蜜桃亚洲一二三四在线 | 国产又爽又猛又粗的视频a片 | 老司机亚洲精品影院无码 | 99国产欧美久久久精品 | 国产后入清纯学生妹 | 中文精品久久久久人妻不卡 | 久久人人爽人人人人片 | 欧美丰满熟妇xxxx性ppx人交 | 日韩欧美成人免费观看 | 国产亚洲人成a在线v网站 | 高潮毛片无遮挡高清免费视频 | 国产人妻精品午夜福利免费 | 精品久久久无码中文字幕 | 亚洲aⅴ无码成人网站国产app | 国内丰满熟女出轨videos | 欧美人与物videos另类 | 成人精品天堂一区二区三区 | 中文亚洲成a人片在线观看 | 亚洲成熟女人毛毛耸耸多 | 中文字幕日韩精品一区二区三区 | 丰满妇女强制高潮18xxxx | 日韩 欧美 动漫 国产 制服 | 亚洲国产一区二区三区在线观看 | 日韩少妇白浆无码系列 | 女人和拘做爰正片视频 | aⅴ亚洲 日韩 色 图网站 播放 | 久久午夜无码鲁丝片秋霞 | 亚洲精品成a人在线观看 | 国产口爆吞精在线视频 | 少妇被黑人到高潮喷出白浆 | 久久久久99精品成人片 | 久久国产精品二国产精品 | 国产成人无码一二三区视频 | av人摸人人人澡人人超碰下载 | 娇妻被黑人粗大高潮白浆 | 玩弄中年熟妇正在播放 | 国产精品无码mv在线观看 | 亚洲人成影院在线无码按摩店 | 久久亚洲中文字幕精品一区 | 国产免费无码一区二区视频 | 性欧美videos高清精品 | 伊人色综合久久天天小片 | 一本大道伊人av久久综合 | 蜜臀av在线播放 久久综合激激的五月天 | 亚洲色无码一区二区三区 | 国产97人人超碰caoprom | 国产亚洲精品久久久久久国模美 | 亚洲国产午夜精品理论片 | 久久综合九色综合欧美狠狠 | 伊在人天堂亚洲香蕉精品区 | 久久久久久亚洲精品a片成人 | 18精品久久久无码午夜福利 | 偷窥日本少妇撒尿chinese | 久久这里只有精品视频9 | 5858s亚洲色大成网站www | 无码毛片视频一区二区本码 | 久久99精品国产.久久久久 | 免费中文字幕日韩欧美 | 国产无套内射久久久国产 | 欧美黑人乱大交 | 久久精品中文字幕大胸 | 乱人伦人妻中文字幕无码久久网 | 久久精品视频在线看15 | 国产精品第一区揄拍无码 | 久久国产精品萌白酱免费 | 18黄暴禁片在线观看 | 亚洲综合精品香蕉久久网 | 图片区 小说区 区 亚洲五月 | 成人精品天堂一区二区三区 | 欧美自拍另类欧美综合图片区 | 中文字幕av伊人av无码av | 伊人久久婷婷五月综合97色 | 熟妇人妻激情偷爽文 | 激情五月综合色婷婷一区二区 | 精品少妇爆乳无码av无码专区 | 国产尤物精品视频 | 乱人伦中文视频在线观看 | √8天堂资源地址中文在线 | 国产凸凹视频一区二区 | 蜜桃臀无码内射一区二区三区 | аⅴ资源天堂资源库在线 | 国产精品亚洲五月天高清 | 国产午夜视频在线观看 | 国产sm调教视频在线观看 | 免费观看的无遮挡av | 国产激情精品一区二区三区 | 欧美激情内射喷水高潮 | 中文字幕乱码中文乱码51精品 | 性生交大片免费看女人按摩摩 | 亚洲欧洲日本综合aⅴ在线 | 国产在线精品一区二区三区直播 | 大肉大捧一进一出好爽视频 | av小次郎收藏 | 乱中年女人伦av三区 | 久久99热只有频精品8 | 久久久久免费看成人影片 | 亚洲精品无码人妻无码 | 国产av一区二区三区最新精品 | 性欧美牲交在线视频 | 国产精品丝袜黑色高跟鞋 | 窝窝午夜理论片影院 | 欧美成人家庭影院 | 色欲人妻aaaaaaa无码 | 人妻人人添人妻人人爱 | 天海翼激烈高潮到腰振不止 | 国产精品va在线观看无码 | 日韩av无码一区二区三区不卡 | 亚洲人亚洲人成电影网站色 | 亚洲精品一区二区三区在线 | 永久免费观看国产裸体美女 | 久久午夜无码鲁丝片午夜精品 | 国产精品无码一区二区桃花视频 | 亚洲欧美日韩综合久久久 | 97资源共享在线视频 | 亚洲 另类 在线 欧美 制服 | 亚洲色偷偷偷综合网 | 精品一区二区三区无码免费视频 | 国产一区二区三区四区五区加勒比 | 大乳丰满人妻中文字幕日本 | 青青久在线视频免费观看 | 两性色午夜视频免费播放 | 2020久久香蕉国产线看观看 | 久久人人爽人人人人片 | 久久久精品456亚洲影院 | 日韩人妻无码一区二区三区久久99 | 国产农村妇女高潮大叫 | 内射后入在线观看一区 | 国产人妻久久精品二区三区老狼 | 性做久久久久久久久 | 欧美日韩一区二区综合 | 夫妻免费无码v看片 | 亚洲国产高清在线观看视频 | 中文字幕乱码人妻无码久久 | 欧美人与物videos另类 | 欧美兽交xxxx×视频 | 欧美 日韩 人妻 高清 中文 | 人妻夜夜爽天天爽三区 | 亚洲日本一区二区三区在线 | 日本肉体xxxx裸交 | 玩弄少妇高潮ⅹxxxyw | 伦伦影院午夜理论片 | 午夜福利试看120秒体验区 | 久久久久免费看成人影片 | 精品 日韩 国产 欧美 视频 | 中国女人内谢69xxxxxa片 | 亚洲а∨天堂久久精品2021 | 欧洲欧美人成视频在线 | 2020久久香蕉国产线看观看 | 无码av免费一区二区三区试看 | 东京热一精品无码av | 97无码免费人妻超级碰碰夜夜 | 日韩人妻系列无码专区 | 少妇被黑人到高潮喷出白浆 | 玩弄人妻少妇500系列视频 | 亚洲欧洲中文日韩av乱码 | 成年女人永久免费看片 | 亚洲精品欧美二区三区中文字幕 | 人妻体内射精一区二区三四 | 亚洲精品一区二区三区大桥未久 | 国产一精品一av一免费 | 欧美性生交活xxxxxdddd | 久久综合网欧美色妞网 | 亚洲热妇无码av在线播放 | 综合网日日天干夜夜久久 | 澳门永久av免费网站 | 又粗又大又硬又长又爽 | 东北女人啪啪对白 | 欧美激情内射喷水高潮 | 人人澡人人妻人人爽人人蜜桃 | 无码人妻av免费一区二区三区 | 欧美xxxxx精品 | 国内老熟妇对白xxxxhd | 人人超人人超碰超国产 | 蜜臀av在线观看 在线欧美精品一区二区三区 | 超碰97人人做人人爱少妇 | 国産精品久久久久久久 | 国产亚洲日韩欧美另类第八页 | 东京热无码av男人的天堂 | 国产精品视频免费播放 | 久久久中文字幕日本无吗 | 荡女精品导航 | 午夜免费福利小电影 | 99riav国产精品视频 | 精品欧洲av无码一区二区三区 | 精品少妇爆乳无码av无码专区 | 学生妹亚洲一区二区 | 欧美自拍另类欧美综合图片区 | 国产农村乱对白刺激视频 | 久久www免费人成人片 | 正在播放东北夫妻内射 | 久久99久久99精品中文字幕 | 又大又黄又粗又爽的免费视频 | 日本高清一区免费中文视频 | 午夜熟女插插xx免费视频 | 国产精品内射视频免费 | 97久久精品无码一区二区 | 日韩亚洲欧美精品综合 | 久激情内射婷内射蜜桃人妖 | 精品无人区无码乱码毛片国产 | 亚洲熟妇色xxxxx欧美老妇 | 国产无av码在线观看 | 国产精品沙发午睡系列 | 久久久久国色av免费观看性色 | 亚洲第一无码av无码专区 | 日本护士毛茸茸高潮 | 免费无码一区二区三区蜜桃大 | 免费人成在线观看网站 | 日本精品少妇一区二区三区 | 欧美日韩在线亚洲综合国产人 | 黑人粗大猛烈进出高潮视频 | 久久综合给合久久狠狠狠97色 | 亚洲欧洲日本综合aⅴ在线 | 97人妻精品一区二区三区 | 精品午夜福利在线观看 | 99re在线播放 | 300部国产真实乱 | 麻豆成人精品国产免费 | 日本成熟视频免费视频 | 妺妺窝人体色www在线小说 | 成人aaa片一区国产精品 | 国产办公室秘书无码精品99 | 欧美亚洲日韩国产人成在线播放 | 台湾无码一区二区 | 2019nv天堂香蕉在线观看 | 亚洲精品久久久久中文第一幕 | 无码人妻丰满熟妇区五十路百度 | 国产农村妇女高潮大叫 | 亚洲码国产精品高潮在线 | 熟妇人妻无乱码中文字幕 | 国产精品久久久久久亚洲毛片 | 亚洲精品无码人妻无码 | 少妇人妻大乳在线视频 | 亚洲一区二区三区四区 | 亚洲毛片av日韩av无码 | 国产精品爱久久久久久久 | 国产网红无码精品视频 | 精品国产成人一区二区三区 | 丰满妇女强制高潮18xxxx | 欧美日韩一区二区免费视频 | 国产亚洲tv在线观看 | 亚洲日韩精品欧美一区二区 | 亚洲国产欧美日韩精品一区二区三区 | 久久久精品456亚洲影院 | 国精品人妻无码一区二区三区蜜柚 | 国产激情一区二区三区 | 国产精品久久福利网站 | 国产艳妇av在线观看果冻传媒 | 精品久久久无码中文字幕 | 久久人人爽人人爽人人片av高清 | 国产欧美精品一区二区三区 | 亚洲精品国产第一综合99久久 | 一本久道高清无码视频 | 欧美freesex黑人又粗又大 | av无码久久久久不卡免费网站 | 国产激情综合五月久久 | 亚洲日韩一区二区 | 欧美日韩久久久精品a片 | 精品人人妻人人澡人人爽人人 | 精品久久久久香蕉网 | 嫩b人妻精品一区二区三区 | 日韩人妻无码一区二区三区久久99 | 国产精品爱久久久久久久 | 久久精品女人的天堂av | 丰满少妇熟乱xxxxx视频 | 国产欧美精品一区二区三区 | 乱码午夜-极国产极内射 | 欧洲精品码一区二区三区免费看 | 国产乱人偷精品人妻a片 | 国产精品毛多多水多 | 久久婷婷五月综合色国产香蕉 | 99久久无码一区人妻 | 爆乳一区二区三区无码 | 巨爆乳无码视频在线观看 | 一本久道久久综合狠狠爱 | 丝袜足控一区二区三区 | 曰韩少妇内射免费播放 | 日本一区二区三区免费播放 | 高清国产亚洲精品自在久久 | 中文字幕无码热在线视频 | 久久综合狠狠综合久久综合88 | 东京无码熟妇人妻av在线网址 | 日韩成人一区二区三区在线观看 | 青青青手机频在线观看 | 无码国产乱人伦偷精品视频 | 在线精品亚洲一区二区 | 玩弄中年熟妇正在播放 | 久久精品国产精品国产精品污 | av在线亚洲欧洲日产一区二区 | 色诱久久久久综合网ywww | 无码乱肉视频免费大全合集 | 欧美 日韩 亚洲 在线 | 撕开奶罩揉吮奶头视频 | 亚洲gv猛男gv无码男同 | 麻豆精品国产精华精华液好用吗 | 粉嫩少妇内射浓精videos | 午夜精品一区二区三区在线观看 | 午夜无码区在线观看 | 国产女主播喷水视频在线观看 | 国产精品国产自线拍免费软件 | 久久国产精品偷任你爽任你 | 天天躁夜夜躁狠狠是什么心态 | 无码一区二区三区在线 | 东京热无码av男人的天堂 | 久久精品国产亚洲精品 | 国产欧美熟妇另类久久久 | 久久人妻内射无码一区三区 | 人妻与老人中文字幕 | 中文字幕人妻无码一区二区三区 | 亚洲 欧美 激情 小说 另类 | 精品国产一区二区三区四区 | 国产成人一区二区三区在线观看 | 丰满少妇熟乱xxxxx视频 | 亚洲男人av天堂午夜在 | 在线天堂新版最新版在线8 | 又色又爽又黄的美女裸体网站 | 99re在线播放 | 清纯唯美经典一区二区 | 一本大道久久东京热无码av | 欧美性黑人极品hd | yw尤物av无码国产在线观看 | 97se亚洲精品一区 | 中文字幕日韩精品一区二区三区 | 67194成是人免费无码 | 亚洲日韩一区二区三区 | 88国产精品欧美一区二区三区 | 玩弄少妇高潮ⅹxxxyw | 久久久久久a亚洲欧洲av冫 | 日本一区二区更新不卡 | 国产精品自产拍在线观看 | 欧美成人家庭影院 | 午夜不卡av免费 一本久久a久久精品vr综合 | 欧美日韩综合一区二区三区 | 色 综合 欧美 亚洲 国产 | 久久国产精品萌白酱免费 | 亚洲s码欧洲m码国产av | 国产精品18久久久久久麻辣 | 无码人妻出轨黑人中文字幕 | 精品欧美一区二区三区久久久 | 久久亚洲日韩精品一区二区三区 | 无码福利日韩神码福利片 | 男人和女人高潮免费网站 | 国产明星裸体无码xxxx视频 | 亚洲一区av无码专区在线观看 | 任你躁在线精品免费 | 狠狠cao日日穞夜夜穞av | 欧美老人巨大xxxx做受 | 国内揄拍国内精品少妇国语 | 性啪啪chinese东北女人 | 精品亚洲成av人在线观看 | 亚洲精品无码国产 | 亚洲一区二区三区在线观看网站 | 国产精品久久久久9999小说 | 亚洲精品成人av在线 | 日产精品高潮呻吟av久久 | 日本精品高清一区二区 | 在线观看欧美一区二区三区 | 欧美日本免费一区二区三区 | 国内老熟妇对白xxxxhd | 亚洲爆乳精品无码一区二区三区 | 亚洲男女内射在线播放 | 国产精品久久久久7777 | 欧美精品免费观看二区 | 久久综合网欧美色妞网 | 沈阳熟女露脸对白视频 | 国产成人无码av片在线观看不卡 | 精品一区二区三区波多野结衣 | 内射白嫩少妇超碰 | 国产精品人妻一区二区三区四 | 亚洲精品国产第一综合99久久 | 男女爱爱好爽视频免费看 | 成人欧美一区二区三区 | 精品人人妻人人澡人人爽人人 | 美女扒开屁股让男人桶 | 国产偷国产偷精品高清尤物 | 久久综合色之久久综合 | 内射巨臀欧美在线视频 | 嫩b人妻精品一区二区三区 | 西西人体www44rt大胆高清 | 动漫av一区二区在线观看 | 久久精品中文闷骚内射 | 午夜无码人妻av大片色欲 | 乱人伦中文视频在线观看 | 青春草在线视频免费观看 | a国产一区二区免费入口 | 玩弄少妇高潮ⅹxxxyw | 成人无码精品一区二区三区 | www国产亚洲精品久久久日本 | 1000部啪啪未满十八勿入下载 | 国产激情一区二区三区 | 少女韩国电视剧在线观看完整 | 真人与拘做受免费视频一 | 成人av无码一区二区三区 | 99riav国产精品视频 | 精品亚洲成av人在线观看 | 国语精品一区二区三区 | 亚洲精品www久久久 | 久久久久av无码免费网 | 久久亚洲国产成人精品性色 | 亚洲欧洲无卡二区视頻 | 免费人成在线视频无码 | 久久久久成人精品免费播放动漫 | 欧美zoozzooz性欧美 | 国产一区二区三区四区五区加勒比 | 少妇人妻av毛片在线看 | 国产精品理论片在线观看 | 激情国产av做激情国产爱 | 美女毛片一区二区三区四区 | 欧美日韩在线亚洲综合国产人 | 天天躁日日躁狠狠躁免费麻豆 | 未满成年国产在线观看 | 日本精品人妻无码77777 天堂一区人妻无码 | 国产精品久久久久久亚洲毛片 | 成人无码精品1区2区3区免费看 | 奇米影视7777久久精品 | 少妇被黑人到高潮喷出白浆 | 精品少妇爆乳无码av无码专区 | 蜜桃无码一区二区三区 | 国产一精品一av一免费 | 国产精品视频免费播放 | 欧美第一黄网免费网站 | 欧美阿v高清资源不卡在线播放 | 国产乱人伦av在线无码 | 亚洲一区二区三区在线观看网站 | 无码成人精品区在线观看 | 久久aⅴ免费观看 | 最新国产麻豆aⅴ精品无码 | 亚洲精品国偷拍自产在线观看蜜桃 | 波多野结衣av一区二区全免费观看 | 日产精品99久久久久久 | 色婷婷av一区二区三区之红樱桃 | 强开小婷嫩苞又嫩又紧视频 | 蜜桃av蜜臀av色欲av麻 999久久久国产精品消防器材 | 亚洲人成网站色7799 | 亚洲精品中文字幕乱码 | 色综合久久88色综合天天 | 日本高清一区免费中文视频 | 色综合视频一区二区三区 | 丰满妇女强制高潮18xxxx | 又大又硬又黄的免费视频 | 麻豆蜜桃av蜜臀av色欲av | 欧美国产日产一区二区 | 大乳丰满人妻中文字幕日本 | 国产亚av手机在线观看 | 欧美日韩视频无码一区二区三 | 国产真实乱对白精彩久久 | 欧美丰满老熟妇xxxxx性 | 亚洲自偷精品视频自拍 | 东京热男人av天堂 | 精品国产成人一区二区三区 | 大肉大捧一进一出视频出来呀 | 蜜臀av在线播放 久久综合激激的五月天 | 亚洲午夜无码久久 | 精品无码一区二区三区的天堂 | 国产精品久久久久7777 | 国精品人妻无码一区二区三区蜜柚 | 亚洲国产av美女网站 | 久久人妻内射无码一区三区 | 精品无码av一区二区三区 | 日韩亚洲欧美精品综合 | 国精品人妻无码一区二区三区蜜柚 | 97夜夜澡人人双人人人喊 | 亚洲狠狠色丁香婷婷综合 | 成人欧美一区二区三区黑人 | 亚洲中文字幕va福利 | 无码乱肉视频免费大全合集 | 一本久久伊人热热精品中文字幕 | 一本色道久久综合狠狠躁 | 内射巨臀欧美在线视频 | 亚洲日本va中文字幕 | 精品一区二区不卡无码av | 亚洲一区av无码专区在线观看 | 久久久中文字幕日本无吗 | 色综合久久久久综合一本到桃花网 | 国产高清av在线播放 | 精品 日韩 国产 欧美 视频 | 久久综合给合久久狠狠狠97色 | 久青草影院在线观看国产 | 99久久精品日本一区二区免费 | 水蜜桃亚洲一二三四在线 | 亚洲一区二区观看播放 | 中文字幕日韩精品一区二区三区 | 欧美freesex黑人又粗又大 | 成人毛片一区二区 | 熟妇人妻中文av无码 | 又色又爽又黄的美女裸体网站 | 久久99精品国产麻豆 | 久久精品人人做人人综合试看 | 一区二区三区高清视频一 | 欧美人妻一区二区三区 | 日本大香伊一区二区三区 | 日韩成人一区二区三区在线观看 | 国产97人人超碰caoprom | 中文无码伦av中文字幕 | 人妻少妇被猛烈进入中文字幕 | 性欧美大战久久久久久久 | 亚洲中文字幕久久无码 | 国产成人午夜福利在线播放 | 亚洲一区二区三区偷拍女厕 | 好男人www社区 | 亚洲国产精品久久久久久 | 黑森林福利视频导航 | 亚洲精品一区二区三区在线 | 亚洲の无码国产の无码步美 | 精品国产一区av天美传媒 | 99在线 | 亚洲 | 亚洲成熟女人毛毛耸耸多 | 国产成人精品一区二区在线小狼 | 一二三四社区在线中文视频 | 亚洲成av人影院在线观看 | 国产农村乱对白刺激视频 | 曰韩无码二三区中文字幕 | 少妇人妻大乳在线视频 | 在线观看欧美一区二区三区 | 婷婷色婷婷开心五月四房播播 | 亚洲成在人网站无码天堂 | 伊人久久大香线蕉午夜 | 两性色午夜免费视频 | 精品国产一区二区三区av 性色 | 精品一区二区不卡无码av | 国产情侣作爱视频免费观看 | 亚洲精品午夜国产va久久成人 | 久久综合给久久狠狠97色 | 国产av人人夜夜澡人人爽麻豆 | 亚洲中文字幕无码一久久区 | 亚洲中文字幕在线无码一区二区 | 亚洲国产精品美女久久久久 | 成人无码精品1区2区3区免费看 | 小泽玛莉亚一区二区视频在线 | 秋霞成人午夜鲁丝一区二区三区 | 国产精品va在线播放 | 少妇人妻av毛片在线看 | 日本饥渴人妻欲求不满 | 久久人人爽人人爽人人片av高清 | 在线播放免费人成毛片乱码 | 99久久精品国产一区二区蜜芽 | 国产三级久久久精品麻豆三级 | 国产明星裸体无码xxxx视频 | 午夜精品久久久久久久久 | 国内精品九九久久久精品 | 亚洲国产精品无码久久久久高潮 | 国产精品久久久午夜夜伦鲁鲁 | 国产精品a成v人在线播放 | 熟女俱乐部五十路六十路av | 成人精品天堂一区二区三区 | 午夜熟女插插xx免费视频 | 中文字幕无码免费久久9一区9 | 青草视频在线播放 | 女人和拘做爰正片视频 | 久久午夜无码鲁丝片午夜精品 | 亚洲中文字幕久久无码 | 熟女俱乐部五十路六十路av | 中文字幕无线码 | 久久久精品欧美一区二区免费 | 色综合久久久无码网中文 | 日本精品人妻无码77777 天堂一区人妻无码 | 极品尤物被啪到呻吟喷水 | 乌克兰少妇xxxx做受 | 人妻无码久久精品人妻 | 日韩在线不卡免费视频一区 | 亚洲精品一区二区三区四区五区 | 人人澡人人透人人爽 | 老子影院午夜精品无码 | 好爽又高潮了毛片免费下载 | 国产内射老熟女aaaa | 日韩av无码中文无码电影 | 国产av人人夜夜澡人人爽麻豆 | 人妻少妇精品无码专区二区 | 中文字幕人妻无码一区二区三区 | 狠狠色噜噜狠狠狠狠7777米奇 | 亚洲s码欧洲m码国产av | 中文字幕 亚洲精品 第1页 | 特大黑人娇小亚洲女 | 国产香蕉尹人视频在线 | 精品久久久中文字幕人妻 | 国产精品久久久一区二区三区 | 特黄特色大片免费播放器图片 | 免费人成网站视频在线观看 | 国产成人精品无码播放 | 国产精品亚洲五月天高清 | 少妇被黑人到高潮喷出白浆 | 女人被男人爽到呻吟的视频 | 中文精品无码中文字幕无码专区 | 精品无码一区二区三区爱欲 | 日本va欧美va欧美va精品 | 少妇的肉体aa片免费 | 国产一区二区三区影院 | 亚洲人交乣女bbw | 国产精品怡红院永久免费 | 国产香蕉97碰碰久久人人 | 亚洲人成影院在线无码按摩店 | 牛和人交xxxx欧美 | 国产精品-区区久久久狼 | 成人欧美一区二区三区黑人免费 | 亚洲天堂2017无码 | 中文字幕无码乱人伦 | 精品一区二区三区波多野结衣 | 亚洲国产精品无码一区二区三区 | 国产精品久久久 | 一个人免费观看的www视频 | 国产精品亚洲一区二区三区喷水 | 久激情内射婷内射蜜桃人妖 | 荡女精品导航 | 亚洲aⅴ无码成人网站国产app | 乌克兰少妇xxxx做受 | 丰满诱人的人妻3 | 久久久精品国产sm最大网站 | 俺去俺来也www色官网 | 人妻aⅴ无码一区二区三区 | 精品欧洲av无码一区二区三区 | 国产午夜视频在线观看 | 欧美兽交xxxx×视频 | 熟妇人妻激情偷爽文 | 欧美freesex黑人又粗又大 | 成人性做爰aaa片免费看 | 无码午夜成人1000部免费视频 | 亚洲一区二区三区在线观看网站 | 少妇一晚三次一区二区三区 | 在线a亚洲视频播放在线观看 | 亚洲人成无码网www | 曰韩少妇内射免费播放 | 亲嘴扒胸摸屁股激烈网站 | 久热国产vs视频在线观看 | 国产成人无码a区在线观看视频app | 少妇被粗大的猛进出69影院 | 婷婷五月综合激情中文字幕 | 国产绳艺sm调教室论坛 | 国产高清av在线播放 | 无码免费一区二区三区 | 久久无码中文字幕免费影院蜜桃 | 免费乱码人妻系列无码专区 | 亚洲区小说区激情区图片区 | 欧洲极品少妇 | 精品久久久无码中文字幕 | 亚洲国产精品久久久久久 | 激情爆乳一区二区三区 | 丰腴饱满的极品熟妇 | 丰满人妻翻云覆雨呻吟视频 | 亚洲aⅴ无码成人网站国产app | 亚洲中文字幕无码中字 | 国产精品亚洲а∨无码播放麻豆 | 亚洲国产精品成人久久蜜臀 | 欧美成人免费全部网站 | 欧美成人免费全部网站 | 久久aⅴ免费观看 | 国内精品久久久久久中文字幕 | 亚洲欧洲无卡二区视頻 | 无码国模国产在线观看 | 一本加勒比波多野结衣 | 日本成熟视频免费视频 | 十八禁视频网站在线观看 | 亚洲春色在线视频 | 天堂一区人妻无码 | 男人的天堂av网站 | 成人免费视频视频在线观看 免费 | 97无码免费人妻超级碰碰夜夜 | 国内少妇偷人精品视频免费 | 久久精品成人欧美大片 | 国产成人精品优优av | 小鲜肉自慰网站xnxx | 蜜桃臀无码内射一区二区三区 | 中文精品无码中文字幕无码专区 | 中文字幕无码日韩欧毛 | 亚洲色大成网站www | 妺妺窝人体色www在线小说 | 国产麻豆精品一区二区三区v视界 | 一本久道久久综合婷婷五月 | 国产精品久久精品三级 | 国产精品无套呻吟在线 | 日本一区二区三区免费播放 | 久久精品一区二区三区四区 | 东京热无码av男人的天堂 | 久久国产精品精品国产色婷婷 | 欧洲熟妇色 欧美 | 久久99精品国产.久久久久 | 久久亚洲a片com人成 | 无码人中文字幕 | 亚洲精品成人福利网站 | 精品乱子伦一区二区三区 | 扒开双腿疯狂进出爽爽爽视频 | 性做久久久久久久久 | 最新国产乱人伦偷精品免费网站 | 人妻有码中文字幕在线 | 亚洲精品中文字幕 | 欧美高清在线精品一区 | 激情国产av做激情国产爱 | 久久久久免费精品国产 | 久久精品成人欧美大片 | 大肉大捧一进一出好爽视频 | 久久久久久av无码免费看大片 | 一本精品99久久精品77 | 玩弄少妇高潮ⅹxxxyw | 大屁股大乳丰满人妻 | 无码一区二区三区在线观看 | 婷婷六月久久综合丁香 | 国产成人一区二区三区别 | 波多野结衣 黑人 | 久久人人爽人人人人片 | 无码人妻丰满熟妇区毛片18 | 国产黄在线观看免费观看不卡 | 波多野结衣高清一区二区三区 | 一区二区三区乱码在线 | 欧洲 | 亚洲精品国产精品乱码不卡 | 久久久国产一区二区三区 | 亚洲一区二区观看播放 | 国产成人精品一区二区在线小狼 | 好屌草这里只有精品 | 国产婷婷色一区二区三区在线 | 欧洲vodafone精品性 | 亚洲日韩av一区二区三区中文 | 国产香蕉尹人综合在线观看 | 伊人久久婷婷五月综合97色 | 国产成人久久精品流白浆 | 日韩人妻无码一区二区三区久久99 | 亚洲国产午夜精品理论片 | 日本www一道久久久免费榴莲 | 自拍偷自拍亚洲精品10p | 熟妇人妻中文av无码 | 日日摸夜夜摸狠狠摸婷婷 | 漂亮人妻洗澡被公强 日日躁 | 国产sm调教视频在线观看 | 国产精品无码一区二区桃花视频 | 性欧美熟妇videofreesex | 日韩av无码中文无码电影 | 亚洲综合久久一区二区 | 乱人伦人妻中文字幕无码 | 亚洲精品一区二区三区大桥未久 | 麻豆国产丝袜白领秘书在线观看 | 久久99精品久久久久久动态图 | 国产av人人夜夜澡人人爽麻豆 | 99久久久无码国产精品免费 | 亚洲成a人片在线观看日本 | 日本一卡2卡3卡四卡精品网站 | 国产人妻久久精品二区三区老狼 | 粉嫩少妇内射浓精videos | 奇米影视7777久久精品 | 丰满少妇熟乱xxxxx视频 | 7777奇米四色成人眼影 | 粉嫩少妇内射浓精videos | 国产做国产爱免费视频 | 日本护士xxxxhd少妇 | 天天摸天天碰天天添 | 国产精品亚洲五月天高清 | 亚洲国产日韩a在线播放 | 日日天日日夜日日摸 | 鲁鲁鲁爽爽爽在线视频观看 | 欧美日本精品一区二区三区 | 国产亚洲日韩欧美另类第八页 | 亚洲日本va午夜在线电影 | 精品水蜜桃久久久久久久 | 国产色精品久久人妻 | 99久久精品日本一区二区免费 | 99视频精品全部免费免费观看 | 亚洲人成人无码网www国产 | 亚洲日本在线电影 | 人妻有码中文字幕在线 | 最新国产乱人伦偷精品免费网站 | 131美女爱做视频 | 综合人妻久久一区二区精品 | 久久久国产一区二区三区 | 波多野结衣av一区二区全免费观看 | 国产成人综合色在线观看网站 | 免费看男女做好爽好硬视频 | 成人精品视频一区二区三区尤物 | 一本久久伊人热热精品中文字幕 | 中文字幕无码日韩欧毛 | 丰满少妇弄高潮了www | 300部国产真实乱 | 国产精品国产自线拍免费软件 | 少妇性l交大片欧洲热妇乱xxx | 精品国精品国产自在久国产87 | 午夜熟女插插xx免费视频 | 亚洲伊人久久精品影院 | 国产亚洲视频中文字幕97精品 | 一本无码人妻在中文字幕免费 | 国产无av码在线观看 | 国产精品美女久久久网av | 人人爽人人澡人人人妻 | 人人妻人人藻人人爽欧美一区 | 亚洲中文字幕va福利 | аⅴ资源天堂资源库在线 | 日本在线高清不卡免费播放 | 国产综合久久久久鬼色 | 国产一精品一av一免费 | 国产极品视觉盛宴 | 国产精品99爱免费视频 | 国产成人无码一二三区视频 | 亚洲gv猛男gv无码男同 | 亚洲国产av美女网站 | 久热国产vs视频在线观看 | 俺去俺来也www色官网 | 成人精品一区二区三区中文字幕 | 性色av无码免费一区二区三区 | 欧美高清在线精品一区 | 亚洲日韩av一区二区三区中文 | 小鲜肉自慰网站xnxx | 西西人体www44rt大胆高清 | 亚洲日本va午夜在线电影 | 亚洲精品国产品国语在线观看 | ass日本丰满熟妇pics | 人妻夜夜爽天天爽三区 | 亚洲日韩乱码中文无码蜜桃臀网站 | 亚洲精品成人av在线 | 精品无码国产自产拍在线观看蜜 | 国产又粗又硬又大爽黄老大爷视 | 国产美女极度色诱视频www | 国产偷自视频区视频 | 国产色xx群视频射精 | 国产精品99爱免费视频 | 久久久久久九九精品久 | 乱人伦中文视频在线观看 | 四虎4hu永久免费 | 亚洲精品综合五月久久小说 | 亚洲精品久久久久avwww潮水 | 久久久精品国产sm最大网站 | 日本一卡二卡不卡视频查询 | 天下第一社区视频www日本 | 两性色午夜免费视频 | 色综合视频一区二区三区 | 精品欧美一区二区三区久久久 | 欧美日韩人成综合在线播放 | 2020久久香蕉国产线看观看 | 国产乱人伦av在线无码 | 狠狠cao日日穞夜夜穞av | 亚洲国产精品无码久久久久高潮 | 超碰97人人做人人爱少妇 | 99久久精品午夜一区二区 | 波多野结衣一区二区三区av免费 | 亚洲小说春色综合另类 | 成人欧美一区二区三区黑人 | 欧美亚洲日韩国产人成在线播放 | 4hu四虎永久在线观看 | 天海翼激烈高潮到腰振不止 | 日本精品少妇一区二区三区 | 红桃av一区二区三区在线无码av | 久久精品人人做人人综合试看 | 日本在线高清不卡免费播放 | 国产成人无码av一区二区 | 亚洲国产欧美国产综合一区 | 好爽又高潮了毛片免费下载 | 国产成人无码区免费内射一片色欲 | 人妻少妇精品久久 | 欧美激情一区二区三区成人 | 又大又紧又粉嫩18p少妇 | 国产乱码精品一品二品 | 久久精品国产99精品亚洲 | 国产成人一区二区三区别 | 国产av无码专区亚洲awww | 97人妻精品一区二区三区 | 欧洲vodafone精品性 | 亚洲欧美中文字幕5发布 | 免费中文字幕日韩欧美 | 日日躁夜夜躁狠狠躁 | 欧美精品免费观看二区 | 中文字幕无码av激情不卡 | 亚洲成a人片在线观看无码 | 亚洲中文无码av永久不收费 | 久久aⅴ免费观看 | 精品久久久久久亚洲精品 | 国产成人无码av片在线观看不卡 | 无码毛片视频一区二区本码 | 亚洲精品国产第一综合99久久 | 亚洲成av人影院在线观看 | 精品人人妻人人澡人人爽人人 | 亚洲国产精华液网站w | 亚洲欧美国产精品专区久久 | 特级做a爰片毛片免费69 | 国产真实伦对白全集 | 亚洲中文字幕无码中文字在线 | 国产成人无码一二三区视频 | ass日本丰满熟妇pics | 超碰97人人射妻 | 天天躁日日躁狠狠躁免费麻豆 | 亚洲а∨天堂久久精品2021 | 中文字幕无码视频专区 | 特黄特色大片免费播放器图片 | 天天摸天天碰天天添 | 久9re热视频这里只有精品 | 无遮无挡爽爽免费视频 | 国产在线精品一区二区高清不卡 | 久久久久久亚洲精品a片成人 | 亚洲一区二区三区无码久久 | 亚洲春色在线视频 | av香港经典三级级 在线 | 在线视频网站www色 | 鲁鲁鲁爽爽爽在线视频观看 |