为用户和组配置附加属性

可为联合存储库的用户和组配置附加属性。要启用模式或属性扩展,请确保可对底层存储库读写该属性。

过程

  1. 可在 server.xml 文件中指定以下附加属性信息以启用模式或属性扩展。
    • 扩展属性名称 - 扩展属性的名称。确保所指定名称是唯一的并且与现有属性名称不匹配。
    • 数据类型 - 扩展属性的数据类型。可能的值为 Integer、Long、String、Boolean、Date、Double、BigInteger 和 BigDecimal。
    • 实体类型 - 该属性适用于的实体。可能的值为 PersonAccount 或 Group。

      单值或多值 - 可将该属性的值设置为单值或多值。还可为该属性设置缺省值。如果已创建实体并且未对该属性指定任何值,那么将使用缺省值。 对于多值属性,可添加名为 assetId 的扩展属性以存储分配给用户的资产。如果可对每个用户分配多个资产,那么 assetId 需要设置为多值。必须确保 assetId 映射至的属性在后端 LDAP 中也是多值属性。

    以下样本显示 server.xml 中的配置:
    <federatedRepository>
        <primaryRealm name="WIMRegistry">
            <participatingBaseEntry name="o=ibm,c=us"/>
        	</primaryRealm>
        <extendedProperty dataType="String" name="extendedProperty" entityType="PersonAccount"> </extendedProperty>
    </federatedRepository>
      
  2. 要在代码中使用扩展属性,必须按以下示例中所示使用通用 getter/setter 方法:
    PersonAccount person = new PersonAccount(); 
    ... 
    person.set("extendedProperty", "xyz"); 
    ... 
    String value = (String)person.get("extendedProperty");
  3. 为确保可对 LDAP 读写该属性,您有以下两个选项:
    • 传递:如果扩展属性的名称与 LDAP 属性的名称相同,那么将传递该扩展属性并对该 LDAP 属性读写该扩展属性。
    • 属性映射:如果扩展属性的名称与 LDAP 属性的名称不同,那么需要使用属性映射来映射该扩展属性。

      以下样本配置显示扩展属性至名为 extendedAttribute 的属性的映射。

      <attributeConfiguration>
          <attribute name="extendedAttribute" propertyName="extendedProperty" syntax="String" entityType="PersonAccount"></attribute>
      </attributeConfiguration>

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



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