用户配置文件属性概述
用户配置文件属性是附加到用于描述用户个人信息的用户配置文件中的名称/值对。用户配置文件存储了用户配置文件属性信息列表。这些信息是通过导入包含用户帐户的目录中的信息或将帐户信息手动键入用户配置文件存储而获得的。默认情况下,Microsoft Office SharePoint Server 2007 可从 Active Directory 目录服务、LDAP 服务器和业务数据目录中导入信息。
Office SharePoint Server 2007 进行了以下属性改进,开发人员可使用用户配置文件存储来构建解决方案。
多值属性
属性现在支持多个值。这种改进在很多情况下很有用;例如,在定义诸如用户精通的语言和专业等通常包含多个值的属性时。
对象模型中的 IsMultiValued 参数指明属性是否是多值属性。但是,如同属性数据类型,该属性一旦设置就无法修改。
对象模型将多值属性的多个值作为 ArrayList 对象返回。集内的值的顺序与更新顺序相同。
多值属性也是可索引的。当前,Office SharePoint Server 2007 中的企业级搜索功能支持以 Contains 和 Equals 子句搜索多值属性。
Microsoft Office SharePoint Portal Server 2003 不支持从连接源中的多值属性导入。注意,Office SharePoint Server 2007 可用于映射源中的多值属性。现在,甚至可以将源中的多值属性映射到单值门户属性。在导入属性时,导入操作将尝试从源中获取第一个值。
具有开发式或关闭式选择列表的属性
您可以通过选择列表,将用户配置文件属性和约束可能值列表中的词汇关联。如果该列表是开放式的,则表示用户可以添加新的选择;如果是关闭式,则表示这些选择已由管理员定义。
用户配置文件对象模型中的 Property 对象上的 ChoiceList 属性可用于关联选择列表和属性。此外,还可以通过 ChoiceList 对象搜索、移除和重命名词汇术语。同样,一旦通过选择列表定义了用户配置文件属性,就无法重新定义该属性,它不再有该列表,也无法将列表添加到未使用列表进行定义的属性中。
当您使用对象模型尝试设置值,而该值不在词汇表中,且该列表是关闭式时,将出现 InvalidValueException。但是在导入过程中,如果该值不在列表中且列表是关闭式的,则 Office SharePoint Server 2007 将忽略该值。
备注
值不区分大小写。
属性映射
Office SharePoint Server 2007 提供了默认的用户配置文件属性设置。有时,用户配置文件中的默认属性设置可能不包含公司内您希望包含到网站中的用户的信息。在这种情况下,可通过 Office SharePoint Server 2007 将属性添加到默认用户配置文件中来自定义用户配置文件。这些属性可以是用户输入值或从 Active Directory 目录服务、LDAP 服务器或业务数据目录中注册的应用程序导入。还可以编辑现有属性以更改 Office SharePoint Server 2007 在用户配置文件中显示这些属性的方式。
默认策略和隐私策略
可以将默认策略指派给属性,以限制访问和查看属性的用户。例如,可以设置策略使可访问和查看属性的用户限于:只有我 (Private)、我的经理 (Manager)、我的工作者 (Organization)、我的同事 (Contacts) 或所有人 (Public)。可通过对象模型中 Property 对象的 DefaultPolicy 属性设置默认策略。
除了默认策略,还可以指派隐私策略,使属性为必需 (Mandatory)、可选 (Opt-in/Opt-out) 或禁用 (Disabled)。可通过对象模型中 Property 对象的 PrivacyPolicy 属性设置隐私策略。
还可以设置策略,指明用户是否可以覆盖或更改隐私策略 (UserOverridePrivacy) 或是否可在通过 Windows SharePoint Services 创建的网站中复制属性。
备注
即使您具有“管理配置文件”权限,且策略允许您编辑属性,您也无法修改映射的属性。