Spotfire用户手册之用户安全: 用户的访问授权(User authentication)

本文来自官方在线文档:

https://docs.tibco.com/pub/spotfire_server/10.2.0/doc/html/TIB_sfire_server_tsas_admin_help/GUID-DC46EFFA-C512-4DC2-9F93-BE69D1244235-homepage.html

Spotfire支持各种用户身份验证协议,用于验证登录该程序的用户的身份。

要配置身份验证,请同时选择身份验证方法和用户目录(user directory)。

Spotfire支持两种主要类型的身份验证 - 用户名和密码单点登录以及双因子和外部方法。

用户名和密码验证方法

当用户启动Spotfire Analyst客户端时,他们会选择要连接的Spotfire服务器。 如果为基于用户名和密码的身份验证方法配置了该服务器,则还会提示用户输入其用户名和密码。

然后将用户名和密码发送到Spotfire Server。

可以通过多种方式自定义Spotfire Analyst客户端的登录体验,包括用户是否可以选择保存其登录信息,以及对话框是否包含RSS源。 有关详细信息,请参阅登录行为配置。

除非服务器使用TLS,否则用户输入的凭据在传输到Spotfire Server时不会加密。 要帮助抵消与未加密数据相关的风险,请在配置用户名和密码身份验证方法时启用TLS。

 

对于所有用户名和密码方法,将在Spotfire数据库中创建每个用户的条目。

  1. 如果为外部用户目录(例如LDAP目录)配置身份验证,则外部目录中的用户列表或组层次结构将自动复制到Spotfire数据库。
  2. 如果为Spotfire数据库配置身份验证,则必须手动输入用户和组信息。
  3. 可以将对外部用户目录的身份验证与手动添加到Spotfire数据库的用户相结合。

 

对Spotfire数据库的身份验证

此身份验证方法要求为Spotfire数据库配置Spotfire用户目录。

当用户目录设置为Database时,管理员通常手动将用户名和密码输入Spotfire数据库。 名称和密码也可以从CSV文件导入,或者在新用户登录服务器时自动创建。 通过验证后过滤器可以选择自动创建用户。

基于Spotfire数据库的身份验证是Spotfire Server的默认配置,因此不需要特殊配置。 设置简单快捷,建议用于小型的Spotfire项目实施。

 

基于LDAP的身份验证配置

此身份验证方法与现有LDAP目录集成,并将实际身份验证职责委派给其配置的LDAP服务器。

结果是只有LDAP目录中具有有效帐户的用户才能登录Spotfire Server。建议将此设置用于大中型的Spotfire项目实施。

Spotfire Server支持以下LDAP服务器:

  1. Microsoft Active Directory
  2. Directory Server产品系列(Oracle Directory Server,Sun Java System Directory Server,Sun ONE Directory Server,iPlanet Directory Server,Netscape Directory Server)

其他类型的LDAP服务器也可以与Spotfire Server一起使用,但需要更高级的配置。

当Spotfire Server向Microsoft Active Directory服务器进行身份验证时,它会自动使用快速绑定控制(也称为并发绑定控制)选项来最小化LDAP服务器上消耗的资源。

 

LDAP身份验证可以与LDAP用户目录或Spotfire数据库用户目录结合使用:

  1. 当用户目录设置为LDAP时,Spotfire Server可以自动从LDAP目录导入用户名。 密码保留在外部目录中,Spotfire Server会联系此目录以验证用户的密码。 您可以设置Spotfire Server检查LDAP目录以获取更新的频率。

当用户目录模式设置为LDAP时,Spotfire Server还会导入组名称和组成员身份信息。 有关组的信息,请参阅用户和组简介和组管理。

  1. 当用户目录模式设置为Database时,管理员通常会手动将有效的用户名和密码输入Spotfire数据库。 名称和密码也可以从CSV文件导入,或者在新用户登录服务器时自动创建。 通过后验证过滤器可以选择在用户登录时自动创建用户。

 

LDAP的配置

当用户身份验证需要配置为LDAP目录时,Spotfire Server会将身份验证责任委派给配置的LDAP服务器。 因此,只有LDAP目录中具有有效帐户的用户才能登录Spotfire Server。

有关支持的LDAP服务器以及有关组织服务器需要了解的信息,请参阅LDAP身份验证

有关其他LDAP实现的信息,包括Kerberos,NTLM,X.509客户端证书和外部身份验证,请参阅用户身份验证。

 

先决条件

  1. 您的组织将用户信息存储在LDAP目录中。
  2. bootstrap.xml文件已成功保存在配置工具中; 有关说明,请参阅创建bootstrap.xml文件。

 

步骤描述

  1. 在配置工具的“配置”页面上,在“身份验证”旁边,选择“BASIC LDAP”。

Spotfire用户手册之用户安全: 用户的访问授权(User authentication)

用户目录字段与“身份验证”字段一起切换到LDAP。这是因为在大多数情况下,建议在LDAP模式下将LDAP身份验证与用户目录配对。

如果您的LDAP目录包含大量未分为sub-units(上下文)的用户,则可能需要使用Spotfire数据库用户目录。 在此配置中,只有登录到Spotfire Server的用户才会包含在用户目录中,因此Spotfire Server要跟踪的用户较少。

 

  1. 在页面的左侧面板中,单击“身份验证:LDAP”,然后单击“新建”。

Spotfire用户手册之用户安全: 用户的访问授权(User authentication)

 

  1. 在“创建配置”对话框中,输入LDAP配置的名称,例如“LDAP on TIBCO123”,然后单击“确定”。

将显示LDAP配置页面。

Spotfire用户手册之用户安全: 用户的访问授权(User authentication)

  1. “启用”旁边,选中“身份验证”和“用户目录”复选框。这指示Spotfire Server在Spotfire数据库中为LDAP目录中的每个用户(在配置的范围内)创建用户帐户。当有人尝试登录Spotfire系统时,Spotfire Server会访问其帐户,然后通过LDAP目录验证其密码。
  2. 在LDAP用户名和LDAP密码旁边,输入对Active Directory具有读访问权限的LDAP服务帐户的用户名和密码。
  3. 在LDAP服务器URL旁边,以LDAP://server/:por格式输入URL,例如LDAP://computer1.TIBCO.com:389
  4. 在“上下文名称”旁边,输入要同步的上下文。
  5. 在同步计划旁边,您可以更改LDAP目录和Spotfire数据库之间的计划同步时间。默认情况下,每当Spotfire Server重新启动时,除了每天都要同步。有关其他同步选项,请单击添加。
  6. 单击“测试连接”以验证您的输入。
  7. 如果在上面的步骤1中将用户目录设置为Database,请单击左侧面板中的Post Authentication Filter,然后在Default filter mode旁边,选择Auto-create。当用户登录Spotfire Server时,会将其添加到Spotfire用户目录中。
  8. 完成后,单击“保存配置”。

 

配置LDAPS(群)

在LDAP环境中,Spotfire系统与LDAP目录服务器通信,如果LDAP目录支持,则管理员通常使用TLS保护的LDAP协议。

 

先决条件

  1. LDAP目录服务器已设置为使用TLS进行通信。

 

详细步骤

  1. 如果您使用的是自签名证书,请将Spotfire Server设置为信任此证书:
  1. 将证书导出到文件并将其复制到Spotfire Server。
  2. 打开命令行界面,导航到<installation dir> / jdk / jre / lib / security目录,然后运行以下keytool命令:../../ bin / keytool -import -file ldapserver.crt  -  keystore cacerts -alias spotfire_ldaps。 将ldapserver.crt替换为导出证书的名称。
  3. 出现提示时,输入cacerts**库的密码。 默认密码为“changeit”(不带引号)。
  4. 使用以下命令验证证书是否已成功添加:../../ bin / keytool -list -keystore cacerts -alias spotfire_ldaps。
  5. 出现提示时,输入cacerts**库的密码。

2.要**LDAPS,请使用create-ldap-config或update-ldap-config命令。

 

LDAP的SASL身份验证

Spotfire Server支持两种SASL(简单身份验证套接字层)机制,用于对LDAP进行身份验证:DIGEST-MD5和GSSAPI。

这些机制可以在连接到LDAP服务器时通过防止通过网络传输明文密码来提供Spotfire Server的安全身份验证。

GSSAPI甚至可以在非安全网络上提供安全身份验证,因为它使用Kerberos协议进行身份验证。

这些说明适用于Active Directory LDAP配置。 Spotfire Server不支持GSSAPI用于其他LDAP配置

 

配置Spotfire Server以进行LDAP的DIGEST-MD5身份验证

这些说明适用于Active Directory LDAP配置。 Spotfire Server不支持GSSAPI用于其他LDAP配置。

 

详细步骤

  1. 使用DIGEST-MD5配置SASL身份验证时,请遵循以下准则:
  2. 可分辨名称(DN)不适用于身份验证; 必须使用userPrincipalName属性。
  3. 将authentication attribute选项设置为userPrincipalName。
  4. 将username属性选项设置为sAMAccountName。
  5. 所有帐户必须对其密码使用可逆加密。 这通常不是Active Directory的默认设置。

 

配置Spotfire Server以进行LDAP的GSSAPI身份验证

这些说明适用于Active Directory LDAP配置。 Spotfire Server不支持GSSAPI用于其他LDAP配置。

 

先决条件

  1. 使用明文密码身份验证(也称为简单身份验证机制)确保您具有完全正常工作的Active Directory LDAP配置。
  2. 将此完全正常工作的Active Directory LDAP配置保存到文件。
  3. 记下LDAP配置的ID。
  4. 确保您有一个完全正常工作的krb5.conf文件。 krb5.conf文件的内容必须与设置Spotfire Server进行Kerberos身份验证时的内容相同。 请参阅为Java配置Kerberos。

确保在安装文件之前停止整个服务/ Java进程。 如果在启动Spotfire Server后修改了krb5.conf文件,则必须重新启动Spotfire Server进程才能使修改生效。

 

详细步骤

  1. 停止Spotfire服务器(请参阅启动或停止Spotfire服务器)。
  2. 将完全正常工作的krb5.conf文件复制到群集中每个Spotfire服务器上的<install dir> / jdk / jre / lib / security目录。
  3. 打开配置工具,然后转到“LDAP配置”面板。
  4. 更新LDAP用户名,使其成为正确的Kerberos主体名称。通常,以大写字母添加帐户Windows域的名称就足够了。有时也需要包含Windows域名。使用GSSAPI时,使用基于专有名称(DN)的名称或包含NetBIOS域名不起作用。

正确名称的示例:

ldapsvc @ RESEARCH.EXAMPLE.COM

ldapsvc @ research.example.com @ RESEARCH.EXAMPLE.COM

  1. 选择要为GSSAPI启用的特定LDAP配置,然后展开“高级”设置。
  2. 在“高级”对话框中,进行以下更改:
  1. 将security-authentication配置属性设置为GSSAPI。
  2. 将authentication-attribute设置为sAMAccountName或userPrincipalName(以最适合您的配置为准)。默认值为空。

如果krb5.conf文件包含多个Kerberos领域,则authenticationattribute必须设置为userPrincipalName。

  1. 使用**kerberos.login.context.name和值SpotfireGSSAPI添加自定义属性。
  1. 单击“保存配置”。
  2. 重新启动Spotfire Server。

 

接下来做什么

必须为要为GSSAPI启用的每个LDAP目录执行与LDAP配置相关的过程步骤。 对于多个LDAP配置,请对每个配置重复这些步骤

 

LDAP和Spotfire数据库身份验证的组合

如果为外部用户目录(例如LDAP目录或Windows NT域)配置身份验证,则可以将其与手动将用户添加到Spotfire数据库相结合。

此功能允许用户访问Spotfire,即使它们不是外部用户目录的一部分。 例如,可能存在您不想添加到LDAP目录的临时用户,或者您可能希望确保管理员可以在与LDAP目录的连接丢失时访问Spotfire。 这些用户将添加到与Spotfire中创建的用户相同的域中。

默认情况下启用此功能。 有关如何禁用此功能的信息,请参阅阻止管理员在使用LDAP时添加本地用户。

如果从Spotfire数据库身份验证切换到LDAP身份验证,则Spotfire数据库中剩余的所有用户仍将可以访问Spotfire。

 

阻止管理员在使用LDAP时添加本地用户

在向外部目录进行身份验证时,可以阻止管理员将本地用户添加到Spotfire数据库。

 

详细步骤

  1. 使用export-config命令打开命令行并导出活动服务器配置; 有关其他信息,请参阅在命令行上执行命令。
  2. 在命令行上,输入以下命令:

config set-config-prop --name=user-directory.allow-database-user-creation --

value=false

有关该命令的信息,请参阅set-config-prop。

要再次启用该功能,请运行相同的命令,但将值设置为“true”。

  1. 使用import-config命令将配置文件导回Spotfire数据库。
  2. 重新启动Spotfire Server

 

自定义JAAS模块的身份验证

Spotfire Server支持的所有用户名和密码身份验证方法都实现为Java身份验证和授权服务(JAAS)模块。 Spotfire还支持第三方JAAS模块。

因此,您可以使用自定义JAAS模块,前提是它执行以下操作:

  1. 验证用户名和密码验证。
  2. 使用JAAS的NameCallback和PasswordCallback对象来收集用户名和密码。

使用自定义JAAS模块时,必须将jar文件放入,

  所有Spotfire服务器上的目录: <installation dir>/tomcat/webapps/spotfire/WEB-INF/lib

有关JAAS的更多信息,请参阅JAAS参考指南。

 

更多官方文档内容请参考:

https://docs.tibco.com/pub/spotfire_server/10.2.0/doc/html/TIB_sfire_server_tsas_admin_help/GUID-C21EEE2F-98CC-444A-99F9-55B336751B73.html

 

如需要联系TIBCO原厂采购,各位可以访问如下链接

https://www.tibco.com/company/locations

中国北京Main Office Phone

TIBCO联系电话:+86 10 8341 3723