使用 wsadmin 工具创建特定于应用程序的和特定于信任服务的绑定

可以使用 Jython 或 Jacl 脚本语言来创建特定于应用程序的和特定于信任服务的绑定以匹配安装环境或要求。

开始之前

在管理安全性处于启用状态的情况下,验证您是否使用了正确的管理角色,如下表所述:
表 1. 管理角色. 管理角色决定您能否配置或指定绑定。
管理角色 权限
管理员 管理员角色必须拥有单元范围访问权才能配置绑定。如果您仅可以访问特定资源,那么可以为您有访问权的资源配置绑定。只有管理员角色才能配置绑定属性。
配置员 拥有单元范围访问权或特定资源访问权的配置员角色可以指定或取消指定绑定,但无法编辑属性。
部署者 拥有单元范围访问权或特定资源访问权的部署者角色可以指定或取消指定绑定,但无法编辑属性。
操作员 操作员角色可以查看绑定,但无法配置绑定。
监视员 监视员角色可以查看绑定,但无法配置绑定。

关于此任务

策略集绑定指定有关如何配置服务质量 (QoS) 的详细信息。例如,策略集连接确定是否应启用签署、加密或可靠消息传递。策略集绑定指定保护的配置方式,例如,密钥库文件的路径、令牌生成者的类名或 Java™ 认证和授权服务 (JAAS) 配置名称。

对于应用程序策略集,可以使用缺省绑定配置在单元级别指定策略集绑定,也可以使用特定于应用程序的绑定配置在应用程序级别指定策略集绑定,或使用常规绑定在单元级别指定策略集绑定。不推荐使用服务器级别缺省绑定。如果在进行策略集连接期间未指定任何绑定信息,那么此策略集将继承缺省绑定。可以将常规绑定(而不是服务器缺省绑定)指定为服务器的缺省绑定。

对于系统策略集,可以在单元级别和服务器级别指定绑定。系统策略集的可用绑定是 TrustServiceSymmetricDefault 和 TrustServiceSecurityDefault 绑定。如果连接未指定任何定制绑定信息,那么资源将继承 TrustServiceSymmetricDefault 或 TrustServiceSecurityDefault 绑定。

避免故障 避免故障: 仅将缺省绑定用于开发和测试。必须对生产环境定制绑定配置中的签名和加密密钥。gotcha
注: 在 WebSphere Application Server V7.0 和更高版本中,安全模型增强为以域为中心的安全模型,而不是基于服务器的安全模型。在此版本的产品中,还更改了缺省全局安全性(单元)级别和缺省服务器级别绑定的配置。在 WebSphere Application Server V6.1 Feature Pack for Web Services 中,可以为单元配置一组缺省绑定并可选择性地为每个服务器配置一组缺省绑定。在 V7.0 和更高版本中,您可以配置一个或多个常规服务提供程序绑定以及一个或多个常规服务客户机绑定。配置常规绑定之后,可以指定其中的哪些绑定是全局缺省绑定。还可选择性地指定用作应用程序服务器或安全域的缺省值的常规绑定。

为了支持混合单元环境,WebSphere Application Server 支持 V7.0 和 V6.1 绑定。常规单元级别绑定是特定于 V7.0 和更高版本的绑定。特定于应用程序的绑定保留在该应用程序所需要的版本处。当用户创建特定于应用程序的绑定时,应用程序服务器将决定要用于应用程序所必需的绑定版本。

使用下列准则来管理环境中的绑定:
  • 要显示或修改缺省 V6.1 绑定、V7.0 和信任服务绑定或者要通过应用程序的连接引用绑定,请使用 getBinding 或 setBinding 命令指定 attachmentId 和 bindingLocation 参数。
  • 要使用或修改常规 V7.0 和更高版本绑定,请使用 getBinding 或 setBinding 命令指定 bindingName 参数。
  • 要显示特定绑定的版本,请对 getBinding 命令指定 version 属性。
发生下列情况时,请对 V7.0 和更高版本环境中的应用程序使用 V6.1 绑定:
  • 应用程序中的模块至少安装在一个 Web Services Feature Pack 服务器上。
  • 应用程序至少包含一个特定于 V6.1 应用程序的绑定。应用程序服务器不会将常规绑定指定给安装在 Web Services Feature Pack 服务器上的应用程序的资源连接。对于应用程序,所有特定于应用程序的绑定必须位于同一级别。
常规服务提供程序绑定和客户机绑定并不链接到特定策略集,并且,他们提供可在多个应用程序之间复用的配置信息。您可以创建并管理常规提供程序策略集绑定和客户机策略集绑定,然后选择其中一种绑定类型用作应用程序服务器的缺省策略集绑定。如果希望部署到服务器的服务共享绑定配置,那么设置服务器缺省绑定很有用。另外,通过对每个部署到服务器的应用程序指定绑定,或者通过对安全域设置缺省绑定并将该安全域指定到一个或多个服务器,也可以共享绑定配置。可以指定要在全局安全性(单元)级别使用、适用于安全域或适用于特定服务器的服务提供程序或客户机缺省绑定。缺省绑定是您在更小作用域指定覆盖绑定时使用的绑定。应用程序服务器用于确定要使用哪个缺省绑定的优先顺序从低到高如下所示:
  1. 服务器级别缺省绑定
  2. 安全域级别缺省绑定
  3. 全局安全性(单元)缺省绑定

随产品提供的样本常规绑定最初设置为全局安全性(单元)缺省绑定。未对策略集连接指定任何特定于应用程序的绑定或信任服务绑定时,将使用缺省服务提供程序绑定和缺省服务客户机绑定。对于信任服务连接,未指定信任特定绑定时,将使用缺省绑定。如果不想将提供的提供程序样本用作缺省服务提供程序绑定,那么可以选择现有的常规提供程序绑定,或创建新的常规提供程序绑定以满足业务需求。同样,如果不想将提供的客户机样本用作缺省服务客户机绑定,那么可以选择现有的常规客户机绑定,也可以创建新的常规客户机绑定。

过程

  1. 启动脚本编制命令。 要了解更多信息,请参阅“启动 wsadmin 脚本编制客户机”信息。
  2. 确定要创建的绑定的类型。

    可以在单元级别、服务器级别或应用程序级别创建应用程序策略集绑定,而在单元级别或服务器级别创建信任服务策略集绑定。

  3. 检索您所感兴趣的策略的当前绑定配置。
    使用 getBinding 命令来显示包含特定绑定的所有配置属性的 Properties 对象。通过使用 -bindingLocation 参数和以下引用表传递 properties 对象来指定绑定的位置:
    表 2. 命令参数. 使用该命令来显示绑定的属性。
    绑定类型 -bindingLocation 参数值
    服务器级别(不推荐) -bindingLocation "[[node node1][server server1]]"
    应用程序 -bindingLocation "[[application application1][attachmentId 123]]"
    信任服务 -bindingLocation "[[systemType trustService] [attachmentId 123]]"
    信任客户机 -bindingLocation "[[systemType trustClient] [attachmentId 123]]"
    WS-Notification 客户机 -bindingLocation "[[bus myBus][WSNService myService][attachmentId 123]"
    在本示例中,此命令显示 application1 应用程序(连接标识为 123)的 WSAddressing 策略的当前绑定配置:
    AdminTask.getBinding('-policyType WSAddressing -bindingLocation "[[application application1][attachmentId 123]]"')
    要返回策略的特定配置属性,请使用 -attributes 参数。例如,输入此命令以确定是否启用了工作负载管理:
    AdminTask.getBinding('-policyType WSaddressing -bindingLocation "[[application application1][attachmentId 123]]" -attributes "[preventWLM]"')
    此命令返回所请求属性的值 preventWLM 的 Properties 对象。如果配置中不存在该绑定,那么您可能会接收到错误消息。
  4. 为相关策略创建新的特定于应用程序的绑定。
    使用 setBinding 命令为策略创建绑定配置。要指定您要创建特定于应用程序的绑定,可通过在 Properties 对象中传递 applicationattachmentId 属性名来设置 -bindingLocation 参数。如果正在为信任服务创建系统策略集绑定,您只需指定 attachmentId 属性名。可以使用下列参数进一步定制您的绑定:
    表 3. 命令参数. 使用该命令来创建绑定配置。
    参数 描述 数据类型
    -policyType 指定相关策略。 String,可选
    -attachmentType 指定策略集附件的类型。如果连接用于应用程序,那么无需指定此参数。
    对于转换用户 对于转换用户: 虽然您可为 -attachmentType 参数指定 application 值,但是请使用 provider 值代替 application 值,因为连接不仅仅用于应用程序,例如用于信任服务的系统连接。对于系统策略集连接,请为 attachmentType 参数指定 provider 值,并为 -attachmentProperties 参数指定 "[systemType trustService]" 值。对于 WSNClient 连接,请为 attachmentType 参数指定 client 值,并使用 -attachmentProperties 参数指定 busWSNService 属性。trns
    String,可选
    -attributes 指定要更新的属性值。此参数可以包括策略的所有绑定属性或属性子集。 Properties,可选
    -bindingName 指定新的特定于应用程序的绑定的名称。如果未指定,那么将生成名称。 String,可选
    -domainName 为绑定指定域名。使用此参数将绑定的作用域限定为域,而不是全局安全性域。 String,可选

    以下示例为指定给 application1 应用程序连接 123WSAddressing 策略创建特定于 WSAddressing1234binding 连接的绑定,并启用工作负载管理:

    AdminTask.setBinding('-policyType WSAddressing -bindingName
     WSAddressing123binding -bindingLocation "[ [application application1] [attachmentId 123] ]" -attributes 
     "[preventWLM false]"')
  5. 可选: 添加特定于应用程序的绑定属性。
    使用 setBinding 命令对特定于应用程序的绑定添加任何其他定制属性。应用程序服务器提供特定于各种服务质量的定制属性。请使用以下格式对绑定指定定制属性:
    AdminTask.setBinding('[-bindingLocation "[ [application application1] [attachmentId 123] 
     ]" -policyType WSAddressing -attributes "[[properties_x:name key_value] [properties_x:value 
     value]"]')
  6. 保存配置更改。
    AdminConfig.save()

指示主题类型的图标 任务主题



时间戳记图标 最近一次更新时间: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=txml_wsfpcreatebinding
文件名:txml_wsfpcreatebinding.html