亚博Zendesk支持企业单点登录通过安全断言标记语言(SAML)访问Zendesk帐户JSON Web令牌(JWT).使用SSO,用户可以使用他们的公司登录表单登录一次,以访问多个系统和服务提供商,包括Zendesk产品。亚博
作为Zen亚博desk管理员,您的角色包括启用SSO选项。本文描述了如何启用最多两个SAML单点登录配置,这些配置可用于对团队成员(管理员和代理,包括轻量级代理和贡献者)、最终用户或两者进行身份验证。
本文包含以下主题:
公司的IT团队通常负责建立和管理公司的SAML身份验证系统。它们的作用是在系统上为Zendesk实现SSO。亚博请团队参考本文中的以下主题:
相关文章:
Zendesk的SAML SSO是亚博如何工作的
SAML对于Zen亚博desk的工作方式与SAML对所有其他服务提供商的工作方式相同。一个常见的用例是,在一家公司中,所有用户身份验证都由企业身份验证系统(如Active Directory或LDAP)管理身份提供商或国内流离失所者).亚博Zendesk与身份提供者建立了信任关系,并允许它对用户进行身份验证并将其登录到Zendesk帐户。
一个常见的用例是在工作日开始时登录到公司系统的用户。一旦登录,他们就可以访问其他公司应用程序和服务(如电子邮件或Zendesk Support),而不必单独登录这些服务。亚博
如果用户尝试直接登录到Zendesk帐户,他们将被重定向到您的SAML服务器或服务进行身亚博份验证。通过身份验证后,用户被重定向回您的Zendesk帐户并自动登录。亚博
另一个支持的工作流程是让用户在登录公司网站后访问Zendesk。亚博当用户使用其网站凭据登录到网站时,网站将向身份提供程序发送请求以验证用户。然后网站将提供者的响应发送到SAML服务器,SAML服务器将其转发到您的Zendesk帐户,该帐户将会话授予用户。亚博
启用SAML SSO的要求
与贵公司负责SAML认证系统的团队(通常是IT团队)会面,以确保贵公司满足以下要求:
该公司有一个SAML服务器,其中包含已配置的用户,或者连接到标识存储库(如Microsoft Active Directory或LDAP)。选项包括使用内部SAML服务器(如OpenAM)或SAML服务(如Okta、OneLogin或PingIdentity)。
如果使用Active Directory联合服务(ADFS)服务器,则必须启用基于表单的身份验证。亚博Zendesk不支持Windows集成身份验证(WIA)。有关更多信息,请参见使用带有ADFS和SAML的活动目录设置单点登录.
- 亚博zendesk绑定的流量是通过HTTPS,而不是HTTP。
- SAML服务器的远程登录URL(有时称为SAML单点登录URL)
- (可选)用户退出Zendesk后,Zendesk可以重定向用户的远程注销URL亚博
- (可选)将用户重定向到适当登录选项的IP范围列表。从指定IP范围发出请求的用户被路由到远程SAML身份验证登录表单。从范围之外的IP地址发出请求的用户被路由到正常的Zendesk登录表单。亚博如果不指定范围,则将所有用户重定向到远程身份验证登录表单。
- 来自SAML服务器的SAML证书的SHA2指纹。支持X.509证书,并且应该采用PEM或DER格式,但是您仍然需要为X.509证书提供SHA2指纹。SHA指纹的大小没有限制。
IT团队可能需要Zendesk提供的额外信息来配置SAML实现。亚博请参考技术实施工作表在本文中。
当你确认自己符合要求并掌握了所有必要的信息后,你就可以准备好了启用SAML SSO.
启用SAML SSO
管理员可以仅为最终用户启用SAML单点登录,也可以仅为团队成员(包括轻量级代理和贡献者)启用SAML单点登录,或者同时为两个组启用SAML单点登录。您最多可以创建两个SAML SSO配置。在开始之前,请从公司的IT团队获取所需的信息。看到启用SAML SSO的要求.
在Zendesk中启用SAML单点登录亚博
- 在管理中心,点击账户在侧边栏中,然后选择安全>单点登录.
- 点击创建SSO配置然后选择SAML.
- 输入唯一的配置名称.
- 为Saml sso url,输入SAML服务器的远程登录URL。
- 输入SHA-256格式证书的指纹.这是我们与您的SAML服务器通信所必需的。
- (可选)远程注销URL,输入一个注销URL,用户在退出Zendesk后应该重定向该URL。亚博
- (可选)IP范围,如果希望将用户重定向到适当的登录选项,则输入IP范围列表。
从指定IP范围发出请求的用户被路由到远程SAML身份验证登录表单。从范围之外的IP地址发出请求的用户被路由到正常的Zendesk登录表单。亚博如果希望将所有用户重定向到远程身份验证登录表单,则不要指定范围。
- 点击保存.
缺省情况下,企业单点登录配置处于不激活状态。你必须为用户分配SSO配置激活它。
为用户分配SAML SSO
在创建SAML SSO配置之后,必须通过将其分配给最终用户、团队成员或两者来激活它。
将SSO配置分配给团队成员或最终用户
- 为团队成员或最终用户打开Security设置。
- 如果要为团队成员分配SSO配置,请选择外部认证显示身份验证选项。
这些选项已经显示给最终用户了。
- 单击单点登录(SSO)选项中的外部认证部分,然后选择要使用的SSO配置的名称。
单点登录可能无法覆盖所有用例,因此Zendesk身份验证在默认情况下保持激活状态。亚博若要要求用户使用主SSO方法登录,请参见只允许使用SSO身份验证登录.
- 点击保存.
只允许使用SSO身份验证登录
- 为团队成员或最终用户打开Security设置。
- 为最终用户/团队成员如何登录中,选择重定向到SSO,然后点击保存.
- 在管理中心,点击账户在侧边栏中,然后选择安全>高级.
- 单击身份验证选项卡,然后选择SSO绕过选择。
您可以选择是否只有账户所有者或全部管理员(包括帐户所有者)可以被授予对帐户的访问权限,以防外部登录提供者出现故障。
为了获得访问权限,帐户所有者或管理员请求接收包含一次性访问链接的电子邮件。单击链接授予该人员访问该帐户的权限。不需要输入密码。看到在禁用密码的情况下访问帐号.
- 点击保存.
启用SAML SSO后在Zendes亚博k中管理用户
在Zendesk中启用SAML单点登录后,对Zendesk外部用户所做的更改亚博将同步到您的Zendesk帐户。例如,如果将一个用户添加到您的内部Active Directory或LDAP系统,则该用户将自动添加到您的Zendesk帐户。亚博如果用户在您的内部系统中被删除,该用户将不再能够登录到Zendesk,但是,他们的帐户仍然存在于Zendesk中。亚博
默认情况下,在启用单点登录时,Zendesk中存储的唯一用户数据是用户的给定姓名、亚博姓氏和电子邮件地址。亚博Zendesk不存储密码。因此,您应该禁用Zendesk关于密码的任何自动电子邮件通知。亚博看到禁用来自Zendesk的密码通知邮件亚博.
为了提供更好的客户体验,您可能希望在Zendesk中存储的不仅仅是用户的姓名和电子邮件地址。亚博看到获取额外的用户数据.
禁用来自Zendesk的密码通知邮件亚博
当用户添加到Zendesk帐户时,可能会自动发送电子亚博邮件通知给用户,要求他们验证他们的电子邮件地址并创建用户名和密码。
为通亚博过SAML或JWT访问您的Zendesk帐户的任何新用户创建Zendesk用户配置文件。因为他们使用非Zendesk密码进行身份验证,所以创建配置文件时不需要密码,因为他亚博们不需要登录到Zendesk。但是,默认情况下,每个新用户都会收到一封电子邮件,通知他们验证电子邮件地址并创建用户名和密码。
- 在管理中心,点击人在侧边栏中,然后选择配置>最终用户.
- 在账户的邮件节中,取消选择当代理或管理员创建新用户时,还要发送一封欢迎电子邮件
- 在允许用户更改密码,取消选择此选项。
切换认证方式
如果使用第三方SSO方法在Zendesk中创建用户并对其进行身份验证,然后切换到Zendesk身份验证,则这些用户将没有可用于登录的密码。亚博要获得访问权限,请要求这些用户从Zendesk登录页面重置密码。亚博
技术实施工作表
本节针对公司内部负责公司SAML认证系统的团队。它提供了有关Zendesk SAML SSO实现的详细信息。亚博
主题:
需要用户数据来标识正在进行身份验证的用户
在实现对Zendesk帐户的SAML SSO访问时,需要指定某些用户数据来标亚博识要进行身份验证的用户。
这些主题描述了您需要提供的数据:
在SAML主题的NameID中指定用户的电子邮件地址
亚博Zendesk使用电子邮件地址来唯一标识用户。您应该在SAML主题的名称ID中指定用户的电子邮件地址。
例如:
stevejobs@yourdomain.com
如果没有提供给定的名称和姓氏属性,Zendesk将使用的电子邮件地址的用户名亚博< saml:主题>
< saml: NameID >
元素作为用户名。电子邮件地址“@”符号之前的第一部分是用户名。
如果电子邮件的用户名中有一个句点字符,那么我们将使用它来解析出名字和姓氏。如果没有句号字符,那么整个用户名将成为Zendesk中用户的名称。亚博例如,如果电子邮件地址< saml:主题> < saml: NameID >
是stanley.yelnats@yourdomain.com, Zendesk中的用户名将存储为亚博斯坦利Yelnats;但是,如果电子邮件地址是stanleyyelnats@yourdomain.com, Zendesk中的用户名将存储为亚博Stanleyyelnats.
在SAML断言中指定两个必需的用户属性
如果您指定givenname和姓属性时,必须使用完整的名称空间,而不是友好的名称。例如:如果友好名称可能是'姓氏',则需要为属性指定的实际值为http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname
概念 | 属性 | 描述 | 示例值 |
---|---|---|---|
第一个名字 | givenname | 该用户的给定名称。您必须为此属性指定完整的名称空间。 |
|
姓 | 姓 | 用户的姓氏。Zendesk中的用亚博户是根据该用户的给定姓名创建或更新的。参见下面的示例。您必须为此属性指定完整的名称空间。 |
|
名和姓的例子:
James Dietrich
亚博Zendesk支持其他用户属性.与您的Zendesk支持管亚博理员讨论他们在支持中的数据需求。
获取额外的用户数据
Zendesk从您的身份验证系统中需要的唯一用户数据是用户的给亚博定姓名、姓氏和电子邮件地址。给定的名称和姓氏是您应该用于捕获有关用户名称的信息的唯一属性名称。但是,通过要求IT团队在用户登录时将用户属性添加到身份提供者发送给Zendesk的SAML断言中,您可以获得更多数据。亚博
一个SAML断言包含一个或多个关于用户的语句。一条语句是授权决策本身——是否授予用户访问权限。另一个语句可以由描述已登录用户的属性组成。
属性 | 描述 |
---|---|
组织 | 要将用户添加到的组织的名称或id。不支持组织的external_id属性。如果组织在Zendesk中不存在,则不会创建它。亚博用户仍然会被创建,但是不会被添加到任何组织中。 |
组织 | 逗号分隔的值,如org1 ,org2 ,org3 |
organization_id | 例子:134211213 |
organization_ids | 逗号分隔的值,如23423433, 234324324, 23432 |
欧 | 组织单位名称。将其指定为组织 属性。 |
电话 | 指定为字符串的电话号码。 |
标签 | 要在用户上设置的标签。这些标记将取代用户配置文件中可能存在的任何其他标记。 |
remote_photo_url | 要在用户配置文件上设置的照片的URL。 |
区域设置(针对代理) Locale_id(最终用户) |
Zendesk中的区域设置,亚博用数字指定。要获取有效编号的列表,请参见地区在API文档中。 |
角色 | 用户的角色。可以设置为终端用户,代理,或管理.默认是终端用户. |
custom_role_id | 的值时才适用角色属性为代理.方法获取自定义角色的id自定义角色API. |
external_id | 如果您的用户是由电子邮件地址以外的其他东西标识的,或者如果他们的电子邮件地址可能会更改,则来自系统的用户id。指定为字符串。 |
user_field_关键> < | 在Zendesk Support中自定义用户字段的值。亚博看到向用户添加自定义字段.user_field_employee_number 在哪里employee_number 是Zendesk中的字段键。亚博在属性值中发送空值或空字符串将删除Zendesk支持中设置的任何自定义字段值。亚博 |
友好的名称 | SAML2正式名称 |
---|---|
Ou(组织单位) | urn: oid: 2.5.4.11 |
displayName | urn: oid: 2.16.840.1.113730.3.1.241 |
配置Zendesk的标识提供者亚博
属性 | 价值 |
---|---|
entityID | https://yoursubdomain.亚博zendesk.com |
AudienceRestriction | yoursubdomain.亚博zendesk.com |
对于这两个值,替换your_subdomain使用Zendesk亚博 Support子域。如果您不确定子域,请询问Zendesk管理员。亚博
亚博Zendesk执行AudienceRestriction
属性。
为Zendesk配置SAML服务器亚博
在配置与Zendesk集成时,一些SAML服务器可能需要以下信息:亚博
ACS (Access Consumer Service) URL:指定https://yoursubdomain.亚博zendesk.com/access/saml(大小写敏感),其中'accountname'与您的支持子域
重定向到SAML单点登录URL:使用HTTP POST
散列算法(ADFS): Zendesk在使用Acti亚博ve Directory Federation Services (ADFS)时支持SHA-2算法
参数返回到您的远程登录和注销url
当将用户重定向到您的身份验证系统时,Zendesk将以下参数附加到远程登录和远程签出url。亚博
属性 | 描述 |
---|---|
brand_id | 用户试图登录时所在的帮助中心的品牌。有关更多信息,请参见为你的品牌创建一个帮助中心. |
属性 | 描述 |
---|---|
电子邮件 | 用户登出的电子邮件。 |
external_id | 存储在Zendesk用户配置文件中的来自系统的唯一标识符。亚博 |
brand_id | 用户退出时所使用的帮助中心的品牌。有关更多信息,请参见为你的品牌创建一个帮助中心. |
如果您不希望在退出URL中接收电子邮件和外部id信息,请要求Zendesk管理员在亚博远程注销URL字段。看到启用SAML SSO.例如:https://www.yourdomain.com/user/signout/?email=&external_id=.
解决Zendesk的SAML配置问题亚博
以下是Zende亚博sk的SAML 2.0元数据:
< ?xml version="1.0" encoding="UTF-8" standalone="yes"?> < EntityDescriptor entityID = " https://yoursubdom亚博ain.zendesk.com " xmlns = " urn: oasis: names: tc: SAML: 2.0:元数据”> < SPSSODescriptor AuthnRequestsSigned =“false”WantAssertionsSigned = " true " protocolSupportEnumeration = " urn: oasis: names: tc: SAML: 2.0:协议”> < NameIDFormat > urn: oasis: names: tc: SAML: 1.1: nameid-format: emailAddress < / NameIDFormat > < AssertionConsumerService指数=“1”绑定= " urn: oasis:名字:tc: SAML: 2.0:绑定:http - post”位置= " https://yoursubdomain.zendesk.com/access/saml " / > < !——注意:将'accountname'替换为Zendesk子域——>
亚博Zendesk期望SAML断言如下所示:
< SAML: Response xmlns: SAML ="urn:oasis:names:tc:SAML:2.0:protocol" ID="s2202bbbb afa9d270d1c15990b738f4ab36139d463" InResponseTo=" _e4a78380 -35da-012e-8ea7-005056 9200d8" Version="2.0" IssueInstant="2011-03-21T11:22:02Z" Destination="https://yoursubdom亚博ain.zendesk.com/access/saml"> < SAML: Issuer xmlns: SAML ="urn:oasis:names:tc:SAML:2.0:assertion">myidp.entity. "id . id
请注意:替换'accountname'目的地
属性与您的Zendesk子域。亚博
亚博Zendesk期望在断言的属性语句中指定用户属性(< saml: AttributeStatement >
),例如:
Acme Rockets tag1 tag2 555-555-1234 agent 12345
有关Zendesk支持的用户属性的名称和描述,请参见亚博获取额外的用户数据以上。请注意,可选的用户属性不支持完整的名称空间。
37个评论
你好,
在将附加属性映射到用户字段之后,是否期望它只填充到新配置的用户和映射后登录的用户?
你好所有的,
我目前使用的是SAML,我刚刚更新了Zendesk SSO上的Certificate指纹,因为证书将在2周内到期。亚博我试图保存设置,但我一直在SAML SSO URL下得到错误"输入此SSO配置唯一的URL "。我从来没有改变过这部分设置,因为它一直是一样的,自从我在2019年进行设置以来一直工作得很好。任何帮助都会很感激。我使用Azure AD进行SSO
嗨丹尼尔·科克
请联系Zendesk的客户支持,应该有人能帮助你。亚博
我需要帮助
看看微软的文档单点登录SAML协议,则不支持Subject元素,此信息应通过使用login_hint url参数提供。在Azure AD的情况下如何提供电子邮件地址?
只是为了更新,我们得到了这个排序-这是一个问题与我们的Azure AD配置。现在一切正常。
我们的SAML证书每三个月轮换一次,我们是否可以自动更新Zendesk期望的指纹?亚博我们的证书可以从我们的IdentityProvider的知名/发现端点获得。
请登录留下评论。