安全断言标记语言 (SAML) 单点登录 (SSO)
安全断言标记语言 (SAML) 是基于 XML 的开放标准数据格式,用于在双方之间(例如身份提供商和服务提供商之间)交流身份验证和授权数据。SAML 通常用于 Web 浏览器 单点登录 (SSO)。
SAML 的工作方式
将通过身份提供商 (IdP) 进行身份验证。在身份提供商断定用户的身份之后,服务提供商 (SP) 可向用户提供对于其服务的访问权限。由于身份提供商启用了 SSO,用户可访问数个服务提供商站点和应用程序,而无需登录每个站点。
SAML 规范定义了三个角色:
- 当事人:通常是用户
- IdP:身份提供商
- SP:服务提供商
当事人从 SP 请求服务,由此从 IdP 请求并获得身份断定。根据断定,SP 决定是否执行当事人请求的服务。
Qlik NPrinting 中的 SAML
Qlik NPrinting 支持 SAML V2.0,实现方式为:
- 实施可与外部身份提供商集成的所提供服务
- 支持 HTTP Redirect Binding 和 HTTP POST Binding,用于 SAML 响应
- 支持 SAML 属性,用于资源和数据的访问权限控制
限制
- Qlik NPrinting 不签署 SAML 身份验证请求。这意味着不支持要求签署 SAML 身份验证请求的身份提供商。
- 不支持 SAML 响应加密,因此 Qlik NPrinting 不会读取加密的消息或属性。
- 不支持 SAML 单点登录。
您必须启用 Windows 身份验证方可在 QlikView Web 服务器和 Qlik Sense 上使用 Qlik NPrinting On-Demand 插件。
如果您只想使用 JWT 身份验证,则必须在 Microsoft IIS Web Sever 上配置的 QlikView Server 上安装 Qlik NPrinting On-Demand 插件。
Qlik NPrinting web 控制台 和 NewsStand 配置
由于 Qlik NPrinting web 控制台 和 NewsStand 具有不同的 Web 地址,您必须设置两个不同的 SAML 连接来让二者有效。
身份提供商发起的 SSO
在身份提供商发起 SSO 的情况下,用户直接登录身份提供商,由身份提供商执行 SSO 身份验证。
如果身份验证流程从身份提供商开始,用户将被重定向至 Qlik NPrinting web 控制台 的 Qlik NPrinting 仪表板或 NewsStand 主页。
服务提供商发起的 SSO
在服务提供商发起 SSO 的情况下,用户在服务提供商站点开始。不用登录服务提供商站点,SSO 身份验证由身份提供商启动。在该身份验证流程中,Qlik NPrinting 扮演服务提供商的角色。根据您的 SAML 配置,Qlik NPrinting 登录页面为您的每个身份提供商显示一个按钮。如果您单击按钮,则会被重定向至身份提供商站点以进行身份验证。如果您已经登录,身份提供商将把您定向至 Qlik NPrinting 仪表板。
元数据
服务提供商 (Qlik NPrinting) 需要来自身份提供商的配置信息。该信息可作为身份提供商元数据文件使用,可被下载并发送给服务提供商以便于配置。身份提供商元数据上传自 Qlik NPrinting SAML 配置页面。
并非所有身份提供商都支持元数据文件的下载。如果不支持下载,则可手动创建元数据文件。
Qlik NPrinting 为身份提供商提供服务提供商元数据,该元数据下载自 SAML 配置列表页面。元数据包括以下信息:
- 断言使用者服务 (ACS) URL
- 实体 ID
Qlik NPrinting 需要使用身份提供商元数据中的以下信息:
- 证书
- 实体 ID
- HTTP-重定向位置