Application Server 预先配置了三个区域:file
、certificate
和 admin-realm
。您还可以创建 ldap
、solaris
和自定义区域。通常,一个服务器上会有每种类型的一个区域,但在 Application Server 上有两个 file 区域:file
和 admin-realm
。这两个区域类型相同但用于两种不同的目的。您的系统也可以为每个虚拟服务器配备不同的证书数据库。
要创建安全区域,请执行以下步骤。
server
,请展开 server-config
节点。default-config
节点。将显示“创建区域”页面。
要添加属性,请执行以下操作:
file
区域属性的说明,请参见编辑 file 和 admin-realm 区域。certificate
区域属性的说明,请参见编辑 certificate 区域。ldap
区域属性的说明,请参见创建 ldap 区域。solaris
区域属性的说明,请参见创建 solaris 区域。
等效的 asadmin
命令为:create-auth-realm
ldap
区域使用来自 LDAP 服务器的信息执行验证。用户信息包括用户名、密码和用户所属的组。要使用 LDAP 区域,必须已在 LDAP 目录中定义了用户和组。
要创建 LDAP 区域,请按照创建区域中的步骤添加新区域,然后添加表 0-36 中所示的属性。
表 0-37 显示了 ldap
区域的可选属性:
例如,假定在 LDAP 目录中定义了一个 LDAP 用户 Joe Java,如下所示:
uid=jjava,ou=People,dc=acme,dc=com
uid=jjava
givenName=joe
objectClass=top
objectClass=person
objectClass=organizationalPerson
objectClass=inetorgperson
sn=java
cn=Joe Java
创建或编辑 ldap
区域时,您可以使用示例代码输入表 0-38 中所示的值。
属性名称 |
属性值 |
---|---|
|
服务器的 LDAP URL,例如: |
|
可以向更高层次进行搜索(例如 dc=acme,dc=com),但搜索将遍历树的更大部分,从而导致性能降低。 |
|
|
solaris
区域从基础 Solaris 用户数据库(由系统配置确定)获取用户和组信息。solaris
区域调用基础 PAM 基础结构以用于验证。如果已配置的 PAM 模块需要超级用户权限,则域必须以超级用户身份运行才能使用该区域。有关详细信息,请参见安全服务的 Solaris 文档。
solaris
区域有一个必需的属性 jaas-context
,该属性指定要使用的登录模块的类型。属性值必须为 solarisRealm
。
注:只有 Solaris 9 或更高版本才支持 solaris
区域。
除了四个内置区域以外,您还可以创建以其他方式存储用户数据(例如存储在关系型数据库中)的自定义区域。自定义区域的开发不在本文档的讨论范围之内。有关更多信息,请参见 Application Server Developer's Guide 的 Securing Applications 一章。
作为管理员,您需要了解的主要事项是:自定义区域是由源自 Java 验证和授权服务 (JAAS) 软件包的类(称为 LoginModule
)实现的。
要配置 Application Server 以使用自定义区域,请执行以下步骤:
LoginModule
类的名称。自定义区域可以使用任何具有唯一性的名称,例如 myCustomRealm
。/domains/
domain_name/config/login.conf
,并在文件末尾添加 JAAS LoginModule
的全限定类名,如下所示:
realmName {
fully-qualified-LoginModule-classname required;
};
例如,
myCustomRealm {
com.foo.bar.security.customrealm.simpleCustomLoginModule required;
};
LoginModule
类和所有依赖类复制到 install_dir/domains/
domain_name/lib/classes
目录中。
检查 install_dir/domains/
domain_name/logs/server.log
以确保服务器已装入该区域。服务器应调用区域的 init()
方法。
另请参见: