要授予对服务提供商用户的细化权能和控制范围,请使用服务提供商用户管理员角色。可以将管理员角色配置为在登录时动态分配给一个或多个 Identity Manager 用户或服务提供者用户。
可以定义规则并将其分配给管理员角色,管理员角色可指定授予分配了管理员角色的用户的权能(例如 Service Provider Create User)。
要将管理员角色委托用于服务提供者用户,您必须在 Identity Manager 系统配置对象(编辑 Identity Manager 配置对象)中将其启用。
如果启用通过管理员角色分配进行的委托,则“服务提供者配置”中的“IDM 组织属性名称”不是必填项。
要启用服务提供者管理员角色委托(服务提供者委托管理),请打开要修改的系统配置对象(编辑 Identity Manager 配置对象)并将以下属性设置为 true:
security.authz.external.app name.object type
其中 app name 为 Identity Manager 应用程序(例如管理员界面),object type 为 Service Provider Users
可以为每个 Identity Manager 应用程序(例如管理员界面或用户界面)和每个对象类型启用该属性。当前,唯一受支持的对象类型为 Service Provider Users。默认值为 false。
例如,要为 Identity Manager 管理员启用服务提供者委托管理,请将“系统配置”配置对象中的以下属性设置为 "true":
security.authz.external.Administrator Interface.Service Provider Users
如果为给定的 Identity Manager 或服务提供者应用程序禁用了服务提供者委托管理(设置为 false),则会使用基于组织的授权模型。
在启用服务提供者委托管理后,跟踪的事件将捕获有关执行的授权规则数和持续时间的信息。可以在面板中找到这些统计信息。
要配置服务提供者用户管理员角色,请创建一个管理员角色,然后指定控制范围、权能以及应将其分配给的用户。
在创建服务提供商用户管理员角色之前,应为管理员角色定义搜索上下文、搜索过滤器、搜索过滤器后、权能和用户分配规则。
要使用以下规则,您必须指定该规则的 authType:
SPEUsersSearchContextRule
SPEUsersSearchFilterRule
SPEUsersAfterSearchFilterRule
CapabilitiesOnSPEUserRule
UserIsAssignedAdminRoleRule
SPEUserIsAssignedAdminRoleRule
Identity Manager 提供了示例规则,您可以使用这些示例规则为服务提供者用户管理员角色创建这些规则。您可以在 Identity Manager 安装目录的 sample/adminRoleRules.xml 中找到这些规则。
有关为您的环境创建这些规则的详细信息,请参见《Sun Identity Manager Service Provider 8.1 Deployment》。
在管理员界面中,单击菜单中的“安全性”,然后单击“管理员角色”。
将打开“管理员角色”页。
单击“新建”。
将打开“创建管理员角色”页。
指定管理员角色的名称,并选择“服务提供者用户”类型。
按照以下各节所述,指定“控制范围”、“权能”和“分配给用户”选项。
服务提供者用户管理员角色的控制范围可指定允许给定的 Identity Manager 管理员、Identity Manager 最终用户或 Identity Manager 服务提供者最终用户查看的服务提供者用户。如果请求在目录中列出服务提供商用户,则会强制指定控制范围。
您可以为服务提供商用户管理员角色控制范围指定以下一个或多个设置:
用户搜索上下文。指定是使用规则还是文本字符串来开始搜索。
如果指定为“无”,则默认搜索上下文将是配置为服务提供者用户目录的 Identity Mananger 资源中指定的基本上下文。
用户搜索过滤器。指定搜索过滤器是应用规则还是文本字符串。
所选规则指定或返回的文本字符串应为表示用户集的 LDAP 兼容的搜索过滤器字符串,在搜索上下文中,这些用户将由分配了此管理员角色的用户控制。指定的过滤器将与用户指定的搜索过滤器结合,以确保搜索返回的用户不包括分配了此 AdminRole 的用户无权列出的任何用户。
用户搜索过滤器后规则。选择在应用用户搜索过滤器后将应用的规则。
该规则在对服务提供者用户目录执行初始 LDAP 搜索后运行,并评估结果以确定允许请求用户访问的识别名 (DN)。
当需要使用非 LDAP 用户属性(例如组成员资格)确定用户是否应在请求用户的控制范围中时,或需要使用信息库而不是服务提供者用户目录(例如 Oracle 数据库或 RACF)做出过滤决策时,可以使用该类型的规则。
服务提供商用户管理员角色的权能用于指定请求用户对所请求访问的服务提供商用户具有的权能和权限。如果请求查看、创建、修改或删除服务提供商用户,则会强制指定权能。
在“权能”选项卡上,选择要为该管理员角色应用的“权能规则”。
通过指定将在登录时进行评估以确定是否向验证用户分配管理员角色的规则,可以将服务提供商用户管理员角色动态地分配给服务提供商用户。
单击“分配给用户”选项卡,然后选择要为分配应用的规则。
必须为每个登录界面(例如用户界面和管理员界面)启用将管理员角色动态分配给用户的操作,方法是:将以下系统配置对象(编辑 Identity Manager 配置对象)设置为 true:
security.authz.checkDynamicallyAssignedAdminRolesAtLoginTo. logininterface
所有界面的默认值为 false。