本產品的文件集力求使用無偏見用語。針對本文件集的目的,無偏見係定義為未根據年齡、身心障礙、性別、種族身分、民族身分、性別傾向、社會經濟地位及交織性表示歧視的用語。由於本產品軟體使用者介面中硬式編碼的語言、根據 RFP 文件使用的語言,或引用第三方產品的語言,因此本文件中可能會出現例外狀況。深入瞭解思科如何使用包容性用語。
思科已使用電腦和人工技術翻譯本文件,讓全世界的使用者能夠以自己的語言理解支援內容。請注意,即使是最佳機器翻譯,也不如專業譯者翻譯的內容準確。Cisco Systems, Inc. 對這些翻譯的準確度概不負責,並建議一律查看原始英文文件(提供連結)。
本文說明如何將身份服務引擎(ISE)與OKTA整合,以便為訪客門戶提供安全宣告標籤語言單一登入(SAML SSO)身份驗證。
思科建議您瞭解以下主題:
本文中的資訊係根據以下軟體和硬體版本:
本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除(預設)的組態來啟動。如果您的網路運作中,請確保您瞭解任何指令可能造成的影響。
組織中的使用者可進行一次身份驗證,然後訪問多個資源。跨組織使用的這種身份稱為聯合身份。
聯邦的概念:
多種協定實現SSO,如OAuth2和OpenID。ISE使用SAML。
SAML是一個基於XML的框架,它描述了業務實體之間以安全方式使用和交換SAML斷言。該標準描述了請求、建立、使用和交換這些斷言的語法和規則。
ISE使用SP啟動模式。使用者被重定向到訪客門戶,然後ISE將其重定向到IdP進行身份驗證。之後,它重定向回ISE。驗證請求後,使用者根據門戶配置繼續訪問或登入。
有關SAML的詳細資訊,請檢視以下連結
https://developer.okta.com/standards/SAML/
步驟1.導航到管理>外部身份源> SAML ID提供程式。
步驟2.為ID提供程式分配名稱並提交配置。
步驟1.建立分配給OKTA作為身份源的門戶。BYOD、裝置註冊、訪客等的任何其他配置與普通門戶完全相同。在本文檔中,門戶被對映到訪客門戶,作為員工的備用登入。
步驟2.導航到工作中心>訪客訪問>門戶和元件,然後建立門戶。
步驟3.選擇身份驗證方法以指向之前配置的身份提供程式。
步驟4.選擇OKTA身份源作為身份驗證方法。
(可選)選擇BYOD設定。
步驟5.儲存門戶配置,使用BYOD時,流程如下所示:
附註:如果不使用Alternative登入名,可以跳過此部分。
導航到自助註冊訪客門戶或任何其他為訪客訪問定製的門戶。
在登入頁面設定中新增備用登入門戶:OKTA_SSO。
現在是入口流。
步驟1.使用管理員帳戶登入OKTA網站。
步驟2.按一下Add Application。
步驟3.建立新應用,選擇為SAML2.0
常規設定
步驟4.下載證書並將其安裝在ISE受信任證書中。
導航到之前配置的身份提供程式。按一下「Service Provider Info」,然後將其匯出,如下圖所示。
匯出的zip資料夾包含XML檔案和readme.txt
對於某些Identity提供程式,您可以直接匯入XML,但在這種情況下,需要手動匯入XML。
Location="https://10.48.35.19:8443/portal/SSOLoginResponse.action" Location="https://10.48.17.71:8443/portal/SSOLoginResponse.action"
Location="https://isepan.bikawi.lab:8443/portal/SSOLoginResponse.action" Location="https://isespan.bikawi.lab:8443/portal/SSOLoginResponse.action"
entityID="http://CiscoISE/9c969a72-b9cd-11e8-a542-d2e41bbdc546"
可用的SSO URL(IP地址和FQDN格式)。
注意:格式選擇取決於授權配置檔案上的重定向設定,如果使用靜態IP,則應使用SSO URL的IP地址。
步驟1.在SAML設定中新增這些URL。
步驟2.您可以根據託管此服務的PSN數量從XML檔案中新增多個URL。名稱ID格式和應用程式使用者名稱取決於您的設計。
<?xml version="1.0" encoding="UTF-8"?> <saml2:Assertion xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion" ID="id127185945833795871212409124" IssueInstant="2018-09-21T15:47:03.790Z" Version="2.0"> <saml2:Issuer Format="urn:oasis:names:tc:SAML:2.0:nameid-format:entity">http://www.okta.com/Issuer</saml2:Issuer> <saml2:Subject> <saml2:NameID Format="urn:oasis:names:tc:SAML:1.1:nameid-format:x509SubjectName">userName</saml2:NameID> <saml2:SubjectConfirmation Method="urn:oasis:names:tc:SAML:2.0:cm:bearer"> <saml2:SubjectConfirmationData NotOnOrAfter="2018-09-21T15:52:03.823Z" Recipient="https://isespan.bikawi.lab:8443/portal/SSOLoginResponse.action"/> </saml2:SubjectConfirmation> </saml2:Subject> <saml2:Conditions NotBefore="2018-09-21T15:42:03.823Z" NotOnOrAfter="2018-09-21T15:52:03.823Z"> <saml2:AudienceRestriction> <saml2:Audience>http://CiscoISE/9c969a72-b9cd-11e8-a542-d2e41bbdc546</saml2:Audience> </saml2:AudienceRestriction> </saml2:Conditions> <saml2:AuthnStatement AuthnInstant="2018-09-21T15:47:03.790Z"> <saml2:AuthnContext> <saml2:AuthnContextClassRef>urn:oasis:names:tc:SAML:2.0:ac:classes:PasswordProtectedTransport</saml2:AuthnContextClassRef> </saml2:AuthnContext> </saml2:AuthnStatement> </saml2:Assertion>
步驟3.按一下下一步並選擇第二個選項。
後設資料:
<md:EntityDescriptor xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata" entityID="http://www.okta.com/exk1rq81oEmedZSf4356"> <md:IDPSSODescriptor WantAuthnRequestsSigned="false" protocolSupportEnumeration="urn:oasis:names:tc:SAML:2.0:protocol"> <md:KeyDescriptor use="signing"> <ds:KeyInfo xmlns:ds="http://www.w3.org/2000/09/xmldsig#"> <ds:X509Data> <ds:X509Certificate> MIIDrDCCApSgAwIBAgIGAWWPlTasMA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQGEwJVUzETMBEG A1UECAwKQ2FsaWZvcm5pYTEWMBQGA1UEBwwNU2FuIEZyYW5jaXNjbzENMAsGA1UECgwET2t0YTEU MBIGA1UECwwLU1NPUHJvdmlkZXIxFzAVBgNVBAMMDmNpc2NvLXlhbGJpa2F3MRwwGgYJKoZIhvcN AQkBFg1pbmZvQG9rdGEuY29tMB4XDTE4MDgzMTEwNDMwNVoXDTI4MDgzMTEwNDQwNVowgZYxCzAJ BgNVBAYTAlVTMRMwEQYDVQQIDApDYWxpZm9ybmlhMRYwFAYDVQQHDA1TYW4gRnJhbmNpc2NvMQ0w CwYDVQQKDARPa3RhMRQwEgYDVQQLDAtTU09Qcm92aWRlcjEXMBUGA1UEAwwOY2lzY28teWFsYmlr YXcxHDAaBgkqhkiG9w0BCQEWDWluZm9Ab2t0YS5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw ggEKAoIBAQClP7DvzVng7wSQWVOzgShwn+Yq2U4f3kbVgXWGuM0a7Bk6lAUBoq485EQJ1+heB/6x IMt8u1Z8HUsOspBECLYcI75gH4rpc2FM4kzZiDbNLb95AW6dlUztC66x42uhRYgduD5+w3/yvdwx l99upWb6SdRtnwK8cx7AyIJA4E9KK22cV3ek2rFTrMEC5TT5iEDsnVzC9Bs9a1SRIjiadvhCSPdy +qmMx9eFtZwzNl/g/vhS5F/CoC6EfOsFPr6aj/1PBeZuWuWjBFHW3Zy7hPEtHgjYQO/7GRK2RzOj bSZgeAp5YyytjA3NCn9x6FMY5Rppc3HjtG4cjQS/MQVaJpn/AgMBAAEwDQYJKoZIhvcNAQELBQAD ggEBAJUK5zGPZwxECv5dN6YERuV5C5eHUXq3KGul2yIfiH7x8EartZ4/wGP/HYuCNCNw3HTh+6T3 oLSAevm6U3ClNELRvG2kG39b/9+ErPG5UkSQSwFekP+bCqd83Jt0kxshYMYHi5FNB5FCTeVbfqRI TJ2Tq2uuYpSveIMxQmy7r5qFziWOTvDF2Xp0Ag1e91H6nbdtSz3e5MMSKYGr9HaigGgqG4yXHkAs 77ifQOnRz7au0Uo9sInH6rWG+eOesyysecPuWQtEqNqt+MyZnlCurJ0e+JTvKYH1dSWapM1dzqoX OzyF7yiId9KPP6I4Ndc+BXe1dA8imneYy5MHH7/nE/g= </ds:X509Certificate> </ds:X509Data> </ds:KeyInfo> </md:KeyDescriptor> <md:NameIDFormat> urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified </md:NameIDFormat> <md:NameIDFormat> urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress </md:NameIDFormat> <md:SingleSignOnService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" Location="https://cisco-yalbikaw.okta.com/app/ciscoorg808433_iseokta_2/exk1rq81oEmedZSf4356/sso/saml"/> <md:SingleSignOnService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect" Location="https://cisco-yalbikaw.okta.com/app/ciscoorg808433_iseokta_2/exk1rq81oEmedZSf4356/sso/saml"/> </md:IDPSSODescriptor> </md:EntityDescriptor>
以XML格式儲存檔案。
將使用者分配給此應用程式,可以實現AD整合,如中所述:OKTA活動目錄
步驟1.在SAML Identity Provider下,選擇Identity Provider Config.和Import Metadata。
步驟2.儲存配置。
本檔案將說明ISE和WLC的組態。
在Redirect-ACL中新增URL。
https://cisco-yalbikaw.okta.com /新增應用程式URL
測試門戶並驗證您是否能夠訪問OKTA應用程式
步驟1.按一下門戶測試,然後您應該重定向到SSO應用程式。
步驟2.檢查與<application name>的資訊連線
步驟3。如果您輸入憑證時可能看到錯誤的saml請求,這未必表示此時組態錯誤。
檢查生命日誌以驗證身份驗證狀態。
步驟1.檢查Reports頁籤中的日誌。
步驟2.也從應用程式檢視相關日誌。
有兩個要檢查的日誌檔案
導覽至Administration > System > Logging > Debug Log Configuration。啟用級別以調試。
SAML | ise-psc.log |
訪客接入 | guest.log |
門戶 | guest.log |
該表顯示要調試的元件及其相應的日誌檔案。
案例1.錯誤的SAML請求。
此錯誤是常見錯誤,請檢查日誌以驗證流並查明問題。在ISE guest.log上:
ISE# show logging application guest.log |最後50個
2018-09-30 01:32:35,624 DEBUG [https-jsse-nio-10.48.17.71-8443-exec-2][] cisco.ise.portalwebaction.configmanager.SSOLoginConfigHandler -::- SSOLoginTransitionResult: SSOLoginTransitionResult: Portal Name: OKTA_SSO Portal ID: 9c969a72-b9cd-11e8-a542-d2e41bbdc546 Portal URL: https://isespan.bikawi.lab:8443/portal/SSOLoginResponse.action Identity Provider: com.cisco.cpm.acs.im.identitystore.saml.IdentityProvider@56c50ab6 2018-09-30 01:32:35,624 DEBUG [https-jsse-nio-10.48.17.71-8443-exec-2][] cisco.ise.portalwebaction.configmanager.SSOLoginConfigHandler -::- portalSessionInfo: portalId=9c969a72-b9cd-11e8-a542-d2e41bbdc546;portalSessionId=6770f0a4-bc86-4565-940a-b0f83cbe9372;radiusSessi onId=0a3e949b000002c55bb023b3; 2018-09-30 01:32:35,624 DEBUG [https-jsse-nio-10.48.17.71-8443-exec-2][] cisco.ise.portalwebaction.configmanager.SSOLoginConfigHandler -::- no Load balancer is configured; no redirect should be made 2018-09-30 01:32:35,624 DEBUG [https-jsse-nio-10.48.17.71-8443-exec-2][] cisco.ise.portalwebaction.configmanager.SSOLoginConfigHandler -::- No redirect manipulation is required - start the SAML flow with 'GET'... 2018-09-30 01:32:35,626 DEBUG [https-jsse-nio-10.48.17.71-8443-exec-2][] cisco.ise.portalwebaction.configmanager.SSOLoginConfigHandler -::- Redirect to IDP: https://cisco-yalbikaw.okta.com/app/ciscoorg808433_iseokta_2/exk1rq81oEmedZSf4356/sso/saml?SAMLRequest=nZRdb9owF Ib%2FSuT7EJMPIBahYpRqkWBlJOxiN5XtHFprwc5sQ%2Bm%2Fn0NKi%2FZRoeUyPu95j9%2FzJOOb4672DqCNUDJD%2FR5GHkiuKiEfM7Qp7%2FwRupmMDd3VDZnu7ZNcw889GOs5nTTkdJChvZZEUSMMkXQHhlhOiulyQcIeJo1WVnFVI29qDGjrjGZKmv0OdAH6IDhs1osMPVnbGBIEwoBpqOwx8YM%2Bi15NGRnFcRQ0SltaB0Vxv1CPwo1hGtcFepS3HZF3pzS H04QZ2tLaAPLy2ww9pDwdpHQY%2Bizlld%2Fvw8inSRz6VQhxn7GKJ%2FHg4Xa%2ByJd5OV93Lnn1MP%2B6mS6Kq8TFfJl3ugJMm%2BObfDAc4i2msc%2F4aODHySDx0xhTn%2BHtKOIM0mgYnuSaVmJvfpdjGkEapwy3T8iThDEcRiw6Sd5n%2FjMxd3Wzoq7ZAd7DMGYPuTSWSpuhEPdHPk79CJe4T6KQRElvECbfkbd6XdcnITsIPtot64oM%2BVyWK391X5TI% 2B3aGyRWgMzond309NPSMCpq0YDguZsJwlRfz4JqdjINL226IsCFfnE9%2Bu1K14C8Xs4TXE1zX6nmmgdq3YIO37q9fBlQnCh3jFo72v2xmatdQLUybIhwd4a85ksvOs9qFtIbthcPVmX5YxglvW7vXLUPPSlctE8DdzUpNpWlZ7wL%2B6zyT7uxfgUzOu7n8m0x%2BAQ%3D%3D&RelayState=_9c969a72-b9cd-11e8-a542-d2e41bbdc546_DELIMITERport alId_EQUALS9c969a72-b9cd-11e8-a542-d2e41bbdc546_SEMIportalSessionId_EQUALS6770f0a4-bc86-4565-940a-b0f83cbe9372_SEMIradiusSessionId_EQUALS0a3e949b000002c55bb023b3_SEMI_DELIMITERisespan.bikawi.lab 2018-09-30 01:32:35,626 DEBUG [https-jsse-nio-10.48.17.71-8443-exec-2][] cisco.ise.portalwebaction.utils.Combiner -::- combined map: {redirect_required=TRUE, sso_login_action_url=https://cisco-yalbikaw.okta.com/app/ciscoorg808433_iseokta_2/exk1rq81oEmedZSf4356/sso/saml ?SAMLRequest=nZRdb9owFIb%2FSuT7EJMPIBahYpRqkWBlJOxiN5XtHFprwc5sQ%2Bm%2Fn0NKi%2FZRoeUyPu95j9%2FzJOOb4672DqCNUDJD%2FR5GHkiuKiEfM7Qp7%2FwRupmMDd3VDZnu7ZNcw889GOs5nTTkdJChvZZEUSMMkXQHhlhOiulyQcIeJo1WVnFVI29qDGjrjGZKmv0OdAH6IDhs1osMPVnbGBIEwoBpqOwx8YM%2Bi15NGRnFcRQ0SltaB0Vxv 1CPwo1hGtcFepS3HZF3pzSH04QZ2tLaAPLy2ww9pDwdpHQY%2Bizlld%2Fvw8inSRz6VQhxn7GKJ%2FHg4Xa%2ByJd5OV93Lnn1MP%2B6mS6Kq8TFfJl3ugJMm%2BObfDAc4i2msc%2F4aODHySDx0xhTn%2BHtKOIM0mgYnuSaVmJvfpdjGkEapwy3T8iThDEcRiw6Sd5n%2FjMxd3Wzoq7ZAd7DMGYPuTSWSpuhEPdHPk79CJe4T6KQRElvECbfkbd6XdcnITsIP tot64oM%2BVyWK391X5TI%2B3aGyRWgMzond309NPSMCpq0YDguZsJwlRfz4JqdjINL226IsCFfnE9%2Bu1K14C8Xs4TXE1zX6nmmgdq3YIO37q9fBlQnCh3jFo72v2xmatdQLUybIhwd4a85ksvOs9qFtIbthcPVmX5YxglvW7vXLUPPSlctE8DdzUpNpWlZ7wL%2B6zyT7uxfgUzOu7n8m0x%2BAQ%3D%3D&RelayState=_9c969a72-b9cd-11e8-a542-d2e4 1bbdc546_DELIMITERportalId_EQUALS9c969a72-b9cd-11e8-a542-d2e41bbdc546_SEMIportalSessionId_EQUALS6770f0a4-bc86-4565-940a-b0f83cbe9372_SEMIradiusSessionId_EQUALS0a3e949b000002c55bb023b3_SEMI_DELIMITERisespan.bikawi.lab} 2018-09-30 01:32:35,626 DEBUG [https-jsse-nio-10.48.17.71-8443-exec-2][] cisco.ise.portalwebaction.controller.PortalStepController -::- targetUrl: pages/ssoLoginRequest.jsp 2018-09-30 01:32:35,626 DEBUG [https-jsse-nio-10.48.17.71-8443-exec-2][] cisco.ise.portalwebaction.controller.PortalStepController -::- portalId: 9c969a72-b9cd-11e8-a542-d2e41bbdc546 2018-09-30 01:32:35,626 DEBUG [https-jsse-nio-10.48.17.71-8443-exec-2][] cisco.ise.portalwebaction.controller.PortalStepController -::- webappPath: /portal 2018-09-30 01:32:35,626 DEBUG [https-jsse-nio-10.48.17.71-8443-exec-2][] cisco.ise.portalwebaction.controller.PortalStepController -::- portalPath: /portal/portals/9c969a72-b9cd-11e8-a542-d2e41bbdc546 2018-09-30 01:32:35,626 DEBUG [https-jsse-nio-10.48.17.71-8443-exec-2][] cisco.ise.portalwebaction.controller.PortalPreResultListener -::- No page transition config. Bypassing transition. 2018-09-30 01:32:35,627 DEBUG [https-jsse-nio-10.48.17.71-8443-exec-2][] cisco.ise.portalwebaction.controller.PortalFlowInterceptor -::- result: success
ISE已成功將使用者重定向到IDP。但是,沒有響應ISE並顯示錯誤的SAML請求。請確定OKTA不接受下面我們的SAML請求是請求。
https://cisco-yalbikaw.okta.com/app/ciscoorg808433_iseokta_2/exk1rq81oEmedZSf4356/sso/saml?SAMLRequest=nZRdb9owF Ib%2FSuT7EJMPIBahYpRqkWBlJOxiN5XtHFprwc5sQ%2Bm%2Fn0NKi%2FZRoeUyPu95j9%2FzJOOb4672DqCNUDJD%2FR5GHkiuKiEfM7Qp7%2FwRupmMDd3VDZnu7ZNcw889GOs5nTTkdJChvZZEUSMMkXQHhlhOiulyQcIeJo1WVnFVI29qDGjrjGZKmv0OdAH6IDhs1osMPVnbGBIEwoBpqOwx8YM%2Bi15NGRnFcRQ0SltaB0Vxv1CPwo1hGtcFepS3HZF3pzS H04QZ2tLaAPLy2ww9pDwdpHQY%2Bizlld%2Fvw8inSRz6VQhxn7GKJ%2FHg4Xa%2ByJd5OV93Lnn1MP%2B6mS6Kq8TFfJl3ugJMm%2BObfDAc4i2msc%2F4aODHySDx0xhTn%2BHtKOIM0mgYnuSaVmJvfpdjGkEapwy3T8iThDEcRiw6Sd5n%2FjMxd3Wzoq7ZAd7DMGYPuTSWSpuhEPdHPk79CJe4T6KQRElvECbfkbd6XdcnITsIPtot64oM%2BVyWK391X5TI% 2B3aGyRWgMzond309NPSMCpq0YDguZsJwlRfz4JqdjINL226IsCFfnE9%2Bu1K14C8Xs4TXE1zX6nmmgdq3YIO37q9fBlQnCh3jFo72v2xmatdQLUybIhwd4a85ksvOs9qFtIbthcPVmX5YxglvW7vXLUPPSlctE8DdzUpNpWlZ7wL%2B6zyT7uxfgUzOu7n8m0x%2BAQ%3D%3D&RelayState=_9c969a72-b9cd-11e8-a542-d2e41bbdc546_DELIMITERport alId_EQUALS9c969a72-b9cd-11e8-a542-d2e41bbdc546_SEMIportalSessionId_EQUALS6770f0a4-bc86-4565-940a-b0f83cbe9372_SEMIradiusSessionId_EQUALS0a3e949b000002c55bb023b3_SEMI_DELIMITERisespan.bikawi.lab
現在再次檢查應用程式,可能進行了更改。
SSO URL使用IP地址,但是,訪客正在傳送FQDN,我們在最後一行上方的請求中看到,包含SEMI_DELIMITER<FQDN>,要解決此問題,請將IP地址更改為OKTA設定上的FQDN。
場景2. 「訪問站點時出現問題。請聯絡幫助台以獲得幫助」。
Guest.log
2018-09-30 02:25:00,595 ERROR [https-jsse-nio-10.48.17.71-8443-exec-1][] guestaccess.flowmanager.step.guest.SSOLoginStepExecutor -::- SSO Authentication failed or unknown user, authentication result=FAILED, isFailedLogin=true, reason=24823 Assertion does not contain ma tching service provider identifier in the audience restriction conditions 2018-09-30 02:25:00,609 ERROR [https-jsse-nio-10.48.17.71-8443-exec-1][] guestaccess.flowmanager.step.guest.SSOLoginStepExecutor -::- Login error with idp
從日誌中,ISE報告斷言不正確。檢查OKTA受眾URI,確保它與SP匹配以解決此問題。
案例3.已重新導向至「空白」頁面,或登入選項未顯示。
這取決於環境和入口配置。在此類問題中,您需要檢查OKTA應用及其進行身份驗證所需的URL。按一下門戶測試,然後檢查元素以檢查必須訪問的網站。
在此案例中,只有兩個URL:application和login.okta.com — 應該允許在WLC上使用。