AdminTask 对象的 NamingAuthzCommands 命令组

要通过 wsadmin 工具为组和用户配置命名角色,可以使用 Jython 脚本语言来实现。 使用 NamingAuthzCommands 组中的命令和参数来分配、除去和查询命名角色配置。 CosNaming 安全性对 CosNaming 功能提供增强的细颗粒度安全性控制。

为提供执行某些应用程序服务器命名服务功能所需的权限等级,定义了许多命名角色。 仅当启用了全局安全性时才执行授权策略。

listGroupsForNamingRoles

listGroupsForNamingRoles 命令显示已映射到命名角色的组和特殊主体集。

目标对象

无。

返回值

该命令返回与每个命名角色关联的组和特殊主体集的列表。

批处理方式示例用法

  • 使用 Jython:
    AdminTask.listGroupsForNamingRoles()

交互方式示例用法

  • 使用 Jython:
    AdminTask.listGroupsForNamingRoles('-interactive')

listUsersForNamingRoles

listUsersForNamingRoles 命令显示已映射到命名角色的用户。

目标对象

无。

返回值

该命令返回与每个命名角色关联的用户的列表。

批处理方式示例用法

  • 使用 Jython:
    AdminTask.listUsersForNamingRoles()

交互方式示例用法

  • 使用 Jython:
    AdminTask.listUsersForNamingRoles('-interactive')

mapGroupsToNamingRole

mapGroupsToNamingRole 命令将组和/或特殊主体集映射到命名角色。

目标对象

无。

必需参数

-roleName
指定命名角色的名称。 (字符串)
表 1. 名称空间安全角色提供了四个名称空间安全角色:CosNamingRead,CosNamingWrite,CosNamingCreate,和CosNamingDelete. 角色的权限级别从低到高,如下表所定义:
角色名称 描述
CosNamingRead 您可以使用例如 Java™ 命名和目录接口 (JNDI) 查找方法来查询应用程序服务器名称空间。 该EVERYONEspecial-subject 是此角色的缺省策略。
CosNamingWrite 可以执行诸如 JNDI 绑定、重新绑定或取消绑定之类的写操作以及 CosNamingRead 操作。
CosNamingCreate 可以通过诸如 JNDI createSubcontext 和 CosNamingWrite 操作之类的操作来在名称空间中创建新对象。
CosNamingDelete 可以使用 JNDI destroySubcontext 方法和 CosNamingCreate 操作之类的方法和操作来破坏名称空间中的对象。

可选参数

-groupids
指定要映射到命名角色的组的名称。 (字符串 [])
-accessids
以格式指定用户的访问标识<group:realmName/uniqueID>. (字符串 [])
-specialSubjects
指定要映射的特殊主体集。 (字符串 [])
表 2. 特殊主体特殊主体包括EVERYONE,ALLAUTHENTICATED,ALLAUTHENTICATEDINTRUSTEDREALMS,如下表所定义:
页眉 页眉
EVERYONE 将每个人都映射到指定的角色。 如果将每个人都映射至某个角色,那么任何人都能访问此角色保护的资源,实际上,这等同于未启用安全性。
ALLAUTHENTICATED 将每个已认证的用户映射到指定的角色。 如果将每个已认证用户都映射到指定的角色,那么当前注册表中每个已认证的有效用户都能够访问此角色保护的资源。
ALLAUTHENTICATEDINTRUSTEDREALMS 将每个已认证的用户映射到指定的角色。 如果将每个已认证用户都映射到指定的角色,那么当前注册表中每个已认证的有效用户都能够访问信任域中此角色保护的资源。

返回值

此命令不会返回输出。

批处理方式示例用法

  • 使用 Jython 字符串:
    AdminTask.mapGroupsToNamingRole('[-roleName CosNamingCreate -groupids [group1, group2]]')
  • 使用 Jython 列表:
    AdminTask.mapGroupsToNamingRole(['-roleName', 'CosNamingCreate', '-groupids', '[group1, group2]'])

交互方式示例用法

  • 使用 Jython:
    AdminTask.mapGroupsToNamingRole('-interactive')

mapUsersToNamingRole

mapUsersToNamingRole 命令将用户映射到命名角色。

目标对象

无。

必需参数

-roleName
指定命名角色的名称。 (字符串)
表 3. 名称空间安全角色提供了四个名称空间安全角色:CosNamingRead,CosNamingWrite,CosNamingCreate,和CosNamingDelete. 角色的权限级别从低到高,如下表所定义:
角色名称 描述
CosNamingRead 您可以使用例如 Java 命名和目录接口 (JNDI) 查找方法来查询应用程序服务器名称空间。 该EVERYONEspecial-subject 是此角色的缺省策略。
CosNamingWrite 可以执行诸如 JNDI 绑定、重新绑定或取消绑定之类的写操作以及 CosNamingRead 操作。
CosNamingCreate 可以通过诸如 JNDI createSubcontext 和 CosNamingWrite 操作之类的操作来在名称空间中创建新对象。
CosNamingDelete 可以使用 JNDI destroySubcontext 方法和 CosNamingCreate 操作之类的方法和操作来破坏名称空间中的对象。

可选参数

-userids
指定要映射到相关命名角色的用户标识。 (字符串 [])
-accessids
以格式指定用户的访问标识<user:realmName/uniqueID>. (字符串 [])

返回值

此命令不会返回输出。

批处理方式示例用法

  • 使用 Jython 字符串:
    AdminTask.mapUsersToNamingRole([-roleName CosNamingDelete -userids [user1, user2, user3]]')
  • 使用 Jython 列表:
    AdminTask.mapUsersToNamingRole(['-roleName', 'CosNamingDelete', '-userids', '[user1, user2, user3]'])

交互方式示例用法

  • 使用 Jython:
    AdminTask.mapUsersToNamingRole('-interactive']

removeGroupsFromNamingRole

removeGroupsFromNamingRole 命令从命名角色中除去组和/或特殊主体集。

目标对象

无。

必需参数

-roleName
指定命名角色的名称。 (字符串)
表 4. 名称空间安全角色提供了四个名称空间安全角色:CosNamingRead,CosNamingWrite,CosNamingCreate,和CosNamingDelete. 角色的权限级别从低到高,如下表所定义:
角色名称 描述
CosNamingRead 您可以使用例如 Java 命名和目录接口 (JNDI) 查找方法来查询应用程序服务器名称空间。 该EVERYONEspecial-subject 是此角色的缺省策略。
CosNamingWrite 可以执行诸如 JNDI 绑定、重新绑定或取消绑定之类的写操作以及 CosNamingRead 操作。
CosNamingCreate 可以通过诸如 JNDI createSubcontext 和 CosNamingWrite 操作之类的操作来在名称空间中创建新对象。
CosNamingDelete 可以使用 JNDI destroySubcontext 方法和 CosNamingCreate 操作之类的方法和操作来破坏名称空间中的对象。

可选参数

-groupids
指定要从相关命名角色中除去的组的名称。 (字符串 [])
-specialSubjects
指定要除去的特殊主体集。 (字符串 [])
表 5. 特殊主体特殊主体包括EVERYONE,ALLAUTHENTICATED,ALLAUTHENTICATEDINTRUSTEDREALMS,如下表所定义:
页眉 页眉
EVERYONE 将每个人都映射到指定的角色。 如果将每个人都映射至某个角色,那么任何人都能访问此角色保护的资源,实际上,这等同于未启用安全性。
ALLAUTHENTICATED 将每个已认证的用户映射到指定的角色。 如果将每个已认证用户都映射到指定的角色,那么当前注册表中每个已认证的有效用户都能够访问此角色保护的资源。
ALLAUTHENTICATEDINTRUSTEDREALMS 将每个已认证的用户映射到指定的角色。 如果将每个已认证用户都映射到指定的角色,那么当前注册表中每个已认证的有效用户都能够访问信任域中此角色保护的资源。

返回值

此命令不会返回输出。

批处理方式示例用法

  • 使用 Jython 字符串:
    AdminTask.removeGroupsFromNamingRole('-roleName CosNamingRead -groupids [group1, group2] -specialSubjects EVERYONE')
  • 使用 Jython 列表:
    AdminTask.removeGroupsFromNamingRole(['-roleName', 'CosNamingRead', '-groupids', '[group1, group2]', '-specialSubjects', 'EVERYONE'])

交互方式示例用法

  • 使用 Jython:
    AdminTask.removeGroupsFromNamingRole('-interactive')

removeUsersFromNamingRole

removeUsersFromNamingRole 命令从命名角色中除去用户。

目标对象

无。

必需参数

-roleName
指定命名角色的名称。 (字符串)
表 6. 名称空间安全角色提供了四个名称空间安全角色:CosNamingRead,CosNamingWrite,CosNamingCreate,和CosNamingDelete. 角色的权限级别从低到高,如下表所定义:
角色名称 描述
CosNamingRead 您可以使用例如 Java 命名和目录接口 (JNDI) 查找方法来查询应用程序服务器名称空间。 该EVERYONEspecial-subject 是此角色的缺省策略。
CosNamingWrite 可以执行诸如 JNDI 绑定、重新绑定或取消绑定之类的写操作以及 CosNamingRead 操作。
CosNamingCreate 可以通过诸如 JNDI createSubcontext 和 CosNamingWrite 操作之类的操作来在名称空间中创建新对象。
CosNamingDelete 可以使用 JNDI destroySubcontext 方法和 CosNamingCreate 操作之类的方法和操作来破坏名称空间中的对象。

可选参数

-userids
指定要从相关命名角色中除去的用户标识。 (字符串 [])

返回值

此命令不会返回输出。

批处理方式示例用法

  • 使用 Jython 字符串:
    AdminTask.removeUsersFromNamingRole('-roleName CosNamingRead')
  • 使用 Jython 列表:
    AdminTask.removeUsersFromNamingRole(['-roleName', 'CosNamingRead'])

交互方式示例用法

  • 使用 Jython:
    AdminTask.removeUsersFromNamingRole('-interactive')