日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

ASP.NET Core 认证与授权[5]:初识授权

發布時間:2023/12/4 asp.net 73 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ASP.NET Core 认证与授权[5]:初识授权 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

經過前面幾章的姍姍學步,我們了解了在 ASP.NET Core 中是如何認證的,終于來到了授權階段。在認證階段我們通過用戶令牌獲取到用戶的Claims,而授權便是對這些的Claims的驗證,如:是否擁有Admin的角色,姓名是否叫XXX等等。本章就來介紹一下 ASP.NET Core 的授權系統的簡單使用。

簡單授權

在ASP.NET 4.x中,我們通常使用Authorize過濾器來進行授權,它可以作用在Controller和Action上面,也可以添加到全局過濾器中。而在ASP.NET Core中也有一個Authorize特性(但不是過濾器),用法類似:

[Authorize] // Controller級別
public class SampleDataController : Controller{[Authorize] // Action級別public IActionResult SampleAction() ? ?{} }

IAllowAnonymous

在ASP.NET 4.x中,我們最常用的另一個特性便是AllowAnonymous,用來設置某個Controller或者Action跳過授權,它在 ASP.NET Core 中同樣適用:

[Authorize]
public class AccountController : Controller{[AllowAnonymous] ? ?public ActionResult Login() ? ?{} ? ?public ActionResult Logout() ? ?{} }

如上,LoginAction便不再需要授權,同樣,在 ASP.NET Core 中提供了一個統一的IAllowAnonymous接口,在授權邏輯中都是通過該接口來判斷是否跳過授權驗證的。

public interface IAllowAnonymous{ }[AttributeUsage(AttributeTargets.Class | AttributeTargets.Method, AllowMultiple = false, Inherited = true)]public class AllowAnonymousAttribute : Attribute, IAllowAnonymous{ }

IAuthorizeData

上面提到,在 ASP.NET Core 中,AuthorizeAttribute不再是一個MVC中的Filter了,而只是一個簡單的實現了IAuthorizeData接口的Attribute

public interface IAuthorizeData{ ?
?string Policy { get; set; } ? ?
?Roles { get; set; } ?
?string AuthenticationSchemes { get; set; } }[AttributeUsage(AttributeTargets.Class | AttributeTargets.Method, AllowMultiple = true, Inherited = true)]public class AuthorizeAttribute : Attribute, IAuthorizeData{ ? ?public AuthorizeAttribute() { } ? ?public AuthorizeAttribute(string policy) ? ?{Policy = policy;} ?
? ?public string Policy { get; set; } ? ?
? ?public string Roles { get; set; } ?
? ?public string AuthenticationSchemes { get; set; } }

記得第一次在ASP.NET Core中實現自定義授權時,按照以前的經驗,直接繼承自AuthorizeAttribute,然后準備重寫OnAuthorization方法,結果懵逼了。然后在MVC的源碼中,苦苦搜尋AuthorizeAttribute的蹤跡,卻毫無所獲,后來才注意到它實現了IAuthorizeData接口,該接口才是認證的源頭,而Authorize特性只是認證信息的載體,并不包含任何邏輯。IAuthorizeData中定義的Policy, Roles, AuthenticationSchemes三個屬性分別代表著 ASP.NET Core 授權系統中的三種授權方式。

基于角色的授權

基于角色的授權,我們都比較熟悉,使用方式如下:

[Authorize(Roles = "Admin")] // 多個Role可以使用,分割

public class SampleDataController : Controller{... }

基于角色的授權的邏輯與ASP.NET 4.x類似,都是使用我在《初識認證》中介紹的IsInRole方法來實現的。

基于Scheme的授權

對于AuthenticationScheme我在前面幾章也都介紹過,比如Cookie認證默認使用的AuthenticationScheme就是Cookies,在JwtBearer認證中,默認的Scheme就是Bearer。

當初在學習認證時,還在疑惑,如何在使用Cookie認證的同時又支持Bearer認證呢?因為在認證中只能設置一個Scheme來執行,當看到這里豁然開朗,后面會詳細介紹。

[Authorize(AuthenticationSchemes = "Cookies")] // 多個Scheme可以使用,分割

public class SampleDataController : Controller{... }

當我們的應用程序中,同時使用了多種認證Scheme時,AuthenticationScheme授權就非常有用,在該授權模式下,會通過context.AuthenticateAsync(scheme)重新獲取Claims。

基于策略的授權

在ASP.NET Core中,重新設計了一種更加靈活的授權方式:基于策略的授權,也是授權的核心。

在使用基于策略的授權時,首先要定義授權策略,而授權策略本質上就是對Claims的一系列斷言。

public void ConfigureServices(IServiceCollection services){services.AddMvc();services.AddAuthorization(options =>{options.AddPolicy("EmployeeOnly", policy => policy.RequireClaim("EmployeeNumber"));}); }

如上,我們定義了一個名稱為EmployeeOnly的授權策略,它要求用戶的Claims中必須包含類型為EmployeeNumber的Claim。

其實,基于角色的授權和基于Scheme的授權,只是一種語法上的便捷,最終都會生成授權策略,后文會詳解介紹。

然后便可以在Authorize特性中通過Policy屬性來指定授權策略:

[Authorize(Policy = "EmployeeOnly")]public class SampleDataController : Controller{}

授權策略詳解

AddAuthorization

授權策略的定義使用了AddAuthorization擴展方法,我們來看看它的源碼:

public static class AuthorizationServiceCollectionExtensions{ ?
?public static IServiceCollection AddAuthorization(this IServiceCollection services) ? ?{ ? ? ? ?services.TryAdd(ServiceDescriptor.Transient<IAuthorizationService, DefaultAuthorizationService>());services.TryAdd(ServiceDescriptor.Transient<IAuthorizationPolicyProvider, DefaultAuthorizationPolicyProvider>());services.TryAdd(ServiceDescriptor.Transient<IAuthorizationHandlerProvider, DefaultAuthorizationHandlerProvider>());services.TryAdd(ServiceDescriptor.Transient<IAuthorizationEvaluator, DefaultAuthorizationEvaluator>());services.TryAdd(ServiceDescriptor.Transient<IAuthorizationHandlerContextFactory, DefaultAuthorizationHandlerContextFactory>());services.TryAddEnumerable(ServiceDescriptor.Transient<IAuthorizationHandler, PassThroughAuthorizationHandler>()); ? ? ? ?return services;} ? ?public static IServiceCollection AddAuthorization(this IServiceCollection services, Action<AuthorizationOptions> configure) ? ?{services.Configure(configure); ? ? ?
? ?return services.AddAuthorization();} }

首先,是對授權進行配置的AuthorizationOptions,然后在DI系統中注冊了幾個核心對象的默認實現,我們一一來看。

AuthorizationOptions

對于Options模式,大家應該都比較熟悉了,AuthorizationOptions是添加和獲取授權策略的入口點:

public class AuthorizationOptions{ ? ?
private IDictionary<string, AuthorizationPolicy> PolicyMap { get; } = new Dictionary<string, AuthorizationPolicy>(StringComparer.OrdinalIgnoreCase); ? ?// 在上一個策略驗證失敗后,是否繼續執行下一個授權策略public bool InvokeHandlersAfterFailure { get; set; } = true;
? ?public AuthorizationPolicy DefaultPolicy { get; set; } = new AuthorizationPolicyBuilder().RequireAuthenticatedUser().Build(); ? ?public void AddPolicy(string name, AuthorizationPolicy policy) ? ?{PolicyMap[name] = policy;} ? ?
? ?
? ?public void AddPolicy(string name, Action<AuthorizationPolicyBuilder> configurePolicy) ? ?{ ? ? ? ?var policyBuilder = new AuthorizationPolicyBuilder();configurePolicy(policyBuilder);AddPolicy(name,policyBuilder.Build());} ? ?public AuthorizationPolicy GetPolicy(string name) ? ?{ ? ?
? ?? ?return PolicyMap.ContainsKey(name) ? PolicyMap[name] : null;} }

首先是一個PolicyMap字典,我們定義的策略都保存在其中,AddPolicy方法只是簡單的將策略添加到該字典中,而其DefaultPolicy屬性表示默認策略,初始值為:“已認證用戶”。

在AuthorizationOptions中主要涉及到AuthorizationPolicy和AuthorizationPolicyBuilder兩個對象。

AuthorizationPolicy

在 ASP.NET Core 中,授權策略具體表現為一個AuthorizationPolicy對象:

public class AuthorizationPolicy{ ?

?public AuthorizationPolicy(IEnumerable<IAuthorizationRequirement> requirements, IEnumerable<string> authenticationSchemes) {} ? ?public IReadOnlyList<IAuthorizationRequirement> Requirements { get; } ? ?public IReadOnlyList<string> AuthenticationSchemes { get; } ? ?public static AuthorizationPolicy Combine(params AuthorizationPolicy[] policies) { ? ? ? ?return Combine((IEnumerable<AuthorizationPolicy>)policies);} ?
?
??public static AuthorizationPolicy Combine(IEnumerable<AuthorizationPolicy> policies) { ? ? ? ?foreach (var policy in policies){builder.Combine(policy);} ? ? ? ?return builder.Build();} ?
??
???public static async Task<AuthorizationPolicy> CombineAsync(IAuthorizationPolicyProvider policyProvider, IEnumerable<IAuthorizeData> authorizeData) { ? ? ? ?foreach (var authorizeDatum in authorizeData){any = true; ? ? ? ? ? ?var useDefaultPolicy = true; ? ? ? ? ? ?if (!string.IsNullOrWhiteSpace(authorizeDatum.Policy)){policyBuilder.Combine(await policyProvider.GetPolicyAsync(authorizeDatum.Policy));useDefaultPolicy = false;} ? ? ? ? ? ?var rolesSplit = authorizeDatum.Roles?.Split(','); ? ? ? ? ? ?if (rolesSplit != null && rolesSplit.Any()){policyBuilder.RequireRole(rolesSplit.Where(r => !string.IsNullOrWhiteSpace(r)).Select(r => r.Trim()));useDefaultPolicy = false;} ? ? ? ? ? ?var authTypesSplit = authorizeDatum.AuthenticationSchemes?.Split(','); ? ? ? ? ? ?if (authTypesSplit != null && authTypesSplit.Any()){ ? ? ? ? ? ? ? ?foreach (var authType in authTypesSplit){ ? ? ? ? ? ? ? ? ? ?if (!string.IsNullOrWhiteSpace(authType)){policyBuilder.AuthenticationSchemes.Add(authType.Trim());}}} ? ? ?
???? ? ?if (useDefaultPolicy){policyBuilder.Combine(await policyProvider.GetDefaultPolicyAsync());}} ? ? ?
???? ?return any ? policyBuilder.Build() : null;} }

如上,Combine方法通過調用AuthorizationPolicyBuilder來完成授權策略的合并,而CombineAsync則是將我們上面介紹的IAuthorizeData轉換為授權策略,因此上面說基于角色/Scheme的授權本質上都是基于策略的授權。

對于AuthenticationSchemes屬性,我們在前幾章介紹認證時經常看到,用來表示我們使用哪個認證Scheme來獲取用戶的Claims,如果指定多個,則會合并它們的Claims,其實現下一章再來介紹。

而Requirements屬性則是策略的核心了,每一個Requirement都代表一個授權條件,我們就先來了解一下它。

IAuthorizationRequirement

Requirement使用IAuthorizationRequirement接口來表示:

public interface IAuthorizationRequirement{ }

IAuthorizationRequirement接口中并沒有任何成員,在 ASP.NET Core 中內置了一些常用的實現:

  • AssertionRequirement :使用最原始的斷言形式來聲明授權策略。

  • DenyAnonymousAuthorizationRequirement :用于表示禁止匿名用戶訪問的授權策略,并在AuthorizationOptions中將其設置為默認策略。

  • ClaimsAuthorizationRequirement :用于表示判斷Cliams中是否包含預期的Claims的授權策略。

  • RolesAuthorizationRequirement :用于表示使用ClaimsPrincipal.IsInRole來判斷是否包含預期的Role的授權策略。

  • NameAuthorizationRequirement:用于表示使用ClaimsPrincipal.Identities.Name來判斷是否包含預期的Name的授權策略。

  • OperationAuthorizationRequirement:用于表示基于操作的授權策略。

其邏輯也都非常簡單,我就不再一一介紹,只展示一下RolesAuthorizationRequirement的代碼片段:

public class RolesAuthorizationRequirement : AuthorizationHandler<RolesAuthorizationRequirement>, IAuthorizationRequirement{ ? ?public IEnumerable<string> AllowedRoles { get; } ? ?protected override Task HandleRequirementAsync(AuthorizationHandlerContext context, RolesAuthorizationRequirement requirement) ? ?{... ? ? ? ?if (requirement.AllowedRoles.Any(r => context.User.IsInRole(r))){context.Succeed(requirement);} ? ? ? ?return Task.CompletedTask;} }

其AllowedRoles表示允許授權通過的角色,而它還實現了IAuthorizationHandler接口,用來完成授權的邏輯。

public interface IAuthorizationHandler{ ?
?Task HandleAsync(AuthorizationHandlerContext context); }

AuthorizationRequirement并不是一定要實現IAuthorizationHandler接口,后文會詳細介紹。

AuthorizationPolicyBuilder

在上面已經多次用到AuthorizationPolicyBuilder,它提供了一系列創建AuthorizationPolicy的快捷方法:

public class AuthorizationPolicyBuilder{ ?
?public AuthorizationPolicyBuilder(params string[] authenticationSchemes); ?
?
? ?public AuthorizationPolicyBuilder(AuthorizationPolicy policy); ?
? ?
? ? ?public IList<IAuthorizationRequirement> Requirements { get; set; }
?? ?public IList<string> AuthenticationSchemes { get; set; } ?
?? ?public AuthorizationPolicyBuilder AddAuthenticationSchemes(params string[] schemes); ? ?public AuthorizationPolicyBuilder AddRequirements(params IAuthorizationRequirement[] requirements); ? ?public AuthorizationPolicyBuilder RequireAssertion(Func<AuthorizationHandlerContext, bool> handler); ? ?public AuthorizationPolicyBuilder RequireAssertion(Func<AuthorizationHandlerContext, Task<bool>> handler) ? ?{Requirements.Add(new AssertionRequirement(handler)); ? ? ?
?? ? ?return this;} ?
? ?public AuthorizationPolicyBuilder RequireAuthenticatedUser() ? ?{Requirements.Add(new DenyAnonymousAuthorizationRequirement()); ?
?? ? ? ? ? ?return this;} ?
? ?public AuthorizationPolicyBuilder RequireClaim(string claimType); ?
?? ??public AuthorizationPolicyBuilder RequireClaim(string claimType, params string[] requiredValues); ? ?public AuthorizationPolicyBuilder RequireClaim(string claimType, IEnumerable<string> requiredValues) ? ?{Requirements.Add(new ClaimsAuthorizationRequirement(claimType, requiredValues)); ? ? ? ?return this;} ?
?
? ?public AuthorizationPolicyBuilder RequireRole(params string[] roles);
?? ??? ?public AuthorizationPolicyBuilder RequireRole(IEnumerable<string> roles) ? ?{Requirements.Add(new RolesAuthorizationRequirement(roles)); ? ? ? ?return this;} ?

?public AuthorizationPolicyBuilder RequireUserName(string userName) ? ?{Requirements.Add(new NameAuthorizationRequirement(userName)); ? ?
?? ?return this;} ? ?public AuthorizationPolicy Build(); ?
?? ? ?public AuthorizationPolicyBuilder Combine(AuthorizationPolicy policy); }

在上面介紹的幾個Requirement,除了OperationAuthorizationRequirement外,都有對應的快捷添加方法,由于OperationAuthorizationRequirement并不屬于基于資源的授權,所以不在這里,其用法留在其后續章節再來介紹。

整個授權策略的內容也就這么多,并不復雜,整個結構大致如下:

基于策略的授權進階

在上一小節,我們探索了一下授權策略的源碼,現在就來實戰一下。

我們使用AuthorizationPolicyBuilder可以很容易的在策略定義中組合我們需要的Requirement

public void ConfigureServices(IServiceCollection services){ ?
?var commonPolicy = new AuthorizationPolicyBuilder().RequireClaim("MyType").Build();services.AddAuthorization(options =>{options.AddPolicy("User", policy => policy.RequireAssertion(context => context.User.HasClaim(c => (c.Type == "EmployeeNumber" || c.Type == "Role"))));options.AddPolicy("Employee", policy => policy.RequireRole("Admin").RequireUserName("Alice").RequireClaim("EmployeeNumber").Combine(commonPolicy));}); }

如上,如果需要,我們還可以定義一個公共的策略對象,然后在策略定義中直接將其合并進來。

自定義策略

當內置的Requirement不能滿足我們的需求時,我們也可以很容易的定義自己的Requirement

public class MinimumAgeRequirement : AuthorizationHandler<NameAuthorizationRequirement>, IAuthorizationRequirement{ ? ?public MinimumAgeRequirement(int minimumAge) ? ?{MinimumAge = minimumAge;} ?

?public int MinimumAge { get; private set; } ?
?protected override Task HandleRequirementAsync(AuthorizationHandlerContext context, NameAuthorizationRequirement requirement) ? ?{ ? ? ? ?if (context.User != null && context.User.HasClaim(c => c.Type == ClaimTypes.DateOfBirth){ ? ? ? ? ? ?var dateOfBirth = Convert.ToDateTime(context.User.FindFirst(c => c.Type == ClaimTypes.DateOfBirth).Value); ? ? ? ? ? ?int calculatedAge = DateTime.Today.Year - dateOfBirth.Year; ? ? ? ? ? ?if (dateOfBirth > DateTime.Today.AddYears(-calculatedAge)){calculatedAge--;} ? ? ? ? ? ?if (calculatedAge >= requirement.MinimumAge){context.Succeed(requirement);}} ? ? ?
? ?return Task.CompletedTask;} }

然后就可以直接在AddPolicy中使用了:

services.AddAuthorization(options => {options.AddPolicy("Over21", policy => policy.Requirements.Add(new MinimumAgeRequirement(21))); });

我們自定義的 Requirement 若想得到 ASP.NET Core 授權系統的執行,除了上面示例中的實現IAuthorizationHandler接口外,也可以單獨定義AuthorizationHandler,這樣可以更好的使用DI系統,并且還可以定義多個Handler,下面就來演示一下。

多Handler模式

授權策略中的多個Requirement,它們屬于 & 的關系,只用全部驗證通過,才能最終授權成功。但是在有些場景下,我們可能希望一個授權策略可以適用多種情況,比如,我們進入公司時需要出示員工卡才可以被授權進入,但是如果我們忘了帶員工卡,可以去申請一個臨時卡,同樣可以授權成功:

public class EnterBuildingRequirement : IAuthorizationRequirement{ }

public class BadgeEntryHandler : AuthorizationHandler<EnterBuildingRequirement> { ?
?protected override Task HandleRequirementAsync(AuthorizationHandlerContext context, EnterBuildingRequirement requirement) ? ?{ ? ? ? ?if (context.User.HasClaim(c => c.Type == ClaimTypes.BadgeId){context.Succeed(requirement);} ? ? ? ?else{ ? ? ? ? ? ?// context.Fail();} ? ? ? ?return Task.CompletedTask;} }

public
class HasTemporaryStickerHandler : AuthorizationHandler<EnterBuildingRequirement> { ? ?protected override Task HandleRequirementAsync(AuthorizationHandlerContext context, EnterBuildingRequirement requirement) ? ?{ ? ? ? ?if (context.User.HasClaim(c => c.Type == ClaimTypes.TemporaryBadgeId){context.Succeed(requirement);} ? ? ? ?return Task.CompletedTask;} }

如上,我們定義了兩個Handler,但是想讓它們得到執行,還需要將其注冊到DI系統中:

services.AddSingleton<IAuthorizationHandler, BadgeEntryHandler>(); services.AddSingleton<IAuthorizationHandler, HasTemporaryStickerHandler>();

此時,在我們的應該程序中使用EnterBuildingRequirement的授權時,將會依次執行這兩個Handler。而在上面介紹AuthorizationOptions時,提到它還有一個InvokeHandlersAfterFailure屬性,在這里就派上用場了,只有其為true時(默認為True),才會在當前 AuthorizationHandler 授權失敗時,繼續執行下一個 AuthorizationHandler。

在上面的示例中,我們使用context.Succeed(requirement)將授權結果設置為成功,而失敗時并沒有做任何標記,正常情況下都是這樣做的。但是如果需要,我們可以通過調用context.Fail()方法顯式的將授權結果設置為失敗,那么,不管其他 AuthorizationHandler 是成功還是失敗,最終結果都將是授權失敗。

總結

ASP.NET Core 授權策略是一種非常強大、靈活的權限驗證方案,能夠滿足大部分的授權場景。通過本文對授權策略的詳細介紹,我想應該能夠靈活的使用基于策略的授權了,但是授權策略到底是怎么執行的呢?在下一章中,就來完整的探索一下 ASP.NET Core 授權系統的執行流程。


相關文章:

  • ASP.NET Core 認證與授權[4]:JwtBearer認證

  • ASP.NET Core 認證與授權[2]:Cookie認證

  • ASP.NET Core 認證與授權[3]:OAuth & OpenID Connect認證

  • Asp.Net Core 2.0 多角色權限認證

  • asp.net core 2.0 web api基于JWT自定義策略授權


原文:http://www.cnblogs.com/RainingNight/p/authorization-in-asp-net-core.html


.NET社區新聞,深度好文,歡迎訪問公眾號文章匯總 http://www.csharpkit.com

總結

以上是生活随笔為你收集整理的ASP.NET Core 认证与授权[5]:初识授权的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

成人小视频在线观看免费 | 久精品视频在线观看 | 亚洲视频 中文字幕 | 欧美日韩中文字幕视频 | 三级视频片 | 在线观看亚洲国产 | 91精品少妇偷拍99 | 日韩一区二区三区在线看 | 六月丁香在线观看 | h久久| 亚洲精品自在在线观看 | 日韩理论电影网 | 亚洲欧美国产精品va在线观看 | www.色午夜.com | 91麻豆精品国产午夜天堂 | 成人综合免费 | 精品国产电影一区二区 | 91精彩视频 | 波多野结衣电影久久 | 狠狠操狠狠插 | 色99中文字幕 | 在线观看国产v片 | 五月开心激情 | 精品免费一区 | 安徽妇搡bbbb搡bbbb | 91尤物国产尤物福利在线播放 | 国产成人一区二区啪在线观看 | 伊人天天操 | 久久精品99国产国产精 | 精品1区2区3区 | 西西444www大胆高清视频 | 日本中文字幕在线视频 | 久久人人爽爽 | 天天天在线综合网 | 成年人在线免费看 | 午夜精品久久久久久久99 | av黄色在线| 五月婷婷久久丁香 | 黄色毛片视频 | 探花视频免费在线观看 | 日韩一区二区三区观看 | 久久精品99国产精品酒店日本 | 精品一区二区三区久久久 | 久久久久在线观看 | 国产精品成人久久久 | 免费观看性生活大片3 | 日本论理电影 | 久99久精品视频免费观看 | 亚洲午夜激情网 | 91精品国自产在线观看 | 欧美日韩在线网站 | 日日干日日色 | 国产精品99免费看 | 波多野结衣在线播放视频 | 91精品久久久久久久99蜜桃 | 成人黄色小说网 | 国产a级片免费观看 | 91av短视频| 色之综合网 | 免费裸体视频网 | 五月天综合网站 | 99久久日韩精品免费热麻豆美女 | 日日日日干 | 天堂va在线高清一区 | 九九热在线观看 | 日韩三级久久 | 欧美日韩在线视频一区二区 | 国产a视频免费观看 | av电影免费在线看 | 97人人网 | 狠狠狠综合 | 天天操夜夜爱 | 18av在线视频 | 亚洲第一av在线 | 国产精品99精品 | 国产一区免费看 | 国产精品福利无圣光在线一区 | 正在播放国产91 | 亚洲国产片 | 亚洲国产精品成人综合 | 久久久精品欧美 | 午夜体验区 | 亚洲乱码精品久久久 | 国产 视频 久久 | 日韩理论在线视频 | 黄色大片国产 | 免费精品 | 免费在线观看av不卡 | 久久99网站| 日韩在线免费小视频 | 97在线视频免费 | 欧美最爽乱淫视频播放 | 最新中文字幕在线观看视频 | 久久久久一区二区三区四区 | 国产91精品欧美 | 亚洲永久精品视频 | 国产精品原创av片国产免费 | 国产不卡在线播放 | 91在线亚洲 | 一区二区三区在线电影 | 亚洲精品乱码久久久久久高潮 | 黄色app网站在线观看 | 久久999精品 | 久操视频在线观看 | 精品久久久久久久久久 | 日日爽日日操 | 91丨九色丨丝袜 | 欧美另类高清 videos | 日韩有色| 久久久综合香蕉尹人综合网 | 亚洲免费av观看 | 91九色在线观看视频 | 亚洲欧美精品一区二区 | 黄网av在线| 成人av电影免费在线观看 | 国产亚洲小视频 | 97视频在线观看网址 | 欧美人操人 | av免费电影在线观看 | 999男人的天堂 | 亚洲二区精品 | 在线只有精品 | 激情视频久久 | 综合天天色 | 久久免费视频在线观看30 | 国产成人综合图片 | 亚洲午夜久久久综合37日本 | 日本黄色免费在线 | 国产精品123| av免费观看网址 | 草久视频在线 | 婷婷丁香激情五月 | 国产精品久久久久一区二区三区共 | 999久久久久久久久久久 | 九色91在线 | 在线视频婷婷 | 久草www| 精品在线一区二区 | 天天操天天射天天爱 | 在线精品视频免费观看 | 91传媒在线看 | 综合成人在线 | sm免费xx网站| 久久伊人国产精品 | 六月丁香在线观看 | 国产成人久久av977小说 | 国产精品免费视频久久久 | 久久久久久毛片精品免费不卡 | 91中文视频 | 亚洲国产日韩精品 | av中文字幕在线电影 | 综合视频在线 | 808电影 | 96av视频 | 久久精品国产一区二区电影 | 色婷婷免费视频 | 亚洲精品国产品国语在线 | 91av在线视频免费观看 | 福利视频导航网址 | 天天干夜夜爽 | 又黄又刺激视频 | 能在线看的av | 久久的色| 欧美在线你懂的 | 国产夫妻av在线 | 成人一区电影 | 国产色婷婷精品综合在线手机播放 | 在线看黄网站 | 三级小视频在线观看 | 日韩免费电影网站 | 丁香六月在线观看 | 香蕉久久久久久久 | 国产精品免费在线播放 | 黄色1级毛片 | 手机色站| 91视频在线看 | 亚洲国产中文字幕在线 | 六月婷婷久香在线视频 | 波多野结衣在线中文字幕 | 国产一级大片免费看 | 国产五月婷 | 日韩免费中文字幕 | 日日夜夜精品视频天天综合网 | 国产精品久久久久久麻豆一区 | 一区二区三区在线免费观看视频 | 亚洲精品88欧美一区二区 | 亚洲 欧洲av| 国产一区二区视频在线播放 | 国产一二三在线视频 | 国产精品自拍在线 | 一区二区三区四区五区六区 | 国产精品电影一区二区 | 91在线www | 日韩理论片在线 | 色综合 久久精品 | 在线观看黄色av | 亚洲视频分类 | 国产99久久久国产 | 在线日韩精品视频 | 亚洲欧美偷拍另类 | 亚洲伊人婷婷 | 久草在线播放视频 | a视频在线观看 | 国产黄色片一级三级 | 一区二区中文字幕在线 | 亚洲精品99久久久久久 | 久久久国产电影 | 九草视频在线观看 | 狠狠躁夜夜a产精品视频 | 91在线你懂的 | 亚洲不卡av一区二区三区 | 激情深爱 | www.狠狠| 国产成人精品一区二区三区福利 | 免费碰碰 | 黄色日本片 | 亚洲国产精品久久久 | 国产999精品 | av电影在线观看 | 日本aaa在线观看 | 久久网站最新地址 | 久久精品中文视频 | 久久久国产精品久久久 | 精品久久久久久综合日本 | 人人干狠狠干 | 欧美亚洲精品一区 | 99热在线这里只有精品 | 在线 国产 亚洲 欧美 | 粉嫩av一区二区三区免费 | 91视频在线网址 | 有码一区二区三区 | 国产精品av久久久久久无 | 在线观看深夜福利 | 日韩精品一区二区三区视频播放 | 在线观看麻豆av | 91视频久久久久 | 91九色蝌蚪视频 | 伊人中文字幕在线 | 日韩电影中文字幕 | 国产日韩精品视频 | 色网站在线观看 | 欧美日韩xxx | 四虎在线观看网址 | 成人动漫视频在线 | 亚洲黄色影院 | 午夜av网站 | av电影不卡 | 日韩三级在线观看 | 美女免费黄网站 | 在线观看免费视频 | 久99久在线视频 | 97在线影院 | 国产精品二区在线观看 | av黄色在线| 狠狠色狠狠色合久久伊人 | 日韩电影一区二区三区 | 蜜臀av性久久久久蜜臀av | 在线三级av | 国产色女人 | 香蕉影视 | 色综合久久99 | 三级视频国产 | 亚洲欧洲一区二区在线观看 | 亚洲精品国偷拍自产在线观看蜜桃 | 国产成人精品一区二区在线 | 麻豆一精品传二传媒短视频 | 久久人人爽爽 | 欧美性超爽 | 色婷婷久久久综合中文字幕 | 久草在线官网 | 中文字幕日韩无 | 久草手机视频 | 亚洲精品在线视频播放 | 中文字幕 在线 一 二 | av一级免费 | 亚洲jizzjizz日本少妇 | 久久久首页 | 日韩69av| 国产99在线播放 | 97国产一区二区 | 婷婷丁香久久五月婷婷 | 国产精品一区二区三区在线播放 | 免费在线一区二区 | 五月色丁香 | 最近字幕在线观看第一季 | 深夜免费福利网站 | 日韩高清国产精品 | 亚洲色图27p | 久久久国产一区二区三区四区小说 | 亚洲第一区精品 | 国产日韩欧美中文 | 欧美日韩不卡一区二区三区 | 最近免费中文字幕 | 超碰97.com | 久久久电影网站 | 亚洲成人免费观看 | 国产在线欧美在线 | 日韩欧美亚洲 | 中文字幕在线观看免费高清完整版 | 精品成人久久 | 99精品福利| 成人国产电影在线观看 | 久久爱资源网 | 精品自拍网 | 中国一级片视频 | 五月激情丁香婷婷 | 麻豆视频一区二区 | 成人h动漫精品一区二 | 日韩av免费在线看 | 99在线精品免费视频九九视 | 在线三级播放 | 日韩欧美国产成人 | 黄色免费在线视频 | 成年人在线播放视频 | 欧美日韩国产三级 | 国产五码一区 | 午夜精品视频在线 | 成全免费观看视频 | 亚洲国产精品一区二区久久,亚洲午夜 | 五月综合在线观看 | 免费国产一区二区 | 免费高清在线观看成人 | 久久久久亚洲精品男人的天堂 | 97超碰影视 | 97超碰人人网| 成人中文字幕在线观看 | 亚洲欧美国产视频 | 国产视频精品久久 | 在线成人观看 | 国产精品一区二区在线 | 日韩在线精品视频 | 就色干综合 | 久久,天天综合 | 亚洲综合在线视频 | 97免费 | 国产精品成人一区 | 亚洲第一成网站 | 久久久久成人精品 | 青青河边草手机免费 | 国产淫片免费看 | 97超碰在线免费 | 日韩高清不卡一区二区三区 | 欧美性一级观看 | 欧美精品国产精品 | 国内精品毛片 | 日韩色视频在线观看 | 精品黄色片 | 久久九九精品 | 国产女做a爱免费视频 | 欧美日韩中文字幕视频 | 成人a在线观看 | 国产97色在线 | 免费国产在线精品 | 91精品国产综合久久婷婷香蕉 | 国产精品久久久毛片 | 国产不卡在线 | 久久999久久 | 亚洲 欧美 91 | 国产午夜精品久久久久久久久久 | 日本一区二区高清不卡 | 日韩视频一区二区三区在线播放免费观看 | 久草手机视频 | 国产资源中文字幕 | 日日夜夜骑 | 2024国产精品视频 | 国产一区二区中文字幕 | 欧美成人影音 | 黄色毛片观看 | 久久影视一区二区 | 久草网在线观看 | 日韩天堂在线观看 | 久久久亚洲国产精品麻豆综合天堂 | 日日夜夜av | 亚洲精品一区二区网址 | 国产在线观看污片 | 久久99亚洲精品久久 | 日本夜夜草视频网站 | 超碰在线公开 | 免费观看成人av | 激情开心 | 久久夜色精品国产亚洲aⅴ 91chinesexxx | 久草免费在线观看 | 2023天天干 | 狠狠久久婷婷 | 97超级碰碰碰碰久久久久 | 97av在线| 在线观看av不卡 | 日日夜夜精品免费视频 | 日日操夜| 久久精品一区二区三区四区 | 在线观看亚洲国产精品 | 麻豆果冻剧传媒在线播放 | 夜夜视频欧洲 | 国产免费精彩视频 | 亚洲国产中文在线 | 九色91在线| 制服丝袜在线 | 九月婷婷综合网 | 国产精品福利视频 | 亚洲婷婷在线 | 婷婷视频在线 | 午夜久久成人 | 国产专区在线播放 | 欧美福利网站 | 在线播放91 | 五月情婷婷 | 丁香六月国产 | 久久精品牌麻豆国产大山 | 美女视频黄频大全免费 | 五月天亚洲综合 | 91av资源网| 亚洲欧洲一区二区在线观看 | 久久精品国产成人精品 | 久久r精品 | 国产精品99久久久久的智能播放 | 国产成人高清在线 | 99精品免费在线观看 | 欧美一级性生活片 | 99精品视频一区 | 免费电影一区二区三区 | 久久久综合色 | 日日夜夜精品免费 | 成人性生爱a∨ | 国产精品麻豆视频 | 成人黄色电影免费观看 | 亚洲精品xxx | 91成人在线网站 | 日韩久久影院 | 中文字幕中文字幕在线一区 | 91精品在线麻豆 | 久久有精品 | 日本精品一区二区三区在线播放视频 | 久久精品波多野结衣 | 久久伊人八月婷婷综合激情 | 国产亚洲午夜高清国产拍精品 | 五月天.com | 天天插综合网 | 在线91精品| 成人在线超碰 | 亚洲精品字幕在线观看 | www.福利视频 | 91视频中文字幕 | 色婷婷综合久久久久 | 国产精品视频免费看 | 三级av网站| 伊人天天操 | 最近最新中文字幕视频 | 欧美二区三区91 | 国产一区二区播放 | 99精品在线免费 | 黄色毛片电影 | 日日夜夜操av | 免费看三片 | 天天操天天舔天天爽 | 欧美午夜性 | 高潮久久久久久久久 | 最近的中文字幕大全免费版 | 国产高清综合 | 成人羞羞视频在线观看免费 | 97碰在线| 日韩免费观看一区二区 | 99国内精品 | 午夜性色 | 99视频免费观看 | 中文字幕免费久久 | 久久天天躁夜夜躁狠狠85麻豆 | 免费观看一级特黄欧美大片 | 日韩高清三区 | 国产精品区一区 | 日韩欧美区| 在线视频18在线视频4k | 亚洲韩国一区二区三区 | 日韩免费福利 | 久草网在线视频 | 六月色婷婷 | 久久综合成人网 | 视频三区| 日韩av线观看 | 成年人电影毛片 | 免费高清无人区完整版 | 一本到视频在线观看 | 色中射 | 亚洲综合涩| 国产手机av | 亚洲午夜在线视频 | 中文字幕日本在线观看 | 最新av在线网址 | av不卡中文字幕 | 99在线免费视频观看 | 国产日韩欧美在线看 | 日韩一区二区三区不卡 | 中文字幕色站 | 国产在线视频一区二区三区 | 久久成人麻豆午夜电影 | 最近中文字幕高清字幕在线视频 | 丁香六月在线观看 | 91视视频在线直接观看在线看网页在线看 | 四虎成人精品永久免费av | 激情影院在线观看 | 国产福利一区二区三区视频 | 黄色小说免费观看 | 五月香视频在线观看 | 亚洲精品高清在线观看 | 国产精品短视频 | 91看片淫黄大片一级在线观看 | 亚洲成人家庭影院 | 久草9视频 | 午夜精品视频一区二区三区在线看 | 久久综合九色综合97婷婷女人 | 国内久久看 | 久久精品香蕉视频 | 久久久久久久久久久久久久电影 | 在线日韩 | 欧美国产高清 | 日日操狠狠干 | 欧美日本不卡高清 | 黄色大片免费播放 | aⅴ精品av导航 | 欧美日韩天堂 | 亚洲日本成人网 | 51久久成人国产精品麻豆 | 天天插夜夜操 | 中文字幕传媒 | 99久久精品国产一区二区成人 | 91av原创 | 午夜精品福利一区二区三区蜜桃 | 色香蕉视频 | 日韩久久精品一区二区 | 国产在线视频一区二区三区 | 正在播放五月婷婷狠狠干 | 中文字幕有码在线观看 | 伊人久在线 | 特级毛片aaa | 91成品视频| 欧美日韩一级久久久久久免费看 | 黄色三级久久 | 色丁香色婷婷 | 亚洲精品玖玖玖av在线看 | 国产剧情一区二区 | 亚洲春色综合另类校园电影 | 少妇按摩av | 国产成人不卡 | 久久久久久久久久久国产精品 | 久久综合狠狠综合 | 久久视频免费观看 | 丁香激情五月 | 99视频在线免费看 | 97人人超| 国产一区二区三区 在线 | av中文字幕av | 午夜免费久久看 | 国产欧美综合在线观看 | 国产成人黄色网址 | 一区二区三区在线视频观看58 | 黄色影院在线免费观看 | 亚洲午夜av电影 | 337p欧美| 久久超碰97 | 亚洲日本欧美 | 成人九九视频 | 亚洲欧洲日韩在线观看 | 西西www4444大胆视频 | 美女精品 | 久久avav | 91在线影院 | 丝袜美腿av| 日本女人逼 | 五月婷婷操 | 亚洲免费在线观看视频 | 一区免费在线 | 久久99久久久久 | 久久综合久久八八 | 国产黄色大片 | 国产精品久久片 | 在线观看黄a | 黄色91在线 | 免费一级日韩欧美性大片 | 日日干夜夜草 | 91av看片 | 五月婷婷黄色 | 久久午夜视频 | 精品免费观看视频 | 欧美精彩视频 | 最近日本字幕mv免费观看在线 | 狠狠激情中文字幕 | 最近久乱中文字幕 | 中文字幕av最新 | 成人永久在线 | 午夜精品久久一牛影视 | 成人动漫精品一区二区 | 日韩日韩日韩日韩 | 久久久久久久国产精品影院 | 国产成人区 | 久久精品资源 | 日本婷婷色 | 一区二区三区四区在线 | 日韩色中色 | 国产乱对白刺激视频不卡 | 在线观看视频一区二区三区 | 丁香六月婷婷开心 | 成年人免费在线观看 | 午夜精选视频 | 99久久99久国产黄毛片 | 婷婷在线色 | 狠狠狠狠狠狠操 | 日韩美女久久 | 日韩日韩日韩日韩 | 99久久日韩精品视频免费在线观看 | 99国产精品| 国产精品久久久久久久久久久久午 | a级片网站 | 国产高清免费av | 91九色在线视频观看 | 久久99热国产 | 色吊丝av中文字幕 | 999久久久免费视频 午夜国产在线观看 | 精品久久久久亚洲 | 日韩三级av | 日韩久久精品一区二区三区下载 | 亚洲精品综合在线观看 | 欧美一区二区精美视频 | 国产黄色精品网站 | 日日日网| 国产va在线 | 亚洲电影免费 | 91网站免费观看 | 国产不卡视频在线播放 | 网站免费黄 | 综合色久 | 韩国三级在线一区 | 蜜臀久久99精品久久久酒店新书 | 欧美福利网站 | 色大片免费看 | 久久国产精品小视频 | 天天操天天操天天爽 | 精品在线一区二区三区 | 国产三级久久久 | 亚洲国产精品一区二区久久,亚洲午夜 | 日韩一区二区免费视频 | 黄色一级在线免费观看 | 日韩激情在线视频 | 亚洲国产美女精品久久久久∴ | 国产精品一码二码三码在线 | 在线免费黄色av | 国产精品久久久久久久久久 | 97色se| 中文字幕第一页在线播放 | 一级一片免费看 | 亚洲 欧美 日韩 综合 | 国产一区高清在线观看 | 午夜视频免费在线观看 | 又黄又爽免费视频 | 最近中文字幕完整高清 | 黄色片软件网站 | 中文字幕av一区二区三区四区 | 国产在线久久久 | 亚洲欧美日韩精品一区二区 | 蜜桃视频成人在线观看 | 国产中文字幕国产 | 婷婷深爱五月 | 免费日韩av电影 | 亚洲狠狠操 | 久久艹中文字幕 | 日韩理论在线视频 | 男女啪啪视屏 | 干干操操| 91精品看片| 国产亚洲精品久久久久久网站 | 黄色av高清 | 在线观看的av网站 | 人人看黄色 | 99久久99久久综合 | 在线黄色毛片 | 久草爱视频 | 白丝av免费观看 | 久久蜜桃av| 免费看片成人 | 麻豆一区二区三区视频 | 欧美福利片在线观看 | 日韩高清片 | 欧美另类xxxx | 久久国产精品99久久久久 | 日本爱爱免费视频 | 成人av电影免费观看 | 爱爱av在线| 国产精品第一 | 99精品国产一区二区三区不卡 | 亚洲在线精品视频 | 女人18毛片a级毛片一区二区 | 91免费的视频在线播放 | 91一区二区三区久久久久国产乱 | 成年免费在线视频 | 在线观看色网 | 国产精品18久久久久久久久久久久 | 日本精a在线观看 | 精品999在线观看 | 婷婷六月丁香激情 | 免费色视频在线 | 免费网址在线播放 | 久久免费一级片 | 国产精品久久久久久麻豆一区 | 丁五月婷婷| 黄影院| 免费av 在线| 亚洲,国产成人av | 97电影网站 | 精品国产观看 | 国产在线小视频 | 亚洲va欧美va人人爽春色影视 | 在线草| 黄色av网站在线观看免费 | 国产精品视频在线观看 | 五月天亚洲综合 | 久久av中文字幕片 | 久久精品一区二 | 91丨九色丨丝袜 | 懂色av一区二区三区蜜臀 | 国产一区二区三区 在线 | 国产不卡在线观看视频 | 五月婷婷色 | 亚洲极色 | 九九天堂 | 久久av免费 | 久久婷婷一区二区三区 | 91精品国产九九九久久久亚洲 | 一本一本久久a久久精品牛牛影视 | 久草在线视频网 | 国产v亚洲v| 婷婷夜夜| 欧美性极品xxxx娇小 | 欧美9999| 丰满少妇在线观看 | 久久美女高清视频 | 99草视频在线观看 | 99视频网址| 精品亚洲va在线va天堂资源站 | 日韩午夜大片 | 国产在线精品福利 | 一区二区三区在线免费播放 | 97视频中文字幕 | 99久久精品免费看国产 | 欧美日一级片 | 欧美精彩视频在线观看 | www.午夜色.com | 天天干,天天操,天天射 | 国产高清在线免费观看 | 蜜桃av久久久亚洲精品 | 久久你懂得| 97精产国品一二三产区在线 | 中文字幕有码在线 | 久久网页 | 毛片视频电影 | 久久激情综合网 | 国产在线观 | 在线观看黄污 | 一区二区三区视频网站 | 亚洲爱爱视频 | 久久婷婷激情 | av品善网| 97超视频在线观看 | 一区二区三区在线免费播放 | 夜色资源网 | 天天天色综合 | 黄色软件在线观看视频 | 97超碰.com| 国产精品女教师 | 国产欧美中文字幕 | 伊人午夜视频 | 亚洲国产丝袜在线观看 | zzijzzij亚洲成熟少妇 | 久久久久久久久久毛片 | 中文字幕精| 九七人人干 | 亚洲激情五月 | 人人干狠狠干 | av片中文字幕 | 国内精品视频在线 | 国产精品久久久久国产a级 激情综合中文娱乐网 | 亚洲涩涩网 | 免费网址在线播放 | 9999国产| 亚洲最新av在线网址 | 日本一区二区三区免费看 | 国产成人精品999在线观看 | 中文字幕一区二 | 色中文字幕在线观看 | 亚洲综合在线播放 | 欧美精品中文字幕亚洲专区 | 久久精品伊人 | 国产手机av | 国产成人高清 | 麻豆91在线观看 | 91精品一区二区在线观看 | 亚洲欧美视频一区二区三区 | 国产成人黄色网址 | 婷婷网五月天 | 亚洲免费专区 | 五月开心婷婷 | 亚洲视频2 | 国内成人精品2018免费看 | 国产精品女同一区二区三区久久夜 | 免费电影一区二区三区 | 婷婷网址| 国产成人一区二区三区 | 天天综合网在线观看 | 黄色字幕网 | 国产视频精品久久 | 99精品美女 | 毛片网在线播放 | 亚洲欧美日本国产 | 日韩av男人的天堂 | 国产精品黑丝在线观看 | 99精品在线视频播放 | 亚色视频在线观看 | 日韩欧美视频 | 视频一区二区三区视频 | 欧美日韩精品影院 | 97人人模人人爽人人喊网 | 国产在线一区观看 | 免费精品视频在线观看 | 久久99热精品这里久久精品 | av一级片网站 | 亚洲国产成人在线播放 | 色av男人的天堂免费在线 | 91精品国产综合久久久久久久 | 国产中文在线播放 | 免费亚洲黄色 | 尤物一区二区三区 | 99在线精品视频观看 | 国产黄色免费 | 国产一级在线视频 | 91精品久久久久久久久久入口 | 精品美女在线观看 | 国产精品一区二区视频 | 一区二区精品视频 | 国产精品h在线观看 | 色偷偷888欧美精品久久久 | 天天干夜夜爱 | 亚洲视频免费在线观看 | 国产日韩精品一区二区三区在线 | 欧美一级免费 | 亚洲第一香蕉视频 | 色国产精品 | 日韩视频免费观看高清 | 免费看三级黄色片 | 国产成人精品午夜在线播放 | 亚洲精品乱码白浆高清久久久久久 | 激情久久一区二区三区 | 欧美久久久久久久久久久久 | 操操操com | 99精品一区二区三区 | 美女免费视频一区二区 | 国产精品美女久久久久久久久久久 | 天天爱天天操 | 亚洲五月婷婷 | 99热国产在线 | 天天爽夜夜爽人人爽曰av | 久久久影视| 天天射天天搞 | 中中文字幕av在线 | 欧美精品国产综合久久 | 中文字幕国产亚洲 | 欧美一区二区在线刺激视频 | av五月婷婷 | 欧美孕妇与黑人孕交 | 91色吧 | 91福利国产在线观看 | 日韩久久一区二区 | 一级做a爱片性色毛片www | 亚洲精品乱码久久久久久蜜桃91 | 国产在线观看免 | 天天干天天玩天天操 | 99色99| av成人免费 | 亚洲精品免费在线播放 | 日韩视频一区二区三区 | 中文字幕久久精品亚洲乱码 | 日韩黄色中文字幕 | 免费看三片 | 黄色av电影免费观看 | 日日操日日干 | 国产精品一区二区精品视频免费看 | 国产九九精品 | 在线视频福利 | 麻豆国产露脸在线观看 | 亚洲成人黄色在线 | 日韩欧美高清 | 国产黄色一级片 | 久久久久久久久久久久国产精品 | 99热最新精品 | 久久人人插 | 国内精品久久久久国产 | 一区二区视频在线看 | 在线观看网站黄 | 91在线视频精品 | 国产成本人视频在线观看 | 欧美精品乱码久久久久久 | 国产精品久久免费看 | 亚洲精品国产精品国产 | 在线精品亚洲 | 午夜精品一区二区三区在线视频 | 久久久久国产一区二区 | 国产精品theporn| 999久久久久久久久6666 | 伊人色综合久久天天 | 日本在线观看黄色 | 99色国产| 国际精品久久久久 | 日本激情动作片免费看 | aaa毛片视频 | www.色婷婷.com | 久草99| 2023亚洲精品国偷拍自产在线 | 久久久福利影院 | 97精品在线视频 | 国产视频久久久 | 欧美韩国日本在线观看 | 成人在线播放网站 | 亚洲精品免费在线观看视频 | 99精品亚洲 | 欧美日本不卡高清 | 一区二区久久 | 中文字幕成人在线观看 | 久久久久美女 | 久久久久久久电影 | 激情影音先锋 | 天天婷婷 | 亚洲激情一区二区三区 | 永久免费的av电影 | 高清视频一区二区三区 | 黄色亚洲在线 | 国产精品一区二区久久精品爱微奶 | 在线观看日韩av | 日韩,精品电影 | 黄色com| 中文字幕亚洲不卡 | 草樱av| 国产精品久久久久久欧美 | 成人全视频免费观看在线看 | 中文字幕一区二区三区四区在线视频 | 骄小bbw搡bbbb揉bbbb | 成人h视频在线 | 超碰人人射| 久久综合色8888 | 精品久久久久久亚洲综合网 | 337p西西人体大胆瓣开下部 | 超碰个人在线 | 人人爱爱 | 国产精品男女视频 | 日韩精品中文字幕在线观看 | 久久久久久久久毛片精品 | 精品国产福利在线 | 一区二区激情视频 | 综合激情网 | 97超在线 | 波多野结衣电影久久 | 日韩在线观看精品 | 久草视频在 | 久久国内视频 | 欧美一级片免费在线观看 | 一区二区亚洲精品 | 久久亚洲欧美 | 亚洲人久久久 | 欧美日韩在线观看一区二区 | 久久激情小视频 | 综合天天久久 | 97超碰国产精品女人人人爽 | 国产精品免费久久久 | 97超碰资源总站 | 免费在线观看日韩 | 久久午夜精品视频 | 久久精品视频国产 | 久久精品系列 | 黄网站免费久久 | 婷婷在线免费观看 | 91完整版观看 | 999电影免费在线观看 | 精品国产a | av片在线观看 | 久久国产a | 日韩视频在线观看免费 | 国产精品剧情 | 国产精品免费小视频 | 久久久这里有精品 | 久久久久久网站 | 日韩精品一区二区三区高清免费 | 亚洲最大av网站 | 91大神免费视频 | 国产爽妇网 | 国产最顶级的黄色片在线免费观看 | 亚洲天堂在线观看完整版 | 国产精品毛片久久久 | 亚洲国产精品推荐 | 久久久麻豆 | 日韩av播放在线 | 九九免费精品视频在线观看 | 精品天堂av | 中文字幕在|