在联合存储库配置中配置属性扩展存储库

执行本任务以配置属性扩展存储库,以便存储无法存储在轻量级目录访问协议 (LDAP) 服务器中的属性。

关于此任务

由于安全性和业务原因,您可能需要禁止对存储库执行写操作。但是,调用联合存储库配置的应用程序可能需要存储实体的其他属性。联合存储库配置提供了属性扩展存储库,这是不依赖于主概要文件存储库类型的数据库,用于属性级连接配置。例如,对内部职员使用 LDAP 目录并对外部客户和业务合作伙伴使用数据库的公司可能不允许对其 LDAP 和数据库执行写访问。此公司可以在联合存储库配置中使用属性扩展存储库将人员的其他属性(不包括用户标识)存储在那些存储库中。当应用程序使用联合存储库配置来检索人员条目时,联合存储库配置透明地将从 LDAP 或客户数据库中检索到的人员属性与从属性扩展存储库中检索到的人员属性连接到一起,以构成单个逻辑人员条目。
在配置属性扩展存储库时,您可以提供有效数据源和/或直接连接配置。系统将首先尝试通过数据源进行连接。如果该数据源不可用,那么系统将使用直接访问配置。
限制: 在混合版本 Deployment Manager 单元中,不能配置属性扩展存储库。

过程

  1. 配置 WebSphere® Application Server 数据源。请参阅配置 WebSphere Application Server 数据源
  2. 如果正在将新属性(包括存储在属性扩展存储库中的属性)添加到模式,那么必须先执行下列操作,然后才能创建属性扩展存储库。
    1. profile_root\config\cells\cell_name\wim\model 目录中打开或创建 wimxmlextension.xml 文件。
      注意: 确保编辑器在 Deployment Manager 节点上。
    2. 添加新属性的模式定义。 以下 wimxmlextension.xml 文件样本将名为 ibmotherEmail 的新属性添加到 Person 和 PersonAccount 实体类型中。这个新属性类型是“String”,它是多值属性。
      <sdo:datagraph xmlns:sdo="commonj.sdo"
          xmlns:wim="http://www.ibm.com/websphere/wim">
       <wim:schema>
        <wim:propertySchema 
         nsURI="http://www.ibm.com/websphere/wim" 
         dataType="String" 
         multiValued="true"
         propertyName="ibm-otherEmail">
      	    <wim:applicableEntityTypeNames>Person
          </wim:applicableEntityTypeNames>
          <wim:applicableEntityTypeNames>PersonAccount
          </wim:applicableEntityTypeNames>
        </wim:propertySchema>
        <wim:propertySchema 
         nsURI="http://www.ibm.com/websphere/wim" 
         dataType="String" 
         multiValued="true"
         propertyName="ibm-personalTitle">
          <wim:applicableEntityTypeNames>Person
          </wim:applicableEntityTypeNames>
          <wim:applicableEntityTypeNames>PersonAccount
          </wim:applicableEntityTypeNames>
        </wim:propertySchema>
      	  <wim:propertySchema 
         nsURI="http://www.ibm.com/websphere/wim" 
         dataType="String" 
         multiValued="true"
         propertyName="ibm-middleName">
          <wim:applicableEntityTypeNames>Person
          </wim:applicableEntityTypeNames>
          <wim:applicableEntityTypeNames>PersonAccount
          </wim:applicableEntityTypeNames>
        </wim:propertySchema>
      	  <wim:propertySchema 
         nsURI="http://www.ibm.com/websphere/wim" 
         dataType="String" multiValued="true"
         propertyName="ibm-generationQualifier">
          <wim:applicableEntityTypeNames>Person
          </wim:applicableEntityTypeNames>
          <wim:applicableEntityTypeNames>PersonAccount
          </wim:applicableEntityTypeNames>
          </wim:propertySchema>
        <wim:propertySchema 
         nsURI="http://www.ibm.com/websphere/wim" 
         dataType="String" 
         multiValued="false"
         propertyName="ibm-regionalLocale">
          <wim:applicableEntityTypeNames>Person
          </wim:applicableEntityTypeNames>
          <wim:applicableEntityTypeNames>PersonAccount
          </wim:applicableEntityTypeNames>
        </wim:propertySchema>
      	  <wim:propertySchema 
         nsURI="http://www.ibm.com/websphere/wim" 
         dataType="String" 
         multiValued="false"
         propertyName="ibm-timeZone">
          <wim:applicableEntityTypeNames>Person
          </wim:applicableEntityTypeNames>
          <wim:applicableEntityTypeNames>PersonAccount
          </wim:applicableEntityTypeNames>
        </wim:propertySchema>
      	  <wim:propertySchema 
         nsURI="http://www.ibm.com/websphere/wim" 
         dataType="String" 
         multiValued="false"
         propertyName="ibm-preferredCalendar">
          <wim:applicableEntityTypeNames>Person
          </wim:applicableEntityTypeNames>
          <wim:applicableEntityTypeNames>PersonAccount
          </wim:applicableEntityTypeNames>
          </wim:propertySchema>
        <wim:propertySchema 
         nsURI="http://www.ibm.com/websphere/wim" 
         dataType="String" 
         multiValued="false"
         propertyName="ibm-alternativeCalendar">
          <wim:applicableEntityTypeNames>Person
          </wim:applicableEntityTypeNames>
          <wim:applicableEntityTypeNames>PersonAccount
          </wim:applicableEntityTypeNames>
        </wim:propertySchema>
      	  <wim:propertySchema 
         nsURI="http://www.ibm.com/websphere/wim" 
         dataType="String" 
         multiValued="false"
         propertyName="ibm-firstDayOfWeek">
          <wim:applicableEntityTypeNames>Person
          </wim:applicableEntityTypeNames>
          <wim:applicableEntityTypeNames>PersonAccount
          </wim:applicableEntityTypeNames>
          </wim:propertySchema>
        	<wim:propertySchema 
         nsURI="http://www.ibm.com/websphere/wim" 
         dataType="String" 
         multiValued="false"
         propertyName="ibm-firstWorkDayOfWeek">
          <wim:applicableEntityTypeNames>Person
          </wim:applicableEntityTypeNames>
          <wim:applicableEntityTypeNames>PersonAccount
          </wim:applicableEntityTypeNames>
          </wim:propertySchema>
        	<wim:propertySchema 
         nsURI="http://www.ibm.com/websphere/wim" 
         dataType="String" 
         multiValued="false"
         propertyName="ibm-gender">
          <wim:applicableEntityTypeNames>Person
          </wim:applicableEntityTypeNames>
          <wim:applicableEntityTypeNames>PersonAccount
          </wim:applicableEntityTypeNames>
          </wim:propertySchema>
        <wim:propertySchema 
         nsURI="http://www.ibm.com/websphere/wim" 
         dataType="String" 
         multiValued="true"
         propertyName="ibm-hobby">
          <wim:applicableEntityTypeNames>Person
          </wim:applicableEntityTypeNames>
          <wim:applicableEntityTypeNames>PersonAccount
          </wim:applicableEntityTypeNames>
        </wim:propertySchema>
       </wim:schema>
      </sdo:datagraph>
      可用的数据类型是在 com.ibm.websphere.wim.SchemaConstants 中定义的。例如:
      /**
      	 * Instance Class: java.lang.String
      	 */
      	String DATA_TYPE_STRING = "String";
      	/**
      	 * Instance Class: int
      	 */
      	String DATA_TYPE_INT = "Int";
      	/**
      	 * Instance Class: java.lang.Object
      	 */
      	String DATA_TYPE_DATE = "Date";
      	/**
      	 * Instance Class: dobjava.lang.Object
      	 */
      	String DATA_TYPE_ANY_SIMPLE_TYPE = "AnySimpleType";
      	/**
      	 * Instance Class: java.lang.String
      	 */
      	String DATA_TYPE_ANY_URI = "AnyURI";
      	/**
      	 * Instance Class: java.lang.boolean
      	 */
      	String DATA_TYPE_BOOLEAN = "Boolean";
      	/**
      	 * Instance Class: long
      	 */
      	String DATA_TYPE_LONG = "Long";
      	/**
      	 * Instance Class: double
      	 */
      	String DATA_TYPE_DOUBLE = "Double";	
      	/**
      	 * Instance Class: short
      	 */
      	String DATA_TYPE_SHORT = "Short";
    3. [IBM i]将新属性添加到属性扩展存储库中。在运行 setupIdMgrPropertyExtensionRepositoryTables 命令之前,将新属性添加到 install_root/etc/wim/setup/wimlaproperties.xml 中。
    4. 遵循此文件中的示例来定义新的属性定义。wimlaproperties.xml 的模式文件是 wimdbproperty.xsd,他们在同一个目录中。可以使用该模式文件来作为参考。
  3. 运行 setupIdMgrPropertyExtensionRepositoryTables 命令以创建属性扩展存储库并添加新属性。
  4. 请遵循使用 wsadmin 命令来设置条目映射存储库、属性扩展存储库或定制注册数据库存储库中讨论的过程通过使用 wsadmin 来设置属性扩展存储库;忽略“开始之前”选项。
  5. 通过完成以下步骤来配置属性扩展存储库:
    1. 在管理控制台中,单击安全性 > 全局安全性
    2. 在“用户帐户存储库”下,选择联合存储库,然后单击配置。要配置多安全域环境中的某个特定域,请单击安全域 > domain_name。在“安全性属性”下,展开用户域,然后单击为此域进行定制。将领域类型选择为联合存储库,然后单击配置
    3. 单击属性扩展存储库
    4. 在“数据源名”字段中,提供数据源的名称。
    5. 选择用作属性扩展存储库的数据库的类型。
    6. 在“JDBC 驱动程序”字段中,提供 Java™ 数据库连接 (JDBC) 驱动程序的名称。
      值包括:
      DB2®
      com.ibm.db2.jcc.DB2Driver
      Oracle
      oracle.jdbc.driver.OracleDriver
      Informix®
      com.informix.jdbc.IfxDriver
      Microsoft SQL Server
      com.microsoft.jdbc.sqlserver.SQLServerDriver
      Derby
      org.apache.derby.jdbc.EmbeddedDriver
    7. 在“数据库 URL”字段中,提供用来通过 JDBC 访问属性扩展存储库的数据库 URL。 使用符合标准 JDBC URL 语法的字母数字文本字符串。
      值包括:
      DB2
      jdbc:db2://<hostname>:<port>/<DB2location>
      Oracle
      jdbc:oracle:thin:@<hostname>:<port>:<dbname>
      Derby
      jdbc:derby:c:\derby\wim
      Microsoft SQL Server
      jdbc:microsoft:sqlserver://<hostname>:1433;databaseName=wim;selectmethod=cursor;
      Informix
      jdbc:informixsqli://<hostname>:1526/wim:INFORMIXSERVER=<IFXServerName>;
    8. 在“数据库管理员用户名”字段中,提供数据库管理员的用户名。
    9. 在“密码”字段中,提供数据库管理员的密码。
    10. 在“实体检索限制”字段中,指定实体检索限制。 "实体检索限制"字段值是系统通过单个数据库查询能够从属性扩展存储库中检索的最大实体数。缺省值为 200
    11. 单击确定

结果

在完成这些步骤后,就配置了包含属性扩展存储库的联合存储库配置。

下一步做什么

  1. 如果正在启用安全性,请完成对领域启用安全性中指定的余下步骤。作为最后一个步骤,通过在“全局安全性”面板中单击应用来验证此设置。
  2. 保存更改,停止所有产品服务器(Deployment Manager、节点和 Application Server),然后重新启动他们以使此面板中的更改生效。如果启动服务器时未发生任何问题,那么表示设置正确。

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



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