此产品的文档集力求使用非歧视性语言。在本文档集中,非歧视性语言是指不隐含针对年龄、残障、性别、种族身份、族群身份、性取向、社会经济地位和交叉性的歧视的语言。由于产品软件的用户界面中使用的硬编码语言、基于 RFP 文档使用的语言或引用的第三方产品使用的语言,文档中可能无法确保完全使用非歧视性语言。 深入了解思科如何使用包容性语言。
思科采用人工翻译与机器翻译相结合的方式将此文档翻译成不同语言,希望全球的用户都能通过各自的语言得到支持性的内容。 请注意:即使是最好的机器翻译,其准确度也不及专业翻译人员的水平。 Cisco Systems, Inc. 对于翻译的准确性不承担任何责任,并建议您总是参考英文原始文档(已提供链接)。
本文档介绍为思科身份服务(IdS)配置身份提供程序(IdP)以启用单点登录(SSO)。
Cisco 建议您了解以下主题:
注意:本文档在屏幕截图和示例中引用了UCCX,但配置与Cisco IdS(UCCX/UCCE/PCCE)和IdP类似。
本文档不限于特定的软件和硬件版本。
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您的网络处于活动状态,请确保您了解所有命令的潜在影响。
思科IdS部署模式
产品 |
部署 |
UCCX |
并存 |
PCCE |
与CUIC(Cisco Unified Intelligence Center)和LD(实时数据)共存 |
UCCE |
与CUIC和LD共存,进行2000部署。 独立式,适用于4k和12k部署。 |
思科以不同的形式提供多种服务,作为最终用户,您只需要登录一次即可访问所有思科服务。如果您希望从任何思科应用和设备查找和管理联系人,请利用所有可能的来源(企业目录、Outlook、移动联系人、Facebook、LinkedIn、历史记录),并以标准且一致的方式呈现这些联系人,从而提供所需信息来了解其可用性以及联系的最佳方式。
使用SAML(安全断言标记语言)的SSO满足此要求。SAML/SSO使用户能够通过称为IdP的通用帐户和授权身份登录多个设备和服务。SSO功能在UCCX/UCCE/PCCE 11.5及以上版本中可用。
Cisco IdS仅支持IdP的基于表单的身份验证。
请参阅这些MSDN文章以了解如何在ADFS中启用表单身份验证。
注意:Cisco IdS 11.6及更高版本支持基于表单的身份验证和Kerberos身份验证。 要使Kerberos身份验证生效,必须禁用基于表单的身份验证。
对于自注册,为了使应用程序能够使用思科ID进行SSO,请在IdS和IdP之间执行元数据交换。
sp.xml
.Settings
,导航至 IdS Trust
选项卡。
这是上传IdS元数据和添加声明规则的过程。这在ADFS 2.0和3.0中进行了概述。
步骤1:在ADFS服务器中,导航到, Start > All Programs > Administrative Tools > ADFS 2.0 Management
,如图所示:
第二步:导航至 Add ADFS 2.0 > Trust Relationship > Relying Party Trust
,如图所示:
第三步:如图所示,选择选项 Import data about the relying party from a file
.
第四步:完成信赖方信任的建立。
第五步:在信赖方信任的属性中,选择 Identifier
选项卡。
第六步:将标识符设置为Cisco Identity Server的完全限定主机名,Cisco Identity Server可从其获得 sp.xml
已下载。
步骤 7.右键单击“信赖方信任”,然后单击 Edit Claim Rules
.
必须添加两个声明规则,一个是匹配LDAP(轻量级目录访问协议)属性,另一个是通过自定义声明规则。
uid — 应用程序需要此属性以标识经过身份验证的用户。
user_principal - Cisco ID需要此属性以标识经过身份验证的用户的领域。
领款申请规则1:
按名称添加规则 NameID
类型(将LDAP属性的值作为声明发送):
User-Principal-Name
到 user_principal
(小写)userId
以便登录并将其映射到 uid
(小写)
配置示例 SamAccountName
将用作用户ID:
SamAccountName
到 uid
.User-Principal-Name
到 user_principal
.配置示例 UPN
必须用作用户ID:
User-Principal-Name
到 uid
.User-Principal-Name
到 user_principal
.配置示例 PhoneNumber
必须用作用户ID:
uid
.User-Principal-Name
到 user_principal
.
注:您必须确保为CUCM LDAP同步上的用户ID配置的LDAP属性与配置为LDAP属性的 uid
在ADFS声明规则中 NameID
.这是为了使CUIC和Finesse登录正常工作。
注意:本文档引用声明规则名称的限制条件,并显示UCCX的NameID、完全限定域名(FQDN)等名称。虽然自定义字段和名称可以适用于各个部分,但声明规则名称和显示名称始终是标准名称,以保持一致性和符合命名规范中的最佳实践。
领款申请规则2:
c:[Type == "http://schemas.microsoft.com/ws/2008/06/identity/claims/windowsaccountname"] => issue(Type = "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier", Issuer = c.Issuer, OriginalIssuer = c.OriginalIssuer, Value = c.Value, ValueType = c.ValueType, Properties["http://schemas.xmlsoap.org/ws/2005/05/identity/claimproperties/format"] = "urn:oasis:names:tc:SAML:2.0:nameid-format:transient", Properties["http://schemas.xmlsoap.org/ws/2005/05/identity/claimproperties/namequalifier"] = "http://<ADFS Server FQDN>/ADFS/services/trust", Properties["http://schemas.xmlsoap.org/ws/2005/05/identity/claimproperties/spnamequalifier"] = "<fully qualified hostname of IdS/UCCX>");
步骤 8右键单击“信赖方信任”,然后单击 Properties
并选择“高级”选项卡,如图所示。
步骤 9如图所示,选择Secure Hash Algorithm(SHA)作为SHA-256。
步骤 10点击 OK
.
步骤1:在ADFS服务器中,导航至 Server Manager > Tools > ADFS Management
.
第二步:导航至 ADFS > Trust Relationship > Relying Party Trust
.
第三步:选择选项 Import data about the relying party from a file
.
第四步:完成信赖方信任的建立。
第五步:在信赖方信任的属性中,选择 Identifier
选项卡。
第六步:将标识符设置为Cisco Identity Server的完全限定主机名,Cisco Identity Server可从其获得 sp.xml
已下载。
步骤 7.右键单击“信赖方信任”,然后单击 Edit Claim Rules
.
必须添加两个声明规则,一个是匹配LDAP属性,另一个是通过自定义声明规则。
uid — 应用程序需要此属性来标识经过身份验证的用户。
user_principal - Cisco ID需要此属性以标识经过身份验证的用户的领域。
领款申请规则1:
按名称添加规则 NameID
类型(将LDAP属性的值作为声明发送):
User-Principal-Name
到 user_principal
(小写)userId
以便应用用户登录并将其映射到 uid
(小写)
配置示例 SamAccountName
将用作用户ID:
SamAccountName
到 uid
.User-Principal-Name
到 user_principal
.UPN必须用作用户ID时的配置示例:
User-Principal-Name
到 uid
.User-Principal-Name
到 user_principal
.配置示例 PhoneNumber
必须用作用户ID:
telephoneNumber
到 uid
.User-Principal-Name
到 user_principal
.
注:您必须确保为CUCM LDAP同步上的用户ID配置的LDAP属性与配置为LDAP属性的 uid
在ADFS声明规则名称ID中。这用于CUIC和Finesse登录的正确功能。
注:本文档引用了声明规则名称和显示名称(如NameID、UCCX的FQDN等)上的限制。虽然自定义字段和名称可以在各个部分应用,但声明规则名称和显示名称始终是标准名称,以便保持一致性和符合命名规范中的最佳实践。
领款申请规则2:
c:[Type == "http://schemas.microsoft.com/ws/2008/06/identity/claims/windowsaccountname"] => issue(Type = "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier", Issuer = c.Issuer, OriginalIssuer = c.OriginalIssuer, Value = c.Value, ValueType = c.ValueType, Properties["http://schemas.xmlsoap.org/ws/2005/05/identity/claimproperties/format"] = "urn:oasis:names:tc:SAML:2.0:nameid-format:transient", Properties["http://schemas.xmlsoap.org/ws/2005/05/identity/claimproperties/namequalifier"] = "http://<ADFS Server FQDN>/ADFS/services/trust", Properties["http://schemas.xmlsoap.org/ws/2005/05/identity/claimproperties/spnamequalifier"] = "<fully qualified hostname of IdS/UCCX>");
步骤 8右键单击“信赖方信任”,然后单击 Properties
并选择 advanced
选项卡。
步骤 9如图所示,选择SHA作为SHA-256。
步骤 10点击 OK
.
这些步骤在第10步之后是强制性的。
步骤1:点击 Start
并输入PowerShell以打开windows powershell。
第二步:使用命令将ADFS CmdLet添加到PowerShell Add-PSSnapin Microsoft.Adfs.Powershell
.
第三步:运行命令, Set-ADFSRelyingPartyTrust -TargetName
.
注意:如果使用ADFS 3.0,则不需要步骤2。因为CmdLet已作为角色和功能添加的一部分进行安装。
注:
区分大小写,因此它与“信赖方信任”属性的“标识符”(Identifier)选项卡中设置的内容匹配(包括大小写)。
注:从UCCX版本12.0开始,Cisco IdS支持SHA-256。信赖方信任使用SHA-256签署SAML请求,并期望从ADFS获得相同的响应。
在ADFS中的联合情况下,特定域中的ADFS为其他已配置域中的用户提供联合SAML身份验证,需要额外的配置。
在本节中,术语“主ADFS”是指必须在IdS中使用的ADFS。术语“联合ADFS”表示这些ADFS,其用户可以通过IdS登录,从而成为主要ADFS。
在每个联合ADFS中,必须为主要ADFS和索赔规则(如上一节所述)创建信赖方信任。
对于主ADFS,除了IdS的信赖方信任外,还需要此额外配置。
Add(添加) Claim Provider Trust
ADFS,联合必须设置到。
在声明提供程序信任中,确保 Pass through or Filter an Incoming Claim
将规则配置为传递所有声明值作为选项:
Incoming Claim Type
收存箱Transient
作为传入NameID格式的选项Incoming Claim Type
收存箱Incoming Claim Type
收存箱在Id的信赖方信任中,添加 Pass though or Filter an Incoming Claim
以传递所有声明值作为选项的规则。
Incoming Claim Type
收存箱Transient
作为传入NameID格式的选项Incoming Claim Type
收存箱Incoming Claim Type
收存箱UCCX 11.6.1及更高版本支持自动证书滚动。(UCCX 11.6中的Fedlet库升级到版本14.0解决了此问题。)
集成的Windows身份验证(IWA)为用户提供身份验证机制,但不允许通过网络传输凭证。当您启用集成的Windows身份验证时, 基于票证工作,以允许节点在非安全网络上通信,从而以安全的方式证明其相互身份。它允许用户在登录到其Windows计算机后登录到域。
注意:仅从11.6及更高版本支持Kerberos身份验证。
已登录到域控制器(DC)的域用户可无缝登录到SSO客户端,而无需重新输入凭证。对于非域用户,IWA将回退到新技术局域网管理器(NTLM),并显示登录对话框。使用IWA身份验证的IdS的限定是使用Kerberos对ADFS 3.0执行的。
步骤1:打开Windows命令提示符并以管理员用户身份运行,以便向注册HTTP服务 setspn
命令 setspn -s http/
.
第二步:禁用表单身份验证并启用内部网站点的Windows身份验证。导航至 ADFS Management > Authentication Policies > Primary Authentication > Global Settings > Edit
.在Intranet下,确保只选中Windows身份验证(取消选中Form Authentication)。
步骤1: 确保 Internet Explorer > Advanced > Enable Integrated Windows Authentication
已选中。
第二步: 必须将ADFS URL添加到 Security > Intranet zones > Sites
(winadcom215.uccx116.com
是ADFS URL)。
第三步: 确保Internet Explorer > Security > Local Intranet > Security Settings > User Authentication - Logon
配置为使用内部网站点的登录凭证。
步骤1:进入Firefox的配置模式。打开Firefox并输入 about:config
的URL。接受风险陈述。
第二步:搜索 ntlm
并启用 network.automatic-ntlm-auth.allow-non-fqdn
并将其设置为true。
第三步:设置 network.automatic-ntlm-auth.trusted-uris
或明确指定ADFS URL。
Windows中的Google Chrome使用Internet Explorer设置,因此在Internet Explorer中进行配置 Tools > Internet Options
对话框,或从“控制面板”下的 Internet Options
在子类别内 Network and Internet
.
本文档从SSO的IdP方面描述了用于与Cisco IdS集成的配置。有关详细信息,请参阅各个产品配置指南:
此过程用于确定是否在Cisco IdS和IDP之间正确建立了信赖方信任。
注:作为验证流程的一部分显示的“核对清单”页面不是错误,而是确认信任已正确建立。
CCX Administration > Single Sign-On (SSO) > Disable
.set authmode non_sso
(此命令必须禁用Pub和Sub的SSO — 如果出现高可用性(HA)集群,可从UCCX节点上的任一节点执行)。
版本 | 发布日期 | 备注 |
---|---|---|
1.0 |
24-Aug-2021 |
初始版本 |