powershell 将属性设置为每个用户配置文件(UPS)。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了powershell 将属性设置为每个用户配置文件(UPS)。相关的知识,希望对你有一定的参考价值。

<config>
	<MySiteUrl>http://rbla-sp2010-002/my/</MySiteUrl>
	<users>
		<user name="rbla\rbla" />
		<user name="rbla\jdiouf" />
		<user name="rbla\ftri" />
	</users>
</config>
# ----------------------------------------------
# Author: Romain Blanchard
# Date: 23.04.2013
# Description: Set property to every User Profiles (UPS).
# ----------------------------------------------

# -- Initialize --#
$xmlinput = [xml] (Get-Content "name.xml")
$siteurl = $xmlinput.Config.MySiteUrl
$mySiteHostSite = Get-SPSite $siteurl
$mySiteHostWeb = $mySiteHostSite.OpenWeb()
$context = Get-SPServiceContext $mySiteHostSite
$profileManager = New-Object Microsoft.Office.Server.UserProfiles.UserProfileManager($context)
$count = 0

# -- Script -- #
Select-Xml -Path "name.xml" -Xpath "/config/users/user" | ForEach-Object { 
$fullname = $_.Node.name

	if ($profileManager.UserExists($fullname))
	{
		$up = $profileManager.GetUserProfile($fullname)
		$up["SPS-Responsibility"].Value = "Energy in Motion"
		$up.Commit()
		$count++
		write-host $fullname"'s property has been modified!" -foregroundColor Green
	}
	else
	{
		write-host $fullname "profile cannot be found!" -foregroundcolor Red
	}	
}

write-host ""
write-host "-------------------------------------"
write-host "$count users profile has been modified!" -foregroundColor Green
write-host "-------------------------------------"

以上是关于powershell 将属性设置为每个用户配置文件(UPS)。的主要内容,如果未能解决你的问题,请参考以下文章

Wix 工具集 - 将属性设置为用户配置文件文件夹路径和程序文件

powershell 从XML输入管理用户配置文件的属性顺序(列出它们并重新排序)。

Powershell 修改用户配置文件

powershell 在-UPS-SharePoint中导出所有用户配置文件的已定义属性。

Powershell 将用户帐户密码设置为永不过期

将所有用户的 immutableID 设置为 UPN