在此页:
目标用户:
CAST AI 管理员
摘要:本节描述如何为CAST AIC门户配置访问安全性。
简介
CAST AIC门户有多种认证模式可供使用:
模式 | 描述 | 注意 |
---|---|---|
默认认证 | 默认情况下此模式是激活的,并依赖于web应用中的application——security——default.xml配置文件定义的简单用户名/密码身份验证。 |
|
带有LDAP的活动目录 | 默认情况下此模式为非激活模式,允许用户使用其公司Active Directory登录进行身份验证。 | |
标准LDAP | 默认情况下此模式是不激活的,允许用户使用与Active Directory不兼容的标准LDAP服务器进行身份验证。 | |
SAML | 该模式默认为非激活的,允许用户通过SAML进行身份验证。 |
上述模式是通过web应用中的security.properties配置文件激活和配置:
%CATALINA_HOME%\webapps\CAST——AICP\WEB——INF\security.properties
身份验证模式激活
任何身份验证模式的激活都由下一节中的security.properties文件处理。
# ============================= # CAST AICP security parameters # ============================= # Applicable security mode # ———————————————————————————————————————————————— # —— default ——> The initial mode when you deploy AICP # —— ldap ——> Set this mode for authentication over LDAP(S) # —— ad ——> Set this mode for authentication over LDAP(S) with basic Active Directory instances (simplified mode) # —— saml ——> Set this mode for authentication over SAML2 security.mode=default
在“开箱即用”状态下,默认的安全模式是活动的,如上所示。一次只能激活一个模式。
激活和非激活的操作
若要激活模式,请将以下行更改为所需的安全模式。例如将默认身份验证安全模式更改为LDAP Active Directory,请执行以下操作:
更改
security.mode=default
为:
security.mode=ad
在进行更改之后,保存security.properties文件,然后重新启动应用服务器,使更改生效。
配置每个模式
默认的身份验证模式
此模式默认为“开箱即用”,用户名和密码区分大小写:
用户名 | 密码 | 用户组 |
---|---|---|
cast | cast | ADMINISTRATORS |
请注意,“cast”用户是ADMINISTRATORS用户组的成员,该用户组可以访问所有配置选项,并且可以与任何域交互并交付任何应用。CAST建议保留管理员用户组中的至少一个用户。
如果想更改此现有用户的密码,或者想添加附加的“内存身份验证”用户,则需要用web应用中的application——security——default.xml配置文件进行修改。此文件包含以下部分,其中定义了可以在默认安全模式下访问CAST AIC门户的用户:
<user——service> <user name="cast" password="cast" authorities="ADMINISTRATORS"/> </user——service>
如上面的代码所示,用户是使用“name”属性在<user>元素中定义的。该元素还定义:
- 用户的密码
- 用户被分配到的用户组
添加新用户
要添加新用户名,请添加一个附加的<user>标记,例如这将添加一个用户名“jhu”和密码“mypassword”,分配给用户组“DELIVERY_GROUP1”(有关组和角色的更多信息,请参见下面的用户组和角色一节):
<user——service> <user name="cast" password="cast" authorities="ADMINISTRATORS"/> <user name="jhu" password="mypassword" authorities="DELIVERY_GROUP1"/> </user——service>
注意如果需要,可以将用户分配到多个组,例如将用户分配到“DELIVERY_GROUP1”、“DELIVERY_GROUP2”和“DELIVERY_GROUP3”,使用以下语法:
<user name="jhu" password="mypassword" authorities="DELIVERY_GROUP1,DELIVERY_GROUP2,DELIVERY_GROUP3"/>
在做出任何更改之后,保存pplication——security——default.xml文件,然后重新启动应用服务器使更改生效。
删除现有用户
要删除现有用户,只需从application——security——default.xml文件中删除相应的<user>标记。在做出更改之后,保存application——security——default.xml文件,然后重新启动应用服务器使更改生效。
编辑现有用户
要编辑现有用户,只需从application——security——default.xml文件中编辑相应的<user>标记。在做出更改之后,保存application——security——default.xml文件,然后重新启动应用服务器使更改生效。
禁用用户而不将其从application——security——default.xml文件中删除
要禁用用户,将disabled="true"作为属性添加到<user>标记:
<user name="cast" password="cast" authorities="ADMINISTRATORS" disabled="true"/>
在做出更改之后,保存pplication——security——default.xml文件,然后重新启动应用服务器使更改生效。
使用LDAP的Active Directory
此模式在默认情况下不启用“开箱即用”。允许用户使用公司Active Directory登录。CAST提供了占位符参数,因此必须更改这些参数身份验证才能正常工作。为此,请修改web应用中的security.properties配置文件。该文件包含以下注释部分,其中定义了Active Directory域和处理Active Directory身份验证的内部LDAP服务器的URL:
# Parameters for ad mode # ———————————————————————————————————————————— security.ad.url=ldap://directory.example.com/ security.ad.domain=example.com
- 需要更改这两个参数以匹配环境:
- 在进行更改之后,保存security.properties文件,然后重新启动应用服务器使更改生效。
用户组
用户将自动分配与他们所属的Active Directory组的CN对应的角色(有关用户组和角色的更多信息,请参见下面的User groups and roles一节)。
角色分配支持嵌套组。例如如果用户jdoe是groupA的成员,groupA是用于定义角色的groupB的成员,那么jdoe将被赋予groupB角色的属性。
标准 LDAP
此模式在默认情况下不启用“开箱即用”。可以与任何LDAP兼容的企业目录一起使用,包括Active directory(尽管在这种情况下,大多数情况下应该首选LDAP模式的Active directory)。允许用户使用企业LDAP登录登录CAST AIC门户。CAST提供了占位符参数,因此必须更改这些参数,身份验证才能正常工作。为此请修改web应用中的security.properties配置文件。该文件包含以下注释部分,其中定义了所需的参数:
# Parameters for ldap mode # ———————————————————————————————————————————————— security.ldap.url=ldap://directory.example.com/ security.ldap.account.dn=cn=serviceaccount,dc=example,dc=com security.ldap.account.password=password security.ldap.account.key= security.ldap.usersearch.base=dc=example,dc=com security.ldap.usersearch.filter=(&(objectClass=inetOrgPerson)(uid={0})) security.ldap.groupsearch.base=dc=example,dc=com security.ldap.groupsearch.filter=(&(objectClass=groupOfNames)(member={0}))
- 首先需要更改以下参数,以匹配连接到目录所需的URL和服务帐户:
security.ldap.url=ldap://directory.example.com/ security.ldap.account.dn=cn=serviceaccount,dc=example,dc=com security.ldap.account.password=password
- 然后需要更改与搜索目录中的用户相关的下列参数(搜索基数和搜索过滤器):
security.ldap.usersearch.base=dc=example,dc=com security.ldap.usersearch.filter=(&(objectClass=inetOrgPerson)(uid={0}))
- 对于Active Directory,使用security.ldap.usersearch.filter参数通常采用以下形式:
security.ldap.usersearch.filter=(&(objectClass=user)(sAMAccountName={0}))
- 在进行更改之后,保存security.properties文件,然后重新启动应用服务器使更改生效。
用户组
用户将自动分配与所属的LDAP组的CN对应的角色(有关用户组和角色的更多信息,请参见下面的User groups and roles一节)。
角色分配支持嵌套组。例如如果用户jdoe是groupA的成员,groupA是用于定义角色的groupB的成员,那么jdoe将被赋予groupB角色的属性。
- 要启用LDAP组检索,请修改安全性。属性配置文件(这个文件是上面描述的)在web应用中——重点在以下部分:
# Parameters for ldap mode # ———————————————————————————————————————————————— security.ldap.url=ldap://directory.example.com/ security.ldap.account.dn=cn=serviceaccount,dc=example,dc=com security.ldap.account.password=password security.ldap.account.key= security.ldap.usersearch.base=dc=example,dc=com security.ldap.usersearch.filter=(&(objectClass=inetOrgPerson)(uid={0})) security.ldap.groupsearch.base=dc=example,dc=com security.ldap.groupsearch.filter=(&(objectClass=groupOfNames)(member={0}))
- 需要更改以下参数以匹配目录的结构(组搜索基、组搜索过滤器、组角色属性):
security.ldap.groupsearch.base=dc=example,dc=com security.ldap.groupsearch.filter=(&(objectClass=groupOfNames)(member={0}))
- 对于Active Directory,security.ldap.groupsearch.filter参数通常采用以下形式:
security.ldap.groupsearch.filter=(&(objectClass=group)(member={0}))
- 在进行更改之后,保存security.properties文件,然后重新启动应用程序服务器使更改生效。
SAML 模式
请参见 使用SAML身份验证 获得更多信息
用户组和角色
CAST AIC门户提供了一种方法,通过使用组和角色来限制对某些功能的访问。目前有两种角色:
角色 | 描述 |
---|---|
平台管理员 | 被授予完全访问AIC门户的所有功能:
开箱即用,CAST AIC门户有一个平台管理员——“CAST”用户,ADMINISTRATORS组的成员,默认情况下启用。 |
交付管理 | 授予访问权限如下:
开箱即用,CAST AIC门户没有定义交付管理器。 |
配置平台管理员角色
平台管理员角色是使用以下XML文件配置的——在这个XML配置文件中定义的所有组(及其成员)都将被授予平台管理员角色:
%CATALINA_HOME%\webapps\CAST——AICP\WEB——INF\administrators.xml
默认情况下,“内存身份验证”cast用户是“ADMINISTRATORS”组的成员,“ADMINISTRATORS”组被授予平台管理员角色(CAST建议将此配置保留为默认值):
<?xml version="1.0" encoding="UTF——8"?> <administrators xmlns:xsi="http://www.w3.org/2001/XMLSchema——instance" xsi:noNamespaceSchemaLocation="administrators.xsd"> <!———— The default ADMINISTRATORS group is attributed to the default user cast. Please do not remove this value. ————> <group>ADMINISTRATORS</group> </administrators>
每种身份验证模式中的行为
根据使用的身份验证模式,平台管理员角色的行为如下:
身份验证模式 | 行为 |
---|---|
默认的身份验证 | 为了获得平台管理员角色,用户必须是默认管理员组的成员,或者是添加到administrators.xml文件中的自定义组。正如上所述用户通过application——security——default.xml配置文件分配给组。 |
带有LDAP和标准LDAP的Active Directory | 为了获得平台管理员角色,用户必须是Active Directory或LDAP组的成员,其CN(公共名称)匹配administrators.xml文件中默认的管理员组,或已添加到administrators.xml文件中的自定义组。 |
将平台管理员角色授予一个组
为另一个组分配平台管理员角色,插入一个新的<group>元素,如下图所示:
带有LDAP和标准LDAP的Active Directory
在此模式下,只需添加要将平台管理员角色分配给的Active Directory组的公共名称(CN)。在本例中,添加了Active Directory组“company.development.castadmins”:
<?xml version="1.0" encoding="UTF——8"?> <administrators xmlns:xsi="http://www.w3.org/2001/XMLSchema——instance" xsi:noNamespaceSchemaLocation="administrators.xsd"> <!———— The default ADMINISTRATORS group is attributed to the default user cast. Please do not remove this value. ————> <group>ADMINISTRATORS</group> <group>company.development.castadmins</group> </administrators>
在进行更改之后,保存security.properties文件,然后重新启动应用程序服务器使更改生效。
默认的身份验证
在此模式下,只需添加要将平台管理员角色分配给组的名称。在本例中,添加了“ITADMINS”组:
<?xml version="1.0" encoding="UTF——8"?> <administrators xmlns:xsi="http://www.w3.org/2001/XMLSchema——instance" xsi:noNamespaceSchemaLocation="administrators.xsd"> <!———— The default ADMINISTRATORS group is attributed to the default user cast. Please do not remove this value. ————> <group>ADMINISTRATORS</group> <group>ITADMIN</group> </administrators>
在进行更改之后,保存security.properties文件,然后重新启动应用程序服务器使更改生效。
配置交付管理器角色
与平台管理员角色不同,交付管理器角色的配置是使用CAST AIC门户的GUI实现的。这方面的进一步详细讨论载于:
请注意,与交付管理角色(即被授予此角色的用户/组)相关的信息存储在HSQLDB (HyperSQL数据库)中。数据存储在以下位置:
%CATALINA_HOME%\webapps\CAST——AICP\database