免费国产精品自在自线-91精品国产色综合久久久浪潮-99热久久免费频精品-国产精品国模在线观看-久久亚洲国产精品成人?V秋霞-久久国产一级A片免费播放-亚洲国产欧洲综合97久久-久久国产白嫩美女呻吟高潮

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營的一線實(shí)戰(zhàn)洞察。

ASP.NET Core 實(shí)現(xiàn) SAML2 單點(diǎn)登錄:從協(xié)議拆解到線上排錯

ASP.NET Core 實(shí)現(xiàn) SAML2 單點(diǎn)登錄:從協(xié)議拆解到線上排錯 簡介Sustainsys.Saml2原稱Kentor.AuthServices是一個面向ASP.NET開發(fā)者的開源身份驗(yàn)證庫以C#語言實(shí)現(xiàn)用來為網(wǎng)站增加SAML2協(xié)議能力使其能夠作為服務(wù)提供方與身份提供方完成單點(diǎn)登錄對接。資源包共含883個文件大小約5.64MB其中以C#源文件和頁面視圖居多同時(shí)提供了大量配置文件、頁面樣式與腳本、測試證書以及完整的項(xiàng)目工程文件可用于還原出可運(yùn)行的示例站點(diǎn)與聯(lián)調(diào)環(huán)境。源碼按三個版本分支組織第一個分支基于舊版標(biāo)識模型兼容傳統(tǒng)模塊與多種框架第二個分支使用新版標(biāo)識模型支持多目標(biāo)框架第三個分支則專為新一代核心框架設(shè)計(jì)。對于需要在自己項(xiàng)目中實(shí)現(xiàn)SAML2認(rèn)證、研究服務(wù)提供方與身份提供方交互細(xì)節(jié)的開發(fā)者這份材料提供了可直接參考的源碼、配置模板和證書樣例當(dāng)前已有525人學(xué)習(xí)下載同時(shí)可借助分支對比來輔助版本遷移與二次開發(fā)。1. 為什么要在 ASP.NET 里專門做一個 SAML2 身份驗(yàn)證服務(wù)接手過幾次企業(yè)級接入后你會發(fā)現(xiàn)SAML2 身份驗(yàn)證服務(wù)真正難的從來不是“驗(yàn)證簽名”和“解析 XML”而是把整個跳轉(zhuǎn)鏈路、信任關(guān)系、會話狀態(tài)串起來。很多團(tuán)隊(duì)第一次接入時(shí)想得很簡單把 IdP 給的證書拿來在自己站點(diǎn)里驗(yàn)一下斷言就完事。結(jié)果一上線就翻車——不是跳不回來就是簽名字節(jié)對不上再不就是登錄成功后用戶信息全是空的。這套東西最反直覺的地方在于它能跑通不代表你理解了它一旦某個參數(shù)兩邊各寫各的你面對的就是一條無法從應(yīng)用日志里直接看出原因的黑匣子鏈。這篇文章要講的是在 ASP.NET 平臺上把 SAML2 服務(wù)提供方SP完整落地的方法覆蓋從協(xié)議拆解、最小可運(yùn)行實(shí)現(xiàn)、核心參數(shù)調(diào)整到線上排錯的全過程。不管你是要接入客戶的統(tǒng)一身份平臺還是打算把自己的系統(tǒng)對接到公司內(nèi)部的單點(diǎn)登錄體系只要涉及“讓 ASP.NET 應(yīng)用聽懂 SAML2 斷言”下面這些內(nèi)容都能直接拿來用??赐昴隳塥?dú)立搭出可交付的身份驗(yàn)證接入層并知道出了問題該看哪里。2. 拆開 SAML2消息、跳轉(zhuǎn)與信任模型這三件事2.1 三類核心消息斷言、協(xié)議消息與綁定方式SAML2 里的有效載荷是“斷言”Assertion一段攜帶用戶身份信息的 XML。斷言內(nèi)部又分三種語句認(rèn)證語句AuthnStatement聲明“用戶在某時(shí)刻通過某方式完成了認(rèn)證”屬性語句AttributeStatement攜帶郵箱、姓名、角色這類擴(kuò)展屬性授權(quán)決策語句AuthorizationDecisionStatement聲明“允許該用戶訪問某資源”。對 ASP.NET 開發(fā)者來說平時(shí)處理的絕大多數(shù)場景只用到前兩種授權(quán)決策一般交給應(yīng)用自身的策略引擎很少直接從斷言里讀。真正在網(wǎng)絡(luò)上傳輸?shù)牟恢皇菙嘌远前褦嘌浴鞍饋怼钡膮f(xié)議消息。SP 向 IdP 發(fā)起認(rèn)證時(shí)發(fā)送 AuthnRequestIdP 處理完把用戶瀏覽器導(dǎo)回 SP 時(shí)攜帶 AuthnResponse。這兩條消息分別解決了“你是誰”和“我證明你確實(shí)是誰”。而綁定方式?jīng)Q定了消息怎么走最常見的是 HTTP Redirect 綁定適合發(fā)送 AuthnRequest因?yàn)?GET 參數(shù)長度有限卻足夠放進(jìn)一個沒有大量擴(kuò)展的請求另一個是 HTTP POST 綁定IdP 回傳斷言時(shí)幾乎都用它因?yàn)楹灻蟮?XML 體積大塞進(jìn) URL 不現(xiàn)實(shí)。在代碼層面你收到的 AuthnResponse 是一段需要驗(yàn)證的 XML。這里有一個非常關(guān)鍵的建議不要自己寫 XML 解析器。SAML2 的簽名驗(yàn)證涉及 XML 規(guī)范化Canonicalization、XPath 定位簽名節(jié)點(diǎn)、摘要重算手寫解析在邊緣環(huán)境下有數(shù)不清的兼容問題。我在生產(chǎn)環(huán)境里見過某個團(tuán)隊(duì)手寫了半年最后還是換成了現(xiàn)成的中間件。.NET 生態(tài)里目前活躍度最高、生產(chǎn)驗(yàn)證最充分的 SAML2 社區(qū)包就那么一個成熟選擇直接引入它把精力放到業(yè)務(wù)適配和排錯上這才是性價(jià)比最高的路線。2.2 兩條登錄主線SP 發(fā)起的跳轉(zhuǎn)與 IdP 發(fā)起的跳轉(zhuǎn)SP 發(fā)起的登錄流程是大多數(shù)接入場景的主干。用戶訪問你的 ASP.NET 站點(diǎn)里一個受保護(hù)的頁面中間件發(fā)現(xiàn)當(dāng)前會話沒有認(rèn)證信息于是生成一條 AuthnRequest附上簽名后用 Redirect 綁定把用戶瀏覽器帶到 IdP 的登錄端點(diǎn)。用戶在 IdP 完成密碼、短信或掃碼認(rèn)證后IdP 在后臺生成斷言把瀏覽器用 POST 表單導(dǎo)回你的 ACSAssertion Consumer Service地址。你的站點(diǎn)收到 POST驗(yàn)簽、校驗(yàn)斷言、提取用戶標(biāo)識然后建立本地會話把用戶引導(dǎo)回最初想訪問的那個頁面。IdP 發(fā)起的登錄則完全反過來用戶先登錄公司門戶門戶里展示一排可訪問的系統(tǒng)圖標(biāo)用戶點(diǎn)某個系統(tǒng)的入口IdP 直接在瀏覽器里生成一條 POST 到該系統(tǒng) ACS 地址。你的 SP 沒有發(fā)起過任何請求卻在某個時(shí)刻突然收到一條斷言。這帶來一個很隱蔽的問題你無法校驗(yàn)“InResponseTo”——這條斷言到底是不是響應(yīng)你發(fā)出的上一條請求因?yàn)楦静淮嬖谏弦粭l請求。所以 IdP 發(fā)起的流程里必須格外依賴簽名驗(yàn)證和受眾校驗(yàn)一旦跳過攻擊者可以嘗試重放別人被截獲的斷言。在 ASP.NET 集成里IdP 發(fā)起的流程也是最容易在配置階段被忽略的一環(huán)。很多人測試時(shí)只測 SP 發(fā)起上線后客戶從門戶點(diǎn)進(jìn)來發(fā)現(xiàn)直接 401。常見做法是把兩種情況都列入聯(lián)調(diào)用例并且斷言消費(fèi)端點(diǎn)要同時(shí)容忍有 InResponseTo 和沒有 InResponseTo 的請求但在后者情況下必須做額外的 Audience 和 Recipient 校驗(yàn)。2.3 信任關(guān)系如何建立證書、metadata 與簽名驗(yàn)證SAML2 的信任基礎(chǔ)不是“用戶名密碼”而是證書。SP 需要持有 IdP 簽公鑰才能驗(yàn)證斷言簽名IdP 也同樣需要 SP 的公鑰來驗(yàn)證 AuthnRequest 簽名。雙方交換公鑰的載體叫 metadata——一份描述 EntityID、ACS 地址、證書、支持綁定方式的標(biāo)準(zhǔn) XML。實(shí)際項(xiàng)目中IdP 通常給你一個 metadata 下載地址SP 這邊則把自己 metadata 發(fā)過去登記。驗(yàn)證簽名時(shí)中間件拿 IdP 的公鑰按 XML 簽名標(biāo)準(zhǔn)對斷言里的 DigestValue 重算比對通過后才信任。這個環(huán)節(jié)有個常見的幼稚錯誤以為只要有一對證書就行結(jié)果兩邊各簽各的。實(shí)際上SP 自己那對證書用來給 AuthnRequest 簽名IdP 的證書用來驗(yàn)斷言兩把證書鏈路完全不同。彼此是通過 metadata 里的 KeyDescriptor 標(biāo)簽區(qū)分用途的signing 標(biāo)簽對應(yīng)簽名密鑰encryption 標(biāo)簽對應(yīng)解密密鑰。配置時(shí)如果選錯了哪把鑰匙等待你的只有一個結(jié)果——簽名驗(yàn)證失敗。3. 搭一個能跑通的最小實(shí)現(xiàn)從空項(xiàng)目到本地首登3.1 環(huán)境準(zhǔn)備項(xiàng)目模板與證書生成做 SAML2 接入前先準(zhǔn)備好一個空 ASP.NET Core MVC 項(xiàng)目。我一直習(xí)慣從空模板起步因?yàn)?SAML2 中間件的注冊邏輯要放在中間件管線的特定位置模板自帶的東西有時(shí)候反而礙事。項(xiàng)目創(chuàng)建命令很簡單dotnet new mvc -n SpSample cd SpSample dotnet add package Itfoxtec.Saml2第二行命令拉取的是 .NET 生態(tài)里那個最主流的 SAML2 中間件包。我一般不會在文章里反復(fù)強(qiáng)調(diào)某個包的名字但在 SAML2 這個領(lǐng)域可選項(xiàng)實(shí)在太少這個包幾乎是事實(shí)標(biāo)準(zhǔn)。它處理了 AuthnRequest 生成、AuthnResponse 解析、簽名驗(yàn)證、RelayState 管理這些臟活你要做的是把業(yè)務(wù)參數(shù)喂給它。然后生成 SP 自己的簽名證書openssl req -x509 -newkey rsa:2048 -keyout sp-signing.key -out sp-signing.crt -days 365 -nodes -subj /CNsp.sample.local這里生成的證書是 SP 用來簽名 AuthnRequest 的不是 IdP 那個驗(yàn)證用的證書。注意-nodes參數(shù)表示私鑰不加密生產(chǎn)環(huán)境絕對不能這樣用開發(fā)環(huán)境圖省事可以。證書有效期設(shè)一年因?yàn)?SAML2 的 metadata 里會帶上證書有效期IdP 側(cè)如果嚴(yán)格校驗(yàn)過期證書會導(dǎo)致請求被直接拒絕。3.2 中間件注冊順序與配置SAML2 中間件的注冊順序有講究。它必須放在 UseAuthentication 之前因?yàn)樗庸艿氖恰斑@條請求是不是攜帶了一個可信任的身份斷言”這件事。放在后面注冊會導(dǎo)致請求先被別的中間件處理完了斷言還沒被解析。代碼里這樣注冊builder.Services.AddSaml2(options { options.SPOptions.EntityId new EntityId(urn:sp:sample); options.SPOptions.ReturnUrl new Uri(https://sp.sample.local/saml2/acs); options.SPOptions.SignatureAlgorithm Saml2SignatureAlgorithm.RsaSha256; var signingCert new X509Certificate2(sp-signing.crt, password); options.SPOptions.SigningCertificate signingCert; var idpMetadata new IdpMetadata(new X509Certificate2(idp-signing.crt), new Uri(https://idp.sample.local/realms/main)); options.IdentityProviders.Add(new IdentityProvider(idp, idpMetadata)); }); app.UseSaml2();這段配置里有幾個參數(shù)必須解釋清楚。EntityId是你的 SP 在全聯(lián)邦里的唯一名字IdP 端看到的 SP 標(biāo)識就是它改了這個值而 IdP 沒同步斷言會被判定為來路不明。ReturnUrl是 ACS 地址IdP 會把斷言 POST 到這里它必須和 IdP 側(cè)登記的回調(diào)地址完全一致差一個路徑段都不行。SignatureAlgorithm是簽名算法現(xiàn)在基本不用 SHA1 了但有些老 IdP 只支持 SHA1SP 端配了 SHA256 就會握手失敗。SigningCertificate是第 3.1 節(jié)生成的那把證書。IdentityProviders列表里要注冊每個可信任的 IdP包括它的證書和端點(diǎn)地址這一步很多人會漏掉——只配了 SP 自己的證書沒配 IdP 的信息結(jié)果驗(yàn)簽時(shí)找不到驗(yàn)簽公鑰。3.3 本地驗(yàn)證先跑通再談完善配置完成后別急著連真實(shí) IdP先在本地搭一個最小的測試 IdP把鏈路拉通。最省事的方案是寫一個簡單的控制器來扮演 IdP 的 ACS 端點(diǎn)[HttpPost(saml2/acs)] public async TaskIActionResult Acs() { var binding new Saml2PostBinding(); var saml2p new Saml2AuthnResponse(SPOptions, new Saml2AuthnRequest(SPOptions)); binding.Unbind(Request, saml2p); await saml2p.CreateSession(HttpContext, null); return Redirect(/); }Saml2PostBinding負(fù)責(zé)從 POST 表單中解析 SAMLResponse 字段Unbind方法把傳輸層的參數(shù)還原成強(qiáng)類型的響應(yīng)對象CreateSession則是在驗(yàn)證斷言有效后為用戶建立 .NET 認(rèn)證會話。這段代碼邏輯上就是把“收到一條 POST 斷言”翻譯成“建立一次登錄會話”。在本地聯(lián)調(diào)時(shí)我是按三個步驟遞進(jìn)的先關(guān)掉簽名驗(yàn)證手工拼一個最簡斷言直接 POST確認(rèn)解析和會話建立沒問題再打開簽名驗(yàn)證看驗(yàn)簽鏈路是否完整最后才跑完整的重定向流程。一步一步來出了問題立刻能定位是哪個環(huán)節(jié)的毛病。4. 四個必調(diào)參數(shù)與它們的邊界EntityID、簽名算法與時(shí)鐘偏移4.1 EntityID、ACS 與 metadata三個參數(shù)必須三方對齊SAML2 接入里最折磨人的一類問題是“配置明明沒錯但 IdP 就是報(bào)錯”。這類問題九成出在三方對齊上SP 端 EntityID、ACS 地址、IdP metadata 里記錄的同一份信息。你的 EntityID 寫成了urn:sp:sampleIdP 側(cè)錄入的卻是https://sp.sample.local/saml兩邊都能正常完成重定向但 IdP 生成的斷言里 Audience 會是它自己認(rèn)為的那個 SP 標(biāo)識SP 驗(yàn)簽時(shí)發(fā)現(xiàn) Audience 不是自己直接拒絕。ACS 地址的對齊同樣苛刻。中間件默認(rèn)會根據(jù)當(dāng)前請求的 Host 頭動態(tài)拼接 ACS 地址如果你的站點(diǎn)跑在反向代理后面外網(wǎng) Host 和內(nèi)部服務(wù)地址不一致生成的 ACS 就會變成內(nèi)網(wǎng)地址IdP 那邊登記的是公網(wǎng)地址兩邊一比對就不匹配。排查這條路的最佳實(shí)踐是ASP.NET 服務(wù)前加上app.UseForwardedHeaders()讓中間件感知真實(shí)的客戶端 Host。我一般在配置里顯式寫死 ACS 地址而不是讓它動態(tài)生成這樣至少在復(fù)雜網(wǎng)絡(luò)環(huán)境下少一個變量。還有一種幾乎所有人都遇到過的詭異場景客戶說換證書了給了你新公鑰你也把新證書放進(jìn)配置了結(jié)果驗(yàn)簽還是失敗。最后發(fā)現(xiàn) IdP 的 metadata 里有新舊兩把證書名目上是“密鑰輪換”但實(shí)際請求斷言是用新證書簽的你的代碼卻在舊證書里做匹配。所以配置代碼里要支持證書的滾動查找——驗(yàn)簽時(shí)先用當(dāng)前證書失敗后嘗試用備用證書再驗(yàn)一次而不是只信任一把。4.2 證書與簽名算法SHA1 還是 SHA256RSA 還是 ECDSA簽名算法協(xié)商是個容易讓人頭大的點(diǎn)。SAML2 標(biāo)準(zhǔn)在 XML 簽名里同時(shí)支持 RSA-SHA1、RSA-SHA256、ECDSA-SHA256但并非所有 IdP 都支持全部。大型政企系統(tǒng)里有相當(dāng)一部分老舊 IdP 只支持 RSA-SHA1你的 SP 端如果強(qiáng)制 SHA256IdP 在驗(yàn)證 AuthnRequest 簽名時(shí)會直接報(bào)錯。我通常的做法是先看 IdP 的 metadata。metadata 里的SignatureMethod標(biāo)簽會明確列出它支持的算法按這個列表配置 SP 端行為就穩(wěn)穩(wěn)的。如果你拿不到 metadata或者 IdP 文檔語焉不詳直接用 RSA-SHA256 作為默認(rèn)值遇到握手失敗再降級到 SHA1。另一個容易被忽略的細(xì)節(jié)是證書密鑰長度。2048 位當(dāng)前仍是主流有些新部署已經(jīng)上了 4096 位但老 IdP 在驗(yàn)證簽名時(shí)對超大密鑰的處理存在性能問題會直接把請求超時(shí)。遇到這種情況別急著改算法先看看 IdP 是否有資源側(cè)的調(diào)優(yōu)參數(shù)。4.3 時(shí)鐘偏移、斷言有效期與會話老化SAML2 斷言里有NotBefore和NotOnOrAfter兩個時(shí)間戳限定了斷言的有效期。標(biāo)準(zhǔn)里沒有強(qiáng)制規(guī)定有效期長度但主流 IdP 一般默認(rèn)給五分鐘。這個五分鐘在正常網(wǎng)絡(luò)環(huán)境下完全夠用但有一個前提SP 和 IdP 兩邊服務(wù)器的時(shí)鐘必須大致同步?,F(xiàn)實(shí)中我踩過一次很深的坑——某個客戶的 IdP 跑在一臺時(shí)間漂移了八分鐘的服務(wù)器上SP 端一切正常但斷言里NotBefore比當(dāng)前時(shí)間晚了七分鐘SP 端判斷“斷言尚未生效”直接拒絕。解決手段有兩個層面。第一部署層面必須給服務(wù)器配置 NTP 時(shí)間同步云服務(wù)器默認(rèn)做得好自建機(jī)房就容易出問題。第二代碼層面在 SAML2 配置里把允許的時(shí)鐘偏移量調(diào)大一點(diǎn)通常設(shè) 30 到 60 秒已經(jīng)足夠。不要設(shè)置更大的值有效期存在的意義就是防止重放攻擊無限放寬等于把安全門拆了。還有一個經(jīng)常被忽略的與會話相關(guān)的坑SAML2 斷言的五分鐘有效期和 ASP.NET 本地 Cookie 的過期時(shí)間是完全獨(dú)立的兩件事。用戶體驗(yàn)是“用著用著突然跳到 IdP 要求重新登錄”但你查 SAML2 相關(guān)日志全部正常原因是本地 Cookie 過期了而新用戶在跳回時(shí)拿到的仍然是一個新的有效會話。排查這種問題時(shí)要把 Cookie 過期時(shí)間、IdP 會話策略、斷言有效期三者并列對比看哪個先到期。5. 避坑與排查SAML2 接入最常見的五個現(xiàn)場5.1 現(xiàn)象登錄成功后找不到用戶 ID用戶從 IdP 那邊登錄成功了瀏覽器也跳回了你的站點(diǎn)但你發(fā)現(xiàn)會話里拿不到身份標(biāo)識。查 SAML 斷言發(fā)現(xiàn) NameID 是空的或者 NameID 拿到了但郵箱、姓名全是 null。這個問題的根源基本都在屬性映射。SAML2 標(biāo)準(zhǔn)允許 IdP 在斷言里放置任意自定義屬性AttributeStatement標(biāo)簽下的每個Attribute用 Name 屬性區(qū)分。但 .NET 側(cè)的 Claims 機(jī)制期望的是一組標(biāo)準(zhǔn) ClaimType比如ClaimTypes.Email里裝的應(yīng)該是郵箱地址。而 IdP 返回的屬性名幾乎都是客戶自定義的可能是user.email也可能是mail還有可能是emailAddress。處理方法是寫一個屬性映射表把這些原始屬性名映射到 .NET Claim 類型options.SPOptions.ClaimsMapping.Add(mail, ClaimTypes.Email); options.SPOptions.ClaimsMapping.Add(employeeNumber, ClaimTypes.NameIdentifier);這段配置的意思是把 IdP 返回的屬性mail映射成 .NET 里的 Email ClaimemployeeNumber映射成用戶標(biāo)識。屬性映射是接入時(shí)最繁瑣的工作因?yàn)槟惚仨毾?IdP 方要一份“返回屬性清單”根本沒有自動發(fā)現(xiàn)機(jī)制。另外還要注意屬性是有大小寫的Mail和mail是兩個完全不同的屬性名映射時(shí)嚴(yán)格按 IdP 文檔抄不要自作主張規(guī)范化。5.2 現(xiàn)象跳轉(zhuǎn)到 IdP 后提示“請求無效”用戶在瀏覽器里點(diǎn)擊登錄SP 把他重定向到 IdP結(jié)果 IdP 頁面報(bào)出“請求無效”或“invalid request”。這類問題通常不是簽名問題而是 AuthnRequest 本身不被 IdP 接受。最常見的原因是 SP 沒有提供 IdP 要求的簽名或者簽名算法不被支持。IdP 側(cè)如果設(shè)置了必須驗(yàn)簽才處理請求而 SP 端沒有為 AuthnRequest 配置簽名證書請求就會被丟棄。解決方法是回到第 4 章的證書配置確認(rèn)SPOptions.SigningCertificate正確加載。另一個隱蔽原因AuthnRequest 里帶了Destination屬性它必須和 IdP 實(shí)際接收請求的端點(diǎn) URL 精確一致。如果 IdP 的登錄端點(diǎn)有兩個——一個用于重定向綁定一個用于 POST 綁定——而你的配置寫錯了綁定方式同樣會觸發(fā)這個錯誤。處理邏輯很直白從 IdP 的 metadata 里找到正確的 SingleSignOnService 地址和綁定方式逐項(xiàng)對照。我在聯(lián)調(diào)時(shí)會把中間件實(shí)際發(fā)出的 AuthnRequest 完整記錄成日志一條一條檢查頭信息十次里有八次問題都是出在這種細(xì)節(jié)上。5.3 現(xiàn)象IdP 側(cè)的一切正常但 SP 端一直 401登錄鏈路都走完了IdP 那邊顯示認(rèn)證成功SP 端收到的卻是 401。檢查 SAML2 日志的時(shí)候發(fā)現(xiàn)請求沒有到達(dá)斷言處理邏輯直接被 ASP.NET 的認(rèn)證中間件攔截了。這問題通常不是 SAML2 配置的問題而是你的“匿名訪問”和“需認(rèn)證資源”沒分清楚。默認(rèn)情況下ASP.NET 中間件會對所有未認(rèn)證請求返回 401。解決辦法是檢查那些允許匿名訪問的端點(diǎn)是否帶了[AllowAnonymous]特性同時(shí)確認(rèn)UseSaml2中間件的執(zhí)行順序在UseAuthorization之前。還有一個容易搞混的點(diǎn)SAML2 中間件解析斷言成功后是調(diào)用CreateSession來建立本地認(rèn)證 Cookie 的。如果你繼承默認(rèn)配置會話自動建立沒問題但如果你重寫了某個環(huán)節(jié)比如自己在控制器里手動處理 SAMLResponse卻漏掉了CreateSession這一步那么即便驗(yàn)簽全過請求終態(tài)仍然是沒有認(rèn)證身份的狀態(tài)。5.4 現(xiàn)象所有配置都對但簽名驗(yàn)證就是失敗這類問題最考驗(yàn)?zāi)托囊驗(yàn)槟愕拇a、配置、乃至 IdP 提供的證書都“看起來沒問題”。簽名驗(yàn)證失敗的常見原因有三個。第一個是 IdP metadata 里的證書過期了IdP 本身已經(jīng)輪換到新證書但 metadata 沒更新你在代碼里加載的仍是舊證書。第二個是簽名算法匹配問題IdP 用 SHA1 簽名代碼配置卻只認(rèn) SHA256兩個在數(shù)學(xué)上完全不同的摘要方法當(dāng)然對不上。第三個是 XML 規(guī)范化問題——SAML2 簽名標(biāo)準(zhǔn)里規(guī)定了 XML 在簽名前要先做 C14N 規(guī)范化不同的 XML 庫對空白字符的處理有細(xì)微差異極端情況下同一份斷言在不同框架里算出的摘要會不一致。前面兩種原因好解決分別對應(yīng)證書輪換和算法對齊。第三種原因讓人頭疼一旦遇到我會先用 XML 工具把收到的原始斷言和簽名值完整導(dǎo)出然后對比文檔里的標(biāo)準(zhǔn)簽名流程逐步核查是哪個環(huán)節(jié)的變換出了問題。實(shí)際項(xiàng)目中這類問題如果跟框架的 XML 解析器有關(guān)換一種解析庫往往比研究協(xié)議理論更快。5.5 現(xiàn)象本地正常部署到服務(wù)器就失敗開發(fā)環(huán)境一切正常一上測試服務(wù)器就報(bào)錯。這種場景最常見的原因是證書路徑和權(quán)限。你在開發(fā)環(huán)境加載證書用的是相對路徑.crt文件部署后工作目錄變了證書找不到或者運(yùn)行進(jìn)程的用戶沒有讀取證書文件的權(quán)限導(dǎo)致加載失敗。定位這樣的問題第一件事是看進(jìn)程啟動日志證書加載異常會在應(yīng)用啟動時(shí)直接拋異常。另一個部署相關(guān)的大坑是 HTTPS。SAML2 要求 ACS 地址必須通過 HTTPS 訪問否則斷言在傳輸過程中可能被篡改。局域網(wǎng)測試環(huán)境經(jīng)常有人用 HTTP本地能跑通是因?yàn)?SP 和 IdP 互相之間沒有做傳輸層安全強(qiáng)制但真實(shí)場景中 IdP 會很誠實(shí)地拒絕非 HTTPS 的斷言消費(fèi)地址。部署時(shí)先確認(rèn)反向代理層的 TLS 配置正確并確保ForwardedHeaders中間件把X-Forwarded-Proto正確傳遞到應(yīng)用層不然即使 HTTPS 實(shí)際是通的應(yīng)用里看到的請求協(xié)議仍是 HTTP各種校驗(yàn)依然會拒絕你。6. 把它做成能交付的東西給 ACS 端點(diǎn)加日志、多租戶支持與 SLO6.1 為 ACS 端點(diǎn)做結(jié)構(gòu)化日志接入排錯時(shí)最怕黑匣子用戶說登錄不了但你沒留下任何可分析的信息。SAML2 的排錯數(shù)據(jù)全藏在斷言和協(xié)議消息里所以我的習(xí)慣是在 ACS 端點(diǎn)里增加結(jié)構(gòu)化日志把 EntityID、NameID、斷言 ID、受眾、簽名算法、驗(yàn)證結(jié)果全部記錄下來。日志字段設(shè)計(jì)上至少要有請求全局 ID、SP EntityID、IdP 的 SSO 地址、返回的 RelayState 以及唯一的 trace 標(biāo)識。這套日志在線上追查“某用戶登錄失敗”時(shí)能夠把一次完整登錄鏈路從入口到退出拉平看不需要再靠猜。6.2 用配置文件驅(qū)動多租戶支持如果你做的不是單個系統(tǒng)的接入而是要給多個客戶或內(nèi)部多個部門提供服務(wù)那每個租戶對應(yīng)一套 IdP 配置。改造的核心是把IdentityProviders列表改成從配置源加載租戶通過子域名或 URL 前綴區(qū)分中間件根據(jù)當(dāng)前請求的 Host 決定用哪一套證書去驗(yàn)簽。這里有個細(xì)節(jié)多租戶模式下EntityID 也要按租戶區(qū)分不然所有租戶共享同一個 SP 身份IdP 端會混淆。實(shí)現(xiàn)了這一點(diǎn)之后新增一個租戶就不需要重新部署代碼只需要往數(shù)據(jù)庫里插入一條配置記錄。6.3 實(shí)現(xiàn)由 SP 主動退出到 IdP 的 SLO單點(diǎn)登錄做好了退出登錄也要做好。SAML2 單點(diǎn)退出SLO的實(shí)現(xiàn)方式是 SP 主動向 IdP 的SingleLogoutService端點(diǎn)發(fā)送 LogoutRequestIdP 清除全局會話后通知其他所有接入系統(tǒng)。我踩過最深的坑是在Logout控制器里忘了清除本地會話結(jié)果是用戶點(diǎn)了退出IdP 那邊全退干凈了回到本地頁面卻發(fā)現(xiàn)還能訪問受保護(hù)資源。正確做法是先從 IdP 注銷再調(diào)HttpContext.SignOutAsync清掉本地 Cookie順序反了會出現(xiàn)本地會話已清但 IdP 端還留著會話的情況。線上項(xiàng)目里我還養(yǎng)成一個習(xí)慣無論多簡單的接入都先確認(rèn) IdP 端的持久化會話策略。有些 IdP 默認(rèn)空閑會話二十分鐘就失效SP 端卻希望保持一個星期這個時(shí)間差會導(dǎo)致用戶以為登錄狀態(tài)還在實(shí)際上跳轉(zhuǎn)過去又被要求重新輸密碼。能讓雙方策略盡量對齊就盡量對齊對不齊時(shí)把 SP 本地 Cookie 過期時(shí)間設(shè)置得比 IdP 短一些雖然犧牲了一點(diǎn)體驗(yàn)但至少用戶知道什么時(shí)候該重新認(rèn)證。SAML2 接入這件事做一次覺得全是細(xì)節(jié)做三次就會發(fā)現(xiàn)套路清楚得很。每次排錯我都堅(jiān)持一個笨辦法把原始請求報(bào)文、簽名值、證書指紋全部導(dǎo)出存檔對著協(xié)議標(biāo)準(zhǔn)逐項(xiàng)排查不靠猜測。希望你也能從這個方向入手少走一些我走過的彎路。希望幫到你。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
任我鲁这里有精品视频| 五月婷婷久久大香蕉| 久久久精品99| 久久AAAA片一区二区| 久久久五月婷婷| 91九色精品| 五月丁香偷拍| 91久久久久久久久| 99精品无码| 欧美色色色色色色色色色色影视| 天天综合社区| 色五月激情综合网站| 丁香伊人网| 91色色色18| 五月五丁香婷婷| 久久色五月天| 丁香五月综合无码趴趴| 《亚洲操B久久免费在线观看,亚洲操B久久在线播放》在线播放 - 高清资源 - 97 | 九九热狼人| 欧美在线视频免费播放| 色五月婷婷五月天激情综合| 亚洲中文乱字字幕线在永久| 狠狠色婷婷7| www,色综合| 性爱网五月婷婷| 天天色色天天| 99热免费观看| 五月激情啪啪| 99∨VTV| 99这里只有精品| 丁香婷婷久久综合在线| 色色色.COM| 美女100%露全身无挡网站| 玖玖综合色| 日日日日操| 五月丿香啪啪| 这里只有精品视频免费在线观看| 六月婷婷狠狠| 桔色成人官方网站| 襙比视频| 婷婷综合五月天| 亚洲人妻电影| 99少妇精品| 610018岁成人视频| www.久99| 婷婷五月综合社区在线| 欧美操我| 波多野结衣AV无码Porn| 国产欧美第五十五页| www.五月丁香| 久久婷婷亚洲| 狠狠五月丁香色婷| 五月天婷婷高清无码| 五月婷婷开心色伊人| 欧日美女Va| 一级性感黄色内射视频| 狠狠五月激情在线| 99热精品9| 日日噜狠狠色综合久久| 激情五月婷婷五月| 久久ww| aaa久久| 天天操屄网| 欧美偷偷操| 99爽视频| 久久亚洲天堂| 91碰碰视频| 成人看片网站| 欧美综合激情| 婷婷月综合| 五月天婷婷操逼视频| 97久久人人| 中文字幕丰满乱孑伦无码专区| 99热啪啪| 狠狠擼综合| 色五月激情五月丁香五月婷婷啪啪综合 | 欧美日韩成人| 久久色吧| 婷婷五月天激情综合| 五月丁香六月成人| 亚洲五月婷天天操| 色婷久九| 久久精品99国产精品日本| 色五月激情五月| www.色欲丁香婷婷| 在线色色| 久久少妇视频| 精品婷婷| 大香蕉九九操| 亚洲AAA| 丰满少妇猛烈A片免费看观看| 欧美日本99| 生活片五区| 99热国内| 五月天综合婷婷| 曰曰久久| 婷婷五月天 偷拍| 亚洲色婷婷五月天| 五月丁香久久激情网| 激情VA视频| 婷婷无码视频| 激情影院69| 色九月婷婷综合| 丁香五月婷婷久久久| 99在线视频在线观看| 99热8| www.99日本| 久久久久9999| 婷婷操逼| 亚洲激情另类| 丁香六月激情国产| 五月综合激情综合久| 少妇性按摩无码中文A片| 国产欧美性成人精品午夜| 日本一级大片| ji'qi'luan'ren'lun| 亚洲九区| 91在线操| 五月天天天色| 五月婷婷综合成人| 精品国产乱码久久久久久免费| 在线观看中文字幕| 久久久精品色| 久久99热这里只频精品6学生| 91成人看片| 国产JK精品白丝AV在线观看| 26uuu视频欧美| 噜噜狠狠色综无码久久合欧美| 色色五月丁香| 狠狠五月激情在线| 青青草tp| 1024成人在线观看| 天天天综合网| 日韩精品一曲二曲三曲四曲五曲| 丁香5月婷婷| 国产亚洲99久久精品| www.色婷婷.com| 婷婷激情5月| 天天干天天插| 色五月丁香六月资源站| 五月婷在线| 九九色播五月丁香| 黄网免费观看| 天天综合网、天天综合色| 丁香桃色网| 国产黄大片在线观看画质优化| 激情五月天在线观看婷婷| 久热综合| 国产精品久久..4399| 橾逼网| 97碰碰久久| 一本色道久久综合狠狠躁一二三 | 久草 tingting| 99精品国产热久久91色欲| 色色97丁香婷婷五月天| 狠狠做婷婷| 丁香婷婷老熟女综合网| 亚州色色色| 国熟女视频| 久草xx性爱视频| 搡BBBB搡BBB搡18 | 色狠狠色狠狠| www五月天com| 五月天婷婷在线视频| 久婷婷婷| 亚洲成人在线播放| 狠狠五月天婷婷| 婷婷久久五月天| 婷婷色亚洲| 99热这里只有精品在线观看| 丁香五月激情婷婷激情| 天天肏天天肏| 99热这| 大香蕉综合| 婷婷导航| 人妻久久久久久久久妻久久久久| 激情五月天第四色| 五月天色丁香| 99热成人在线观看| 天天久综合网永久入口17v | 五月天成人伊人| 91成人性爱视频| 五月婷婷草| 色99色| 久久五月丁香六月婷| 人与禽A片啪啪| 久久只这里有精品| 色婷婷亚洲| AV性爱网| 九九色婷婷五月天| 五月丁香六月婷婷免费| 丁香婷婷超碰| A片试看120分钟做受视频红杏| 六月色色婷婷| 色婷婷97| 青青草视频免费观看| 久久思思精品| 久久99热这里只有| 激情综合色婷婷啪啪六月天| 亚洲国产无线乱码在线观看| 玖玖婷婷综合| 欧美成人A片AAA片在线播放| 婷婷香香五月| 99免费偷拍视频| 六月婷婷中文字幕| 婷婷丁香五月婷婷| 亚洲99视频| av第一二区| 五月婷婷影院| 天天摸天天肏| 丁香五月婷婷色情综合| 2020久久婷婷五月| 色九月| 亚洲亚洲人成综合网络| 五月天堂六月丁香亚州中文字幕久久| 97色吧| 日韩av网站在线观看| 色情成人五月天| 伍月婷婷六月丁香| 激情五月天无码| enecarbon-materials.com污K127封锁请涟系@wip1688 | 色丁香五月天| 色五月婷婷在线| 五月婷无码| 婷婷六月视频| 色综合色婷色基地| 五月伊人婷婷999| 婷婷综合网| 婷婷在线激情| 亚洲色网址| 插插网爽妇五月丁香| www.色综合| 玖玖综合玖玖| 久久大香蕉伊人| 国外亚洲成AV人片在线观看 | 丁香五月激情综合| 色婷网| 99九九热播在线免费视频| 五月婷婷婷| 亚洲天堂色色| 激情五月婷| 婷婷五月天a| 婷婷久久视频| 狠狠色狠狠鲁| 三十熟女| 99久久久| 日韩久久成人| 五月婷婷激情综合| 亚洲sesesese| 99热最新精品| 色婷婷五月天亚洲 | 九伊人网| 久久精品亚洲热| W色综合| 五月婷在线观看| 五月丁香婷婷综合久久| 亚洲在线综合| 久热免费| 无码少妇高潮喷水A片免费| 97婷婷色| 日本九九九九| 九色在线五月婷婷网址| 91日综合欧美| 婷婷丁香五月91| 99热销国产这里有精品| 337p大胆噜噜噜噜噜91Av| 操操人人| 五月婷婷伦理| 一区二区三区四区无码| 五月婷婷在线视频| 伊人干综合| 激情综合久久| 全部老头和老太XXXXX| 激情深爱五月天| 99热这里是精品| 色噜噜狠狠色综合日日| 五月激情网综合| 91人妻人人操人人爽| 狠狠久综合| 久久九九九九| 99热在线爱| 成人短视频在线| www.婷婷五月天啪啪| 深爱女色婷婷丁香五月亚洲图区| 伊人天天色| 99er6热在线观看精品6| 天天综合精品| 婷婷大香蕉| 色婷婷六月天在线| 综合XX网| 99精品热| 激情五月天。| 99热这里| 丁香五月亚洲综合| 大香蕉伊人99| 婷婷丁香五月天综合在线日韩| 黃色三级三级三级三级 qixing300.shrkbk.com www.jinbozs.com tianmiaosw.com | 欧美97超碰| www色综合亚洲92| 伊人久久大香网| 婷婷五月丁香综合激情小说| 79精品视频在线观看,| 99爱爱| 九九热在线视频| 黃色三级三级三级三级 qixing300.shrkbk.com www.jinbozs.com tianmiaosw.com | 无码啪啪| 操碰色一区就去操| 久久五月激情| 超碰婷婷五月| 婷婷五月激情基地| 久久精彩综合视频| 色狠狠色综合| 99色色网| 久久色午夜在线导航| 99热综合| 天天色综合网吨吧| 99久久久久| 日日操夜夜操中国无码| 亚洲色激婷| 中文AV网| 在线中文AV| 超碰97干| 丁香五月婷婷手机| 少妇高潮呻吟A片免费看软件 | 91精品啪| 色婷婷五月婷婷五月婷婷五月| 激情综合网激情五月天| 翔田千里 50岁 无码| 色三级色三级| 欧美婷婷精品激| 涩涩五月天综合| 91九色欧美| 久月久在线视频| 婷婷五月成人| 91久久婷婷| 久久婷婷桃花五月天| 五月婷丁香花| 99热在线观看精品| 成人av在线电影| 丁香六月婷婷综合欧美| 日韩99无码| 天天爽天天爽天天爽天天爽天天爽天天爽天天| 五月天大香蕉AV| 美女91一起草| 五月天婷婷色综合| 国内久久婷婷| 色五月五月婷婷| 26uuu精品一区二区| a级毛片一区二区免费视频| 亚洲精品va| 久久综合九九| 色色99| 日韩综合大黄| 亚洲乱码日产精品BD| 五月综合久久| 久综合网| 日 日干 日日做| 五月婷婷色播| 色婷婷丁香五月在线| 色五月大香蕉| 79成人网| 97日本操| 五月婷婷六月丁香综合| 日hao1区| 91九色精品女同系列| 色青五月天| 国产五月天欧美色| 色爽九九| 伊人久久艹| 色你久久| 欧美99| 九九色综合网| 99色网站| 森林影视大全,最好看的2019年视频 | 色五月色综合| 精品九九久久| 99热99日…..| 极骚大香蕉伊人| www.夜夜| 丁香五月激情图片婷婷| 五月丁香六月婷婷开心网| 中文超碰视在线| 天天爽夜夜爽| 婷婷激情五月天小说| 婷婷六月色| 日韩在线9| 久久丁香五月| 欧美日本一区二区三区| 六月丁香六月婷婷欧美| 99久在线观看| 五月激情丁香| 日本婷久久| 婷婷基地爱| 亚洲色五月天在线| 综合久久伊人| 色色a| 97碰在线视频| 中文字幕不卡网站| 亚洲AV成人在线| 激情五月综合六月丁香婷婷狠狠干| 国产成人精品一区二区三区视频| 五月婷婷色播| 97涩涩丁香五月天| 午夜丁香综合婷婷| 成人美女网| 五月色天情| 96丁香六月婷婷蜜桃综合久久| 婷婷性爱| 另类激情五月在线视频欧美| 婷婷五月天激情在线观看 | 亚洲黄色操逼| 九九在线精点品| 五月婷婷开心亚州在线| 亚洲色啪| 综合激情肏逼网| 99热91| 亚洲亚洲人成综合网络| 婷婷久久六月天| 亚洲AV日韩在线观看| √天堂资源在线人妻熟女| 亚洲婷婷月丁香五月| 男人的天堂97| 婷婷丁香18| 香蕉狠狠爱视频| 99色热视频| 啪啪综合| 在线视频九色97| 激情五月婷婷综合网| 乱色色色| 性爱综合网| 在线成人国产| 久99久视频精品| 久机视频这只有精品| 激情五月天电影| 激情五月天婷婷久久久久久久久久久| 九九99热久久精品66中文字幕| 精品欧美性爱超级爽| 九色视频91疯狂| 逼里香不卡| 色综合xx| 激情深爱五月婷婷| 99色视频在线观看最新| 五月丁香婷婷激情四射迷人| 色色婷婷综合| 亚洲午夜成人av电影网| 亚洲九九夜夜| 色色婷婷丁香| av九九| 中文字幕av在线播放| 99热这里只有精品最新地址获取| 丁香婷婷人妻综合网| 91精品久久久久久77777| 久久丁香婷婷五月| 婷婷久久影院| 久久免费精彩视频| 熟女激情网| 五月丁香啪啪婷婷| 九九热视频思思| 天天上天天爽| 五月天激情小说电影| 丁香婷婷五月天激情四射| 日本久久9| 六月五月婷婷| 丁香六月婷| av成人在线播放| 五月婷av| 五月丁香亭亭激情操逼网| 国产国产乱老熟女视频网站97 | 99热精品在这里| 伊人狠狠丁香婷婷综合尤物| 日本欧美在线| 狠狠操综合| 99热99在线| 免费黄色片子| 黄色录像网点| 丁香花婷婷五月天| 色吧婷婷| 亚洲VA欧美VA| 九九热区一区二区三区| 久久五月激情| 婷婷五月天六月丁香| 丁香五月婷婷网| 九九热re99re6在线精品| 久久hd| 欧美啪啪9| 欧美成人A片AAA片在线播放| 无码AV久久久久久久久| WWW色色色COM| 性生活视频98791| 五月天社区| 色五月av伊人| se99视频| www.精品99| www久久99| 99精品丰满| 一级性爱大片| 色综合九九色综合88| 国产成人精品123区免费视频| 五月丁香啪啪激情| 丁香激情综合| 99在线视频资源| 五月激情婷婷在线| 91色性感五月婷婷丁香| 天天爽夜爽| 三区激情四射av| 国产精品A片| 欧美影院| 婷婷五月天久久| 99色爱| 91碰操| 97久久人人| 色五月婷婷、老熟女| 五月婷婷综合久久| 久热婷婷| 男人視頻站| 丁香亭亭久久| 天天综合 99久久婷婷| 色综合色综合网| 五月激情久久| 色宗合,宗合网| 99久热这里只有精品| 五月婷婷成人| 加勒比日本一区二区三区| 色婷婷中文字母五月丁香| 婷婷5月九九| 亚洲精品大片| 黑人无码一区| 17.c黄色| 婷婷五月天成人网| av在线观看网站| 亚洲婷婷激情888精品久| 五月天婷婷av| 伊人久久中文网| 凹凸探花电影| 在线日韩视频| 国产av基地| 99热日韩| 久久久GOGO无码啪啪艺术| 久久久无码精品成人A片小说| 99无码黄色视频| 亚洲午夜在线视频| 成人无码精品1区2区3区免费看| 国产老熟妇亲子乱对白| 色色色色色网站| 色婷婷久久综合中文久久一本| 色拍九九九| 五月激情综合五月| 草草操操| 啪啪婷婷五月天激情| 婷婷五月天综合色| 国产XXXX搡XXXXX搡麻豆| 丁香五月中文字幕| 热99在线精品| 激情五月份婷婷| 五月激激激情综合网| 大战熟女丰满人妻AV| 婷婷激情肏屄网| 色热久| 亚洲欧美国产A片免费观看| 六月丁香射婷婷欧美色图片| 人妻人人操| 中文字幕在线免费观看视频| 综合久| 9月色婷婷| 丁香五月婷婷五月天| 欧美日韩精品一区二区三区钱| 色青青视频| 国产成人精品亚洲线观看| 五月色婷婷亚洲 | 中文字幕AV网址| 狠狠爱婷婷色| 另类 在线| 玖玖婷婷婷丁香五月| 玖玖资源站中文| 人人操碰| 天天色天天| 亚洲五月天色色| 五月天婷婷丁香基地在线观看| 激情综合婷婷久久| 性热视频99精品| 成人中文字幕在线| 9999久久久久| AV色婷婷| 人人操碰| 婷婷色操| 综合色情网| 欧美性爱丁香五月| AV在线中文| 久久久婷婷婷| 色综合播放| 丁香婷婷九月在线| 亚洲热视频| 99精品在这里| 99热在线播放| 婷婷五月综合激情免费| 久久婷婷综合国产| 五月婷婷五月| 久久久久久丁香五月| 碰人人97| 五月丁香六月婷婷色日| 日本色道视频网站| 91男人操女人视频| 丁香婷婷激情| 婷婷久久免费看| 91碰免费视频| 日韩性视频| 五月婷成人网| 2015WWW永久免费观看播放| 综合色图区| 婷婷六月插屄激情| 久草五月天| 五月色综合| 日日噜狠狠色| 婷婷六月丁香在线| 亚洲综合欧美色丁香婷婷888月图片| 五月天婷婷伊人| 亚州激情网站无码| A级毛片高清免费不卡播放谢谢谢谢| 97啪啪| 婷婷六月色丁香视频在线观看| 婷婷激情综合色五月久久91| 五月天婷婷成人网| 欧美激情VA永久在线播放| 99色色热热| 免费一区二区三区| 狠狠操狠狠插| 99网99热| 日韩色色色色| 久草xx性爱视频| 六月天婷婷| 人人操人人妻| 97久久超碰| 这里只有精品在线视频在线观看| 婷婷五月综合激情| 99在线小视频| 亚洲AV在线免费看| 天天干天天干天天干| 久草x色在线观看99| 五月丁香婷婷成人伊人网| 久久99大全| 色色色九九九五月婷婷| 这里只有精品视频| 亚洲国产成人综合| 激情五月综合| 99热在线观看精品| 亚洲、热| 亚洲激情亚洲激情| 丁香五月婷婷啪| 五月婷婷色白丝| 国产黄色在线观看| 成AV人片一区二区三区久久| 操碰97| 五月天婷婷丁香导航| 婷婷五月天第四色| 五月婷婷影视| 欧美丁香六月在线观看视频| 天天久久66xxx| 99玖玖在线视频| 中文成人在线| 91人人妻人人操人人爽| 91性交在线播放| 99色在线| 丁香婷婷激情| 色情五月综合婷婷| 天天操夜夜操| 九九色热| 久久久久久人妻| 色情五月婷婷| 99在线观看| 丁香婷婷啪啪| 欧美色色色| 婷婷大香蕉| 色情综合网| 婷婷综合久久| 伊人综合网站| av网站不卡在线| 精品欧美性爱超级爽| 中文字幕乱码亚洲精品一区| 极品人妻VIDEOSSS人妻| 男女久久婷婷五月天| 国产肏屄大片| 操逼毛片国语对白| 66精品国产成人| 婷婷五月综合久久中文字幕| 内射干少妇亚洲69XXX| 91viP在线看| 日韩无码专区| 婷婷色女| 深爱五月激情综合| 手机AVAV天堂看网| 精品A√| 免费观看欧美成人AA片爱我多深| 天天婷婷综合亚洲亚洲| 丁香五月手机在线| 26uuu| 日韩九九视频| 一本久婷婷综合| 天花AV无码| 婷婷丁香五月天影院 | 日本高清久久| 欧美天天干五月丁香| 九九爱看亚洲| 五月丁香六月激情视频| 99热伊人| 国产精产国品一二三在观看| 婷婷综合在线网| 五月婷婷成人| 国产99精品免费视频| 日日日影院| 久婷久婷| 天天干天天插| 操逼综合网| 色丁香久久| AV国产有码| 激情五月婷黄版| 97人人超| av一区二区电影免费在线观看| 91碰碰视频| 婷婷五月天va| 九月婷婷色色| 一级AV片| 亚洲人妻Av| 中文aV网| 色色五月天网站| 香蕉久久国产AV一区二区| 五月花激情网| 九九综合精品| 97色色综合| 国产SUV精品一区二区883| 五月婷婷综合影院| 我要色综合五月婷婷| 激情综合色婷婷啪啪六月天| 极品少妇XXXX精品少妇偷拍 | 天天摸天天高潮天天爽| 91九色无码日韩| 亚洲乱码在线观看| 五月天开心网| 五月婷婷操操| 欧美噜噜噜草| 天天爽天天| 国产偷人爽久久久久久老妇APP| 偷偷操99| 婷婷五月天深爱| 97色色婷婷| 五月丁香激情在线| 天天摸日日舔狠狠添婷婷婷| 亚洲AV免费在线| 成人va在线| 狠狠擼综合| 国产亚洲色婷婷久久99精品91| 久综合4| 五月婷在线影院| 五月天婷网| 年轻的妺妺伦理HD中文| 婷婷五月天丁香| 国产va视频| 婷五月天影院| 久久99热 这里有精品| 99网| 91久久综合亚洲鲁鲁五月天| 久久五月丁香| 97成人丁香| 青青草婷婷综合五月| 激情五月婷婷| 国在线激情网| 激情五月丁香五月| 五月激情综合网| 六月久久婷婷| 婷婷伊人75| 夜夜谢天天干| 日本99视频精品免费播放| 激情开心五月天婷婷基地丁香社区| 国产又爽又猛又粗的视频A片| 台湾综合丁香五月蜜桃| 99热国产免费| 色狠狠激情五月| 日本狠狠干| 久久久久久xxxxx| 婷婷色五月天在线观看| 欧美黑人大吊| 99热这里只有精品青草| 热的五码久久精品| 99热最新| 久热2025无码| 国产午夜精品一区二区三区四区| 五丁香激情综合| 96精品成人无码A片观看金桔 | WWW久久久| 99精品网址| 99视频精品在线| www综合久久| 婷婷五月天激情小说| 天天综合五月| 亚洲艹网| 五月天婷婷五月| 91丁香色| 色五月天网| 天天综合网~91| 丁香五月电影| 色天堂在线| 男女99免费视频| 热99热久| 久久婷婷色丁香| 99燥99日| 狠狠狠夜夜夜| 99视频在线播放大全| 丁香色五月 97干| 狠狠干狠狠色| www.minyis.com【JT】国内CDN落地页保证转化QQ2101460746 | 99九九综合久久九九| 在线sebiav精品视频| 日韩九区| 五月天另类视频| 婷婷第六色| 五月丁香婷婷色啪| 噜噜噜噜综合在线| 99视频精品| 少妇水多A片太爽了| 亚洲色亚洲精品| 五月天激情四射网站| 五月天婷婷基地| 我要看激情五月天| 日韩99视频| 99热91| 在线观看玖玖资源免费观看| 婷婷六月综合基地| 99性视频| 九九这里都是精品| 伊人网欧美在线男人天堂五月丁香| 爱久久小说下载网| 狠狠干在线| 久久综合热17c| 激情久久网| 天天日天天操心| 天天干天天操天天拍| 亚洲九九夜夜| 激情婷婷护士激情| 99碰碰| 99性感视频| 超碰日日操| 婷婷丁香熟女| 五月成人网站| 色狠狠色噜噜AV天堂五区消防| 丁香五月影院| AV在线不卡网站| 久久伊人大香蕉| 天天天天天天噜| 99色在线观看| 先锋资源91| 天天夜天天色天天| 婷婷丁香五月av| 日本99视频精品免费播放| 久热大香蕉| 日本久久人| www狠狠| 色综合久久88色综合天天看| 婷婷五月天性色| 色五月亚洲| 激情丁香九九五月综合网| 婷婷五月激情小说| 狠狠88综合久久久久噜噜噜| 丁香婷婷91在线观看视频| Aaa久久| 色色色五月婷婷| 色婷婷亚洲五月天| 黄页大全十八禁| www,五月天com| 99ri精品在线| AV免费在线网站| 97色射| 日本精品久久久久中文字幕| 色综合久| 婷婷的色色五月天| 六月综合在线| 色丁香五月综合网| 婷婷开心青青草| 日日夜夜狠狠婷婷色| 色色免费网站| 免费国产视频| 国产无人区大片| 五月天丁香综合在线| 久久综合9| 在线免费视频caop| 色五月丁香com| www.色五月| 欧美色综合天天久久综合精品 | 婷婷色五月丁香六月欧美啪| 97超碰欧美中文字幕| 色婷婷91激情小说| 91久女| 国产精品天天狠天天看| 中文字幕网伦射乱中文| 少妇性按摩无码中文A片| 婷婷丁香熟妇综合网| 五月天激情视频| 五月丁香啪啪啪| 九九99精品| 丁香五月成人| 亚洲国产精品VA在线看黑人| 久久久国产精品黄毛片| 色爆五月| 亚洲激情四谢| 五月婷婷久久爱| 一区中文字幕电影| 婷婷五月18永久免费网站| 丁香五月777| 日本系列_4页_777FP| 色丁香五月天| 九九热视频精品2| 丁香综合网| 婷婷综合色播网| 亚洲最大视频| 操碰99| www.婷婷五月天,com| 99久超碰| 99国产欧美视频| 成人版视频在线观看| 51国精产品自偷自偷综合| 五月婷婷深深爱| 人妻久久久久久久| 国产成人一区二区三区在线观看| 精品国产乱码久久久久久免费| 人妻丰满精品一区二区A片| 九九9久九9国产视频| 婷婷五月天综合久久日美女| 欧美久久婷婷| 婷婷五月丁香久久| 狠狠做五月婷婷| 丁香婷婷色六月| 国产激情在线| 婷婷久久五月| 免费五月婷婷网| www.henhenl| CHINESE熟女老女人HD视频| 激情图片亚洲| 亚洲色色五月天| 密黄站| 日本狠狠爽| 很很干天天干| 激情五月天社区| 91色五月在线观看| 五月丁香激情怕怕| 五月丁香啪啪拍| 五月婷婷激情五月| 日本三级日本三级99| 无语停婷丁香网| 久热超碰| 五月婷婷激情综合拍| 亚洲人成色A777777在线观看| 日日干天天爽| 激情婷婷。| 亚洲婷婷五月天综合| 婷婷丁香五月高清| 五月激情小说| 9超碰在线| 伊人综合网4| 91色色色18| 99欧美热| 99热r| 激情丁香六月| 国产超碰在线| 91九色无码日韩| 99久久99热这里只有精品| 亚洲第一黄网| 六月婷婷日| 5月色亭亭视频| 五月丁香无码| 六月婷婷天堂| 成人五月天色天堂| 日韩99视频| 伊人大香蕉爱聚| 99久久国产成人精品| 免费播放片大片| 激情玖玖综合网| 久1色色| 99a级片| 5月丁香美女影院| 可以免费观看的av网址| 五月丁香综合中文| 欧美色必爱| 亚洲欧洲自拍图片专区五月天| 91人妻人人做人碰人人爽九色| 在线一起草av| 思思热99在线| 疯狂做受XXXX高潮A片| 97久久人人| 婷婷五月综合性爱| 五月婷网| 岛国AV网| 国产黄色在线观看| 影音先锋 91工厂| 久久久久9| 91互操| 深爱激情av| 国产精品18久久久| 天天色一道本综合婷婷| 五月丁香激情综合| 五月丁香婷婷综合视频| 婷婷五月无码| 婷婷五月激情综合网| 五月丁香 啪啪啪| 91婷婷| 在线另类| 九九热在线观看视频| 伊人玖玖婷婷| 夜夜爽天天爽| 97婷婷五月激情六月丁香伊人| 丁香 婷婷 亚洲 熟女| 超碰人妻公开在线| 丁香六月毛片| 婷婷五月天97干| 六月天六月婷| 思思久久久婷婷| 综合图区激情| 影音先锋男士资源网一区| 亚洲麻豆乱码国产2028| 婷婷五月激情四射手| 色大综合| 久久五月婷天天干| WWW.夜夜| 好叼操在线观看| 性色视频| 激情婷婷五月综合| 五月丁香六月激情欧美综合| 九九热青青草| 五月天综合在线观看视频| 五月天丁香婷婷社区| 久久92| 色色免费网站| 人人摸人人| 99热无码精品| 七月婷婷色香综合网| 五月天婷婷丁香六月| 亚洲啪啪精品| 五月丁香花视频| 欧美操人| 内射人妻视频国内| 第四色26uuu| www.com色播五月天| 九九热10| 爱性综合网| 九八Av| 丁香久久| 久久精品63| 五月综合久久| 日日肏夜夜干| 亚洲AV无码一区二| 91精品久久久久| 色五月丁香激情视频| 狠狠狠狠草草| 五月天婷婷影院| 五月天开心成人网| 五月丁香色色色| 免费婷婷| 激情5月婷婷狠狠干| 玖玖九九9999在线观看视频精品| 五月丁香六月婷婷成人电影| 99在线观看| 五月婷婷六月激情| 开心五月婷婷| 精品国产人人爱人人| 免费观看高清无码| 91chinese在线| 婷婷五月天激情影片| 啪啪 综合网| 免费看成人AA片无码视频吃奶| 五月婷婷开心五月| 欧洲永久精品| 色综合色综合色综合| 大香蕉久操| 99国产小视频| 婷婷五月av| 九97免费视频| www.婷婷五月| 亚洲色爱综合| 99热99精品| 玖玖资源部在线播放| 欧美久久久久久久久中文字幕| 国产激情综合五月久久| 久久色情综合免费网站| 五月综合视频| 婷婷亚洲综合| 伊人激情网| 99精品热| 99国产精品白浆在线观看免费| 深爱激情网五月| 丁香六月av| 高清一区二区三区日本久| 色五月婷婷小说亚洲中文字幕组| 丁香五月天色综合| 另类激情码| 性爱激情久久| 国产99久久久国产精品免费看| 激情綜合網址| 狠狠色噜噜色狠狠狠综合久久成人波| 色就是色婷婷五月亚洲激情| 国产三级秋霞| 日本丰满久久| 国产美女无遮挡裸体毛片A片| 五月婷婷丁香大陆免费| 久久思思热视频| 99热这只有| 97色婷婷成人综合在线观看| 99热观看| 伊人激情AV一区二区三区| 丁香五月婷婷啪| 欧美成人色婷婷| 五月丁香五月天现场视频| 天天玩天天摸| 亚洲网视屏| 激情九色| 4438全国最大视频成人网站在线观看| 99国产精品久久久久久久久久久| 大香蕉综合| 久热AA| 91婷婷五月天嫩女| 婷婷综合六月| 欧美婷婷五月天综合| 伦乱美欧| 丁香五月1页| 在线视频你懂得| yellow视频在线观看91| 亚洲热久| 99热黄| 91丨九色丨首页| 色色欧美色色色| 亚洲精品又粗又大又爽A片 | 欧美成人精品A片免费一区99| 亚洲天堂色色| 99热成人| 日本色五月| 婷婷亚洲综合| 亚洲精品视频在线播放| 狠狠操综合| 另类小说五月天| 九月丁香婷婷| 亚洲爆乳无码精品AAA片蜜桃| www.色五月| 色婷婷电影| 中文幕无线码中文字蜜桃| 狠狠精品干练久久久无码中文字幕 | 欧美色图天堂网色| 超碰人人91| 久久久香| 色五月天丁香| 九九色中文| 五月综合视频在线| ...婷婷国产成人亚洲日韩| 日日干夜夜撸夜夜骑| 色婷六月| 99超级碰免费视频| 色综合夜夜| 亚洲色情免费网| 四虎婷婷五月天| 天天草天天日| 九九热视| 欧美日比视频| 五月天婷婷色色| 大香蕉大香蕉在线影院| 1024你懂的欧美曰韩| 香蕉大综综综合久久| 婷婷五月天奸女| 五月丁香日本片| 久热这里| 狠狠干狠狠色| 丁香五月aV| 79色色色色| www.五月丁香| www.色婷婷.com| 99原创自拍视频在线观看| 丁香av网| 五月丁香视频色色| 久久久久9| 五月丁香久久综合精品| 激情婷婷啪啪| 五月天久久久| 91久久久久久久久久18| 久久日韩婷婷五月| 99成人网一区| 久久66精品| 色色99| 久久九九色| 超碰a女人的天堂| 99热99成人| 五月丁香龟婷婷| 天天噜日日噜综合无码| 色五月亚洲| 黄页免费一级视频懂色| 国产精品电影| 丁香六月亚洲综合 | 嫩草AV久久伊人妇女超级a| 五月婷婷AV| 丁香激情五月天| 免费操超碰| 热久久思思热思思| 能直接看的av网站| 五月激情天| 丁香五婷| 亚洲精品乱码久久久久99| 五月开心激情| 噼里啪啦在线观看免费完整版视频| 久久综合综合综合| 五月天婷婷综合久久| 丁香五月天激情免费在线观看AV777| 99视频在线| 任你干嘛免费视频播放| 五月天婷亚洲天综合网综合| 少妇达人正片在线播放_ikun_福利吧| 色播五月婷婷| se色综合网| 99re思思热这里| 99久久9| 97色一二三| 五月婷婷播| 激情五月婷| 欧美性爱专区| 色色色在线免费视频| 在线观看欧美| 亚洲AV电影av| www.色婷婷。com| 色色色99| 丁香五月天社区婷婷| 五月天婷婷色播| 亚洲操B| 五月丁香六月婷婷久久肏| 夜夜撸日日骑| 搡BBBB搡BBB搡18 | 欧亚洲在线高清视频| 亚洲五月丁香六月婷婷| www.ywav| 婷婷综合五月天激情| 色婷婷影院| 亚洲色激情| 亚洲精品永久久久久久| 99人人爽| 狠狠色婷婷丁香六月| 久久婷婷视频| 丁香五月性爱| 99热国内精品| 丁香五月婷婷综合精品素人| 色五月婷婷激情| 97搞在线| 丰满人妻一区三区三区| 婷婷六月色| 久久婷婷五月国产激情综合片| 91ncom.色| 久草性爱| 五月天丁香成人| 色婷婷AV在线| 五月婷婷丁香五月| 成人免费视频一区| 79精品视频| 亚洲精品第一国产综合亚AV| 五月丁香色狠狠干大屄| 免费无码毛片一区二区A片| 五月天亚洲最大成人| 99在线观看| 亚洲色爽| 97在线精品| 婷婷爱综合| 国产精品18久久久| 丁香婷婷人妻综合网| 国产精品久久久久久久久久免费| 五月婷婷伊人网| 免费黄网不卡AV| 婷婷五月丁香综合人妻|