99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

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
返回資訊列表
久久A极片| 噼里啪啦完整版中文在线观看| 九色地址91视频| 91超碰在线播放| 夜夜骑日日操| 国产激情在线| 996黄色片| 婷婷精品免费久久| 99热天堂| 丁香五月五婷| 婷婷五月丁香av网站| 超碰九热| 日本强伦片中文字幕免费看| 色99色| 免费播放99性爱视频| 婷婷五月天黄色网址| 玖玖婷婷五月天| 高清无码入口| 久久99免费视频| 97精品综合久久| 天天久久九九| 操逼视频网址| 十二区无码| 成人无码精品1区2区3区免费看 | 久久五月天视频| 99riAV国产精品视频| 激情校园 亚洲| 五月丁香91| 色欲五月丁香| 天天综合区| 日韩人妻无码专区| 91九色首页| 99热这里只有精品1| www.夜夜操.con| 激情爱爱网站超大免费| 99久久.www| 丁香五月天资源网| 热久视频| 色色色色网| 色综合五月婷婷狠狠干| 九九九午夜影院成人| 色愛综合网| 97综合色片| ww超碰在线| 99视频这里有精品| 婷婷五月,综合伊人| 午夜五月天| 天天日天天舔| 97中文在线| 久久婷五月综合| 十月色综合| 激情五月婷在线精品| 99爱免费在线观看| 色情免费视频播放| 综合久久人妻| 五月丁香婷婷爱| 天天天天爽爽天干| 久久婷婷五月天激情四射| 性综合网| 99爱这里只有精品免费视频| 色情五月婷婷| 强辱丰满人妻HD中文字幕| 99久在线精品99re8| 日日艹思思热| 思思国产99| 狠狠 婷婷| wWw色五月| 五月天丁香六月综合| 五月丁香好婷婷A片网| 狠狠色婷婷7777久综合| 另类伊人婷婷| 看黄的网站18禁| 综合久久99| 99熟女| 综合久久婷婷| 激情五月综合色婷婷| 天天日人人| 精品网站99| 99爱免费在线观看| 婷婷五月色播放| 五月丁香六月在线| 激情文学久久| 琪琪色五月婷婷老师| 激情五月天伊人av| 婷婷婷久久久| 六月婷婷综合| 婷婷五月天首页激情| 热99免费在线| WWW五月天| 99热这里只有精品无码| 天天综合五月天| 碰碰女| 九九久久99精品免费观看www| 丁香六月激情四射| 国产精品A成V人在线播放| 成人国产网站在线免费看| 小香蕉av| 久久五月网| 九九热这里精品| 很很干在线视频| 天天爽日日爽夜夜爽| 婷婷开心深爱五月天| 狠狠看狠狠| 伊人五月人妻精品| 黄网免费看| 午夜一区| 久久免费丁香| 9999色色色色| 超碰在线人妻| av五月丁香婷婷网| 色宗合,宗合网| 色婷婷五月基地在线| 色色综合网站| 激情www| 97操在线视频| 久久久久久婷| 成人精品一区二区三区四区五区 | 五婷婷综合网| 1024在线视频| 狠狠艹狠狠艹| 色噜噜狠狠色综合成人网| 黑人糟蹋人妻HD中文字幕| 五月丁香婷婷伊人日韩| 成人婷婷五月天| 国产日韩欧美| 96自拍视频九色在线观看| 婷婷爱五月| 五月六月丁香婷婷在线观看| 五月丁香六月香香蕉| 黄网在线免费观| www.精品久9| 26UUU一区二区| 丁香五月a| 色五月在线播放| 97碰精品| 丁香六月成人网| 日韩九区| 91丨九色丨熟女丰满| 啄木鸟黑丝一区二区| 影音先锋天天日| 五月色情婷婷开心五月色情| 影音先锋色婷婷| 99热最新国内| 丁香六月毛片| 中文成人在线| 五月天无码视屏播放| 婷婷五月在线视频| 4399高清无码视频| 亚洲热视频在线| 国产在线aaa片一区二区99| 991精品在线视频| 天天视频亚洲| 青青草99re| 亚洲亚洲激情| 国产做爰视频免费播放| 成人必爱视| 日本三级韩三级99久久| 97在线精品视频| 青青草成人网| 五月丁香黄色| 激情六月丁香| 免费观看亚洲AV片| 久久99网站| 99亚洲精美视频在线观看| 九九精品网| 婷婷最新地址| 婷婷色成人| 国产做爰视频免费播放| 婷婷五月噜噜| 天天网曰日曰夜夜综合永久免费| 激情五月天网| 插逼综合网| 五月婷婷影院| 九九热欧美| 亚洲色夜| 九九精品热| 91丨九色丨熟女高潮| 丁香玖玖| 9色在线| 98色花堂98t.R| 五月婷婷婷丁香播| 五月玖玖| 欧美大肥婆大肥BBBBB| 99热精品在线观看| 人妻丰满精品一区二区A片| 九九免费视频在线| 67久久| 亚洲婷婷成人五月天| 日韩久久系列| 99性爱| 激情综合色婷婷啪啪六月天| 五月天婷婷激情小说电影| 99久久99九九99九九九| 精品一二三区久久AAA片| 色欲香综合网| 狠狠九九婷婷韩| 99爱在线视频| WWW色综合| 久草热8精品视频在线观看 | 欧美VA在线观看| 色九九中文字幕| 日日夜夜综合| 丁香九九九九| 成人精品视频99在线观看免费| 天天拍久久| 久操香蕉| 激情五月影院| 99思思热只有在这里看| 婷婷五月丁香综合激情| 久久婷婷六月综合| 婷婷中文字暮| 伊人久久艹| 午夜不卡久久精品无码免费 | 伊人婷婷五月天| 色欲婷婷夜夜| 激情婷婷黄色五月| 丁香五月天啪啪| 婷婷综合五月激情| 色播播婷婷| 色色网站| 天天操夜夜爽歪歪| 久久婷婷五月天激情新地址| 热久免费视频9| 久久人人九| 色婷婷成人丁香| 丁香六月成人| www.五月.com| 国产玖玖资源| 婷婷天天插天天爱| 欧美综合123区| 国产精品a无线| 这里只有精品免费| 婷婷丁香久久五月综合| 91丨九色丨熟女|老版| 六月婷婷五月丁香| 亚洲色婷婷| 五月天婷婷色五月天| 97搞在线| 在线日韩视频| 中文字幕综合网| 五月丁香婷中文| 色色五月天婷婷丁香| 五月激情六月丁香| 影音先锋91资源站| 丁香五月亚洲| 97婷婷丁香五月| 大香蕉九九热| 五月婷婷亚洲综合在线 | 一区二区aV电影免费看| 午夜成人片400| 日91高清无玛| 国产色99| 五月丁香网中文字幕| 天天操天天曰天天射| 搡BBBB搡BBB搡五十| 六月综合婷婷开心伊人| 热久久国产视频| 91久久久久久久久久久| 99久久精品国产色欲| 日韩成人中文| 亚洲丁香花色| 五月丁香婷婷成人网| 五月久视频| 99久久99热这里只有精品| 99久久九九| www:99热视频| 一级韩国产精品毛| 丁香99| 激情久久久| 97人人看| 人妻熟妇国产精品| 六月丁香婷| 99热在线观看| 婷婷成人AV| 婷婷色正月| w婷婷五月婷婷w| 91综合在线| 97色97干| 丁香蜜臀黄色婷婷五月天| 香蕉五月婷婷| 奇米网大香蕉| 99热69| 久久九九一區| 69精品人妻不卡视频| 五月婷婷黄色网址| 97爱艹婷婷开心丁香激情综合| 96丁香六月婷婷蜜桃综合久久| 超碰97干| 亚洲激情四射| 五月天精品| 婷婷激情综合| 久久综合九九| 亚洲精品白浆高清久久久久久| 激情综合网五月婷婷| 五月丁香琪琪| 五月婷婷色五月| 久/久精品99看9| 丁香婷婷性爱| 国产亚洲精品AAAAAAA片| 伊人99热| 婷婷丁香九色| 五月天婷婷丁香六月| 91人人超碰在线| 色婷婷瘦婷婷日韩| 99久久玖玖| 探花搜索结果 - 黄上黄| 日本nghangse中文字幕| 五月开心啪啪| 啪啪黄页网| 91嫩草久久| 黄色毛片精品| 色琪琪一综合久久激情五月视频| 久久久婷婷| 丁香五月激情婷婷视频| 久久香蕉婷婷五月天| 夜夜夜夜操| 婷婷五月天亚洲图片| 五月丁香久久激情网| 国产毛片精品一区二区色欲黄A片| 激情五月天电影| 自拍盗摄 另类| 人人播| 五月天偷拍| 日本精品99| 五月综合色| 天天日天天久久青青| 伊人香大香蕉视频| 亚洲欧洲午夜成人精品av| 玖玖婷婷五月| 狠狠色官网| 性生活久久人妻| 开心深爱激情网| 亚洲综合在线播放| 99在线精品免费视频| 九九操屄| 天天综合五月| 久久五月天黄色五月天色网址| 天天天天天久久久久久| 99碰碰| 中字幕视频在线永久在线观看免费| 伊人婷婷福利网| 色五月大| 婷婷涩涩网| 99热99热在线| 超碰成人免费| 婷婷五月天你懂的| 亚洲在线激情婷婷五月| 婷婷色片| 久久久天堂国产精品女人| 五月天激情黄色网址| 亚洲欧美综合7777色婷婷| 亚洲avjiujiur91| 日操夜撸| 欧美成人精品三区综合A片| 丁香五月天影院| 激情久久久久久久久久久| www.狠狠操.co m| 五月天天爽| 色屌丝中文字幕| 97久久精品视频| 99久在线精品| 色婷婷狠狠18| 夜夜操加勒比| 五月丁香六月色婷| 亚洲综合视频网| 欧美成人猛片AAAAAAA| 91色干| 亚洲丁香五月美女| 激情九月婷婷| 亚洲顶级VA在线观看-高清完整版在线影院观看-S022AV | 伊人婷婷五月天| 91嫩草国产线观看亚洲一区二区| 啪啪一区| 亚洲激情久久| 在线sebiav精品视频| 国产色色在线| 欧美熟女99| 99干免费视频| 亚洲五月丁| 国产成人99久久亚洲综合精品| 97偷拍对白视频| 亚洲夜五月| 五月丁香六月婷婷激情网| 丁香五月五月婷婷欧美大香蕉| 色色色婷| 五月天精品| 激情人妻蜜夜系列区| 婷婷色色五月天| 色五婷婷在线视频| 玖玖玖婷婷婷| 久久这里只| 国产肥白大熟妇BBBB视频 | 欧洲亚洲免费视频9| 婷婷五月天美女视频| 天天爱天天操| 91操人视频| 婷婷激情六月视频| 综合久久久婷| 丁香五月天堂| 六月婷婷青青青视频| www 五月天 com| 五月丁香啪啪| 色色亚洲无码| 综合五月天| 女人露出p毛视频www网站| 婷婷娌伦网| 欧美色色日韩| 色色a| 精品无码片| 99re这里只有精品在线观看| 亚洲天堂婷婷| 五月婷婷中文| 97热在线精品| 日韩九区| bbwcuckold精品熟妇| 人妻操逼视频| 夜夜爽天天| 丁香婷婷色五月激情综合| 91vip在线观看| 思思99久久| 色九亚洲| 五月婷婷啪啪| 丁香五月大片| 久操乱| 丁香婷婷十月| 五月天色站| 人人播| 中文字幕,综合,91| 国产 码在线成人网站| 中美日韩成人在线| www.yw尤物| 色婷婷最爱五月| 逼特逼在线免费播放| 激情婷婷狠狠干| www.色多多婷| 五月色丁香| 色婷婷丁香| 色天堂在线| 色五月av| 亚洲综合婷婷五月| 日日夜夜狠狠| 俺五月| 色播jjjj| 五月丁香婷婷网在线在线| 99手机在线精品视频| 人人操插| 激情婷婷综合| 天天射色五月天| 99久久这里只有精品| 综合久久五月天| 色中色综合| 欧美丁香六月在线观看视频| 丁香99| 天天干天天干天天干| 色婷婷久久综合| 五月婷婷色| 五月天成人在线| 91丨九色丨老农村| 久久婷婷五月天| RenRenSe在线视频网站| 中文在线成人| 97人妻碰碰碰碰碰久久久久久| 九九热婷婷| 九九黄色网| 国产亚洲成AV人片在线观黄桃| 久久草婷婷丁香网站| 婷婷影院欧美| 97色碰| 俺去啦综合网| 99精品在线观看| 激情涩播| www.天天干| 丁香欧美| 婷婷丁香五月综合| 亚洲视频另类| 天天操夜夜操| 婷婷五月色天| 亚洲AAAA网| 91成人看片| 99久久国产宗和精品1上映| 99久久综合| 色色婷婷五月| 97久操视频| 人妻少妇色综合| 终合激情网| 日本本土色网第一区| 婷婷中文字暮| 国产午夜精品AV一区二区麻豆| 综合激情视频| 久久这里只有精品16| 九色91国产| 精品热九九| 婷婷激情综合| 久久综合中文字幕| 丁香婷婷色五月| 熟女激情网| 婷婷综合一二三| 五月婷三级片| 影音先锋女人AA鲁色资源| 天天爱天天秀天天做| 第一区久久网站| 激情综合五月激情17| 4399高清无码视频| 久久久噜噜噜操操操| 婷婷色综合| 碰超99| 五月天色婷婷激情| 五月之婷婷| 十月丁香婷婷| www.激情在线| 永久的网站AAAA| 性生活视频98791| 伊人天堂婷婷| 伊人在线另类| 久热A片| 免费观看全黄做爰的视频| AV在线观看网站| 激情五月天影院| www.minyis.com【JT】币址百万U预算可预付QQ2101460746 | 婷婷五月天亚洲综合网| aV直接看| 无码成人AAAAA毛片AI换脸| 人妻AV在线| 色婷婷888| 日韩无码色色| 天天爱天天秀天天做| 久久人妻视步| 深爱激清网| www.99热. com这里只有精品| 天天综合五月| 亚洲精品性色| 能直接看的AV网站| 久久精品视频9| 丁香五月天激情AV| 色狠狠图片| 九九在线免费观看| 99热777| 丁香婷婷啪啪啪| wwccc久久久| 日本va欧美va精品发布视频| 欧美激情五月天在线观看| 欧美丁香婷婷天天操| 久久狠狠欧美| 丁香六月 婷婷六月| 色视频2025| 日韩好吊操| 色日本丁香婷婷| 亚洲日韩26uuu| 五月婷婷深爱六月| 五月婷婷中文| 亚洲无码成人| 亚洲色综合| 亚洲亚洲人成综合网络| www,99视频| 亚洲视频在线观看区| 亚洲热久| 激情色色| 青青草护士中出内射-欧美电影在线天堂新版 | 成人日韩欧美| 六月婷婷色五月| 激情综合网激情五月欧美| 日韩乱玛久久| 九九大香视频| 丁香六月婷婷| 九月婷婷在线视频| 黑人熟妇一区二区三区| 五月天激情黄色小说在线观看| va婷婷在线| 国产一二三四五六七八视频| 五月婷婷九九热| 五月色网| 色婷婷在线电影| 九九精品碰| 一级精品999WWW| 色九月| 色久五月| 天天操夜夜操| 国产亚洲精品久久久久久豆腐| www久久久久久久久久久| 人人综合色| 五月天成人综合| 妻久久久久| 丁香六月无码播放| 五月叮香啪| 91人在线观看| 丝袜激情网| www婷婷亚洲| 五月婷婷激情综合网 | 99综合网| 五月婷无码| 久久最新色| 五月综合婷婷开心网| 九九久久网| 亚洲精品成人| 大大香蕉综合在线| 亚洲网站在线鸭子av| 亚洲丁香五月| 成人丁香| 国产精品汇聚精彩第二页 - 高清完整版在线 - 青蛙AV | 五月丁香拍拍激情综合| 成人va在线播放| 天天日日夜夜| 激情亭亭五月| 丁香婷五月| 伊人久久婷| 久久久久久99日本| 婷婷色色狠狠| 亚洲成人av在线播放| 中文字幕丰满孑伦无码专区| 99视频九九热| 日本操逼九九九九58日本操逼| 久久xx| 男人天堂AV在线一区二区| 乱女乱妇熟女熟妇综合网站| 九月丁香婷婷综合| 91欧美日韩| 欧美日韩AAAAA| 久久丁香五月| 香蕉久久五月| 激情图片婷婷| 欧美va在线| 婷婷五月天大香蕉| VfJxEwPH| 另类在线免费视频| 激情文学天天| 免费黄色视频网址| 丁香五月婷婷偷拍| 日本熟女二区| 97碰 在线视频观看| 五月婷婷综合激情| 国产这里只有精品| 亚洲网站999| www激情com| 日日影院 | 色五月xxx| 久久婷综合| 日本久久9| 色人妻五月| 欧美内射AAAAAAXXXXX| 99色在线观看| 色色色99| 99熟女视频| 综合网啪| 黑人无码一区| 成人AV中文字幕| 91精品国产色猫| 天天爽综合网| 国产亚洲99久久精品熟| 久色网五月| www.五月天| 色亚洲视频| 久久婷五月| ay2区| 97啪啪| 偷偷狠狠久久婷婷五月天| 人人澡玖玖一| 91性高潮久久久久久久久| 9久热免费视频99| 色五月超碰| 婷婷丁香激情综合色情| 五月婷婷五月天| 操操人人| 婷婷五月丁香综合亚洲| 成人电影一区| 色在线五月天免费| 色婷婷丁香花五月天| 五月天婷婷乱| 婷婷五月天最新网址| 五月婷在线视频免费看| 五月婷婷九九热| 99碰网站| 九九成人精品免费视频| 日本久久99| 五月丁香少妇A| ..真实国产乱子伦毛片| 五月激情久久| 在线资源av-超碰中文在线-成人AV | 久久无码激情视频| 婷婷中文无码| 婷婷综合激情| 欧美三级A做爰在线观看| 久久性爱视频免费| 182.t午在线观看| 婷婷开心激情| 色丁香五月| 色婷婷视频在线| 婷婷丁香午夜综合影视| 97成人丁香| 伊人玖玖网| 在线中文字幕视频| 亚洲乱码日产精品BD| 狠狠操狠狠做| 激情丁香九九五月综合网| 婷婷色五月天在线观看| 狠狠色五月| www.99热精品99.com| 九九热re99re6在线精品| 久久婷婷五月天懂色| 五月天激情小说| 欧美成人精品老美女噜噜噜| 大香蕉天堂| 婷婷在线播放| 亚洲另类日本| 五月天婷婷六月激情网| 久久五月天精品视频| Av九九| 天天拍夜夜爽日日| 成人AV网站在线| 色婷婷亚洲婷婷| 亚洲五月丁| 国产精品人妻在线网址| 九九亚洲| 六月丁香网| 五月天婷婷午夜丁香| 变态另类色图| 婷婷色网| 色五月综合| 婷婷日| 色婷另类| 五月婷婷电影院| 超碰9| 开心五月婷婷在线| 深夜男女福利刺激影院一区| 丁香五月瑟瑟| 五月丁香六月婷婷啪啪| 五月婷婷啪啪综合网| 五月天开心成人网| 五月丁香久| 色婷婷丁香花五月天| www.久久久.com| 色婷婷丁香五月天| VA日本视频| 六月激情网| 亚洲欧洲中文日韩久久AV乱码| 五月天婷婷操逼视频| 男女久久婷婷五月天| 另类天堂| 丁香五月网| 岛国AAAV| 国产精自产拍久久久久久蜜 | 久久五月丁香| 婷婷综合一二三| 五月丁香婷庭在线| 国产在线6| 五月婷在线影院| 婷婷热色| 伊久大香蕉| 另类在线| 久久久婷| 伊人激情综合网| 色欲色香综合网| 五月丁香六月停停| 99热国内| 色性综合| 日韩在线视频中文字幕| 久热re在线视频| 91在线观看九区| 777影视理论片大全在线观看| 丁香五月婷婷色| 狠狠色大香蕉| 天天日天天色| 人妻精品一区二区三区| 99热这里只有精品最新| 伊人婷婷色激情丁香| 99re这里只有精品国产99| 在线播放中文字幕| 亚洲AV网址| 久久免费丁香| 狠狠爱五月婷婷| 欧美婷婷精品激| 性色综合网| 超级碰人人操人人干| 亚洲美女裸体被操在线观看| 成人中文网| 99精品成人无码A片观看金桔| 天天色播| 六月丁香啪啪| 香蕉综合网| 五月天开心网| 午夜天堂一区人妻| 荫道BBWBBB高潮潮喷| 女人高潮内射99精品| 五月婷在线| 五月天激情小说| 一点色成人网| 精品国产AV色一区二区深夜久久| BBWCUCKOLD精品熟妇| AA片在线观看视频在线播放| 中字幕视频在线永久在线观看免费| 天堂成人A片永久免费网站| 99色综合| 亚洲宗合激情| 超碰无码老师| 色婷婷情片| 婷婷午夜综合| 97av在线视频| 五月丁香激情片| 亚洲丁香五月深爱五月| 丁香五月天婷婷中文| 欧美天天性| 天天摸天天日天天舔| 婷婷五月婷| 婷婷九月丁香| 91超碰人人操| 97人人草| 成人网在线观看视频| 大香蕉视频99| 久久九九精彩| 九九精品网站| 伊人丁香婷婷东京| 九九精品视频在线观看| 狠狠干在线| 99热免| 97精品人人A片免费看| 热99色| 六月婷婷网| 日本片日本片祼观看网站在线看中文版网页在线看 | 91久久| 91碰碰碰| 99在线视频观看| 伊人玖玖婷婷| 五月天激情播播网| 99.色| 人妻久久久| wwwss在线观看| 黑人巨粗进入警花疼哭A片| 五月丁香婷久久| 丁香久久五月婷综合| 五月色婷婷在线观看| 99精品爱| 亚洲综合视频网| 99精品成人无码A片观看金桔| 激情五月最新网址| 超碰激情网| 3p日韩网站视频| 激情综合五月婷婷丁香| 欧美久热| 啪精品| 狠狠操天天操| 婷婷五月天综合在线| 色99在线| AVV黄| 九九视频这里是精品五月| 婷婷丁香小说| 国产美女无遮挡裸体毛片A片| www99xxxx五月丁| 操碰97| 自拍盗摄 另类| 婷婷丁香六月| 色综合久久综合| 99re久热只有精品6在线直播| 五月天伊人网| 国产乱子轮XXX农村| 99热网站| 91碰操| 亚洲精品第一国产综合亚AV| 久久性操| 韩国三级五月天婷婷。| 色婷婷亚洲精品天天综| 婷婷五月丁香激情图片| 第2色五月婷| 婷婷五月天小说| 在线观看免费观看在线9久| 亚洲婷婷久久综合| 国产,欧美,日韩,性爱| 五月天婷婷在线视频| 欧美操我| 五月丁香婷婷六月天| 亚洲另类电影| 成人AV综合在线| 天天干天天日日| 久热 91| 99碰碰碰| 五月婷婷久久综合| 亚洲欧美婷婷五月色综合| 国产91在线视频| 天天色五月| 色五月在线播放| 97九色视频| www.亭亭五月天| 国产精品18久久久| 久久五月婷婷电影| 97操碰视频| 超碰五月婷婷五月天| 日日鲁鲁夜夜爽爽| 九九热超碰| 综合五月婷婷| 久热一本| 五月婷婷色播| 亚洲欧洲中文日韩久久AV乱码| 香蕉97碰碰碰欧美| 天天爽天天日人人爱 | 极品人妻VideOssS人妻| 亚洲人操亚洲人| 啪啪干伊人婷婷| 99热精品免费| 九九这里只有精品在线视频| 九九九九综合| 影音先锋毛片网站| 日本99色| 99久久玖玖| 婷婷婷久久久| 色欲婷婷五月天丁香| 思思久久精品| 久久码久久无清| 久久六月天| 玖玖激情网| 这里只有精品免费| 综合激情四射一theav| 丁香五月婷婷激情中文| 久久男人网婷婷| 久热播这里只有精品| av操B网站| 欧美亚洲婷婷五月| 国产97在线日韩亚洲女人被黑人巨大| 婷婷五月开心中文字幕在线| 99ER热精品视频| 色婷婷伦理| 《亚洲操B久久免费在线观看,亚洲操B久久在线播放》在线播放 - 高清资源 - 97 | 丁香九月婷婷色| 久久国产成人9999久久久久| 99综合一区| 噜噜五月天综合| 五月婷婷六月丁香在线| 9婷婷内射| www.日韩国产| 97人妻碰碰中文无码久热丝袜| 亚洲超碰在线| 五月婷五月婷伊人伊人五月婷| 天天综合精品| 五月激情久久综合| 九九艹女| 激情六月婷婷| 91久久久久久久久18| 99在线精品视频| 亚洲无码成人性爰网| 综合色图婷婷| 5月丁香啪啪啪| 九九九九九九毛片| 久久婷婷亚洲| 怕怕av| 成人国产欧美大片一区| 美英法精品无码免费视频| 午夜福利成人AV91| 六月婷久久| 在线观看熟女少妇| ..真实国产乱子伦毛片| 丁香色五月婷婷| 色婷婷激情| 激情五月天色色| 亚洲va欧美va国产综合久久久| 久久九九一區| 婷婷五月激情图片| 99热欧| 中文字幕高清av| 色婷婷97| 人人爽人人爽人人爽人人爽| 超碰成人在线免费观看| 中文字幕在线免费| 五月天无码视屏播放| 国产99久9在线+|+传媒| 熟女网站久久| 激情婷婷五月天网址| 色九九九综合| 狠狠爱综合网| 五月天婷婷成人资源站| 精品人妻在线| AA丁香综合激情| 激情综合网五月激情| 大香蕉五月丁香| 亚洲宗合激情| 九热精品| 久久在线人妻| 色99在线观看| 国产婷婷婷| 棕合影院色色| 五月激情婷婷色| 大香蕉人在线65| 国产暴力强伦轩1区二区小说| 六月婷婷中文字幕| 婷婷丁香77777| 五月色丁香婷婷综合| 天天做天天爽| 天天插天天爽| 丁香五月狠狠综合欧美| 超碰国产av| 变态 另类 在线 | 欧美色偷偷大香| 亚洲视频99| 丁香五月婷婷激情蜜桃| 美女天天艹人人爽| 色五月综合97| 成人国产欧美大片一区| 99热1| 都市激情小说婷婷| 就要爱综合| 丁香色影院| BBWCUCKOLD精品熟妇| 伊人久久大香线蕉av最新| 婷婷五月天论坛| 九月色婷婷| 欧美性交一区二区三区| 荫道BBWBBB高潮潮喷| 亚洲中文字幕av| 丁香五月区| 丁香六月 人妻| 97人人操在线| 亚洲精品成人片在线播| 免费无码毛片一区二区A片| www.久久久久| 婷婷成人五月天成人文学| 国产探花AV在线| 天天性视频| 丁香五月天.com| 日噜噜色| 激情五月婷婷老师| 香蕉视频性爱BB做爱| 亚洲九九99精品视频在线播放| 97色在线观看视频| 亚洲免费成人电影AV| 高清一区二区三区日本久| 婷婷五月综激情| 日韩AV大全| 久久婷婷五月丁香| 亚洲色情免费网| 丁香五月色情| 色吧婷婷| 五月婷婷黄| 色婷婷影视99| 香港九九六区八区99| 青柠影视免费高清电视剧| 这里有精品| 九九色综合九九色| 天天操中文字幕| 日日操夜夜撸| 99热6精品| 色综合天天天天做夜夜| 久久这里只有精品16| 亚洲婷婷丁香五月天激情小说| 激情四射五月天| 91黄址| 色噜噜夜夜夜综合网| 亚洲操B视频| 夜夜爱爱亚洲| 1234操逼网| 成人AV综合在线| 久久码久久无清| 日本在线视频看se99| 婷婷五月丁香人妻无码高清| 超碰69天堂| 五月丁香婷婷激情图片| 亚洲AV成人无码精品| 中文字幕无码AV| 日本黄色三级片内射| 成人中文网| 9色婷婷| 色婷婷亚洲综合网站| 色五月噜噜| 1024你懂的欧美曰韩| 精品九九网| 色婷婷久久视屏| 1024婷婷综合久久五月天| 丁香五月激情网| 五月丁香啪啪啪综合网| 91seav| 丁香婷婷人妻| 天天舔天天摸天天射| 婷婷丁香水多多视频| 在线五月色播| 婷婷综合五月色播| 天天撸天天干天天插| 激情五月六月婷婷| 99热综合| 婷婷五月电影院| 婷色五月天| 欧美日韩精品人妻狠狠躁免费视频| 人妻丰满精品一区二区A片| 伊人香大香蕉视频| 99日视频在线| 人人操AV| 天天摸天天舔天天爽| 成人性爱精品视频| 噜噜在线| www.婷婷五月天.com| 五月丁香婷婷啪啪| 97夫妻超碰| 激情综合婷婷久久| 超碰com| 99er国产| 婷婷五月天另类网站| 97碰久久| 第四色五月天| 婷婷九月激情| 五月婷婷激情综合| 五月停性愛| 成人短视频免费观看| 五月丁香婷婷色色色| 人人草成人视频| 襙逼网| 五月亭亭网成人在线视频| www狠狠| 久久人妻少妇嫩草AV| 丁香五月很很肏| 香蕉婷婷| 天天射天天射一道本日本社区 | 激情五月婷婷色综合| 人人操操| 丁香五月综合色婷婷| 亚洲色A| 香蕉综合在线| 综合欧美五月婷婷| 五月天婷婷操逼视频| 青青草搞屄视频网站| 日操夜撸| 99精品久久| 色婷婷av综合网| 欧美色图天堂网| 五月丁香AV在线| 天天摸天天肏| 亚洲色图欧美色图日本视频| 五月丁香综合成人社区| 久久黄色免费视频| 思思热99热| 五月丁香综合| 午夜福利8055| 五月花婷婷在线精品视频| 啪啪小说五月天| 丁香五月电影| 超碰在线观看成人视| 日本天天综合| 91成人看片| AⅤ网站在线看| 丁香五月首页| 色婷婷激情五月天| 色综合久| 91视频免费后入强操| 玖玖精品资源| 大香蕉五月丁香| 一本婷婷丁香久久| 26uuu青青| 天天干天天操天天拍| 天天色情站| 91seav| 精品久久久人妻| 中文字幕按摩做爰| 久久新地址| 99A片| 国产肥白大熟妇BBBB视频| 天天噜日日噜综合无码| 五月天激情av| 婷婷五月天激情小说| 丁香九月综合激情| 婷婷五月天在线观看免费| 精品久久99| 婷婷午夜精品久久久| 无码人妻一区| 精品欧美性爱超级爽| 久久欧洲久久| 五月天色综合| 婷婷综合在线视频| 人妻VideOssS人妻| 伊人久久婷婷| 91综合国免费久入| 亚洲色五月| 99热欲| 色婷婷a三区麻| 激情五月综合| 99爱爱| 久久九九@| 操婷婷久久| 欧洲免费视频色| 成人免费120分钟啪啪| 无码色色色色色| 国产操碰| 久久性刺激| 看片视频在线免费日产在线看| 影音先锋男士资源网一区| 久久A热| 性爱综合网| 日本va欧美va欧美va精品| 99热在线观看精品| 性热视频99精品| 这里只有精品在线视频在线观看| 伊人九九68| 久久草婷婷丁香网站| 怡红院AV亚洲一区二区三区H | 婷婷激情综合色五月久久91| 亚洲色色精品| 综合天堂AV久久久久久久| 欧美婷婷五月激情| 99热精品在线观看| 视色网在线播放| 中文字幕网伦射乱中文| 激情深爱婷婷网| 婷婷丁香六月| 欧美成性色| 人妻人人操| 青青操绿aaa一区日v| 色色五月婷| 麻豆科斗777| 婷婷五月天成人网| 色色成人網| 少妇性按摩无码中文A片| 色播五月天天| 性做爰A片免费视频A片直播| 五月丁香激情欧洲啪啪| 婷婷丁香五月天在线| 日韩乱轮AV| 思思热久久爱| 国产精品A片在线| 99热在线观看精品| 成人国产网站| 美国十月色婷婷在线观看| 欧美激情伊人| 国产成人AV在线播放| 午夜亚洲国产精品av一区二区| 久久婷婷五月综合伊人| 天天肏夜夜肏| 精品色色| 97色伦另类图片小说视频| 电影91久久久| 国产午夜精品久久久观看| 综合玖玖偷拍| 五月婷婷AV| 欧美va视频不用播放器的va视频网| 亚洲V国产V欧美V久久久久久| 啪啪激情网站| 婷婷伊人视婷婷婷| 色噜噜狠狠色综合成人99| 99精品在线观看| 国产真实乱了老女人视频 | 久久大香蕉伊人| 久久最新色| 五月丁香日本片| 狠狠干.com| 五月天成人网在线观看| 91热在线| 国产肥白大熟妇BBBB视频| 六月丁香色婷婷| 五月丁香婷婷综合久久| 女人天堂AV| 五月婷婷开心六月激情小说| 亚洲AV永久无码影院黑人| 粉嫩av懂色av蜜臀av熟妇| 激情com| 久久九九热38| 婷婷六月色开 | 五月天色小说| 丁香五月在线观看| 五月丁香| 人人摸人人干| 黄色片区子| 久久人妻情侣| 五月激情射| 99国产精品白浆在线观看免费| 男人的天堂五月丁香| 在线中文字幕av| 亚洲网站观看视频| 激情无码网| 五月丁香婷婷久久| 久久人五月| 婷婷综合激情| 婷婷五月天伊人网| 五月丁香婷婷无码中文| 久久综合香蕉国产国产蜜臀AV| 大香蕉久久|