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() 方法。
另请参见: