当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] 在 Lync/Skype for Business 中自动更改 Sip 地址和 UPN 名称

作者:精品下载站 日期:2024-12-14 08:13:53 浏览:15 分类:玩电脑

在 Lync/Skype for Business 中自动更改 Sip 地址和 UPN 名称


当一个人的名字发生变化时,许多组织会实施不同的策略来保持相对地址同步。对于 Lync/Skype for Business 和 Exchange 目的,四个重要属性是邮件、proxyAddresses、msRTCSIP-PrimaryUserAddress 和 userPrincipalName。为了获得最佳的 Lync/Skype for Business 登录体验,保持登录地址、电子邮件地址和用户主体名称相同非常重要。

假设您正在利用 Exchange 电子邮件地址策略根据用户的新名称更改用户的电子邮件地址,我将向您展示如何自动更改 msRTCSIP-PrimaryUserAddress 和 userPrincipalName 属性。您可以通过将脚本作为计划任务运行来自动执行此操作。如果您的组织不使用匹配的用户主体名称,您可以忽略步骤 #4。

前期步骤:在继续之前,您可能需要在旧版本的 PowerShell 上导入 Lync/Skype for Business 和 Active Directory commandlet。

Import-Module ActiveDirectory
Import-Module Lync

步骤#1:第一步是获取环境中的所有 Lync/Skype for Business 用户。通过使用 Get-CsUser 命令,仅返回已启用的 Lync/Skype for Business 用户。 (我添加了一个过滤器,仅包含 @yourdomain.com 的电子邮件地址,如果您想捕获任何域,可以将其更改为 {WindowsEmailAddress -gt 0})

$users = Get-CsUser -filter {WindowsEmailAddress -like "*@yourdomain.com"}

步骤#2:既然我们的 $users 变量中包含了所有 Lync/Skype for Business 用户,我们可以检查每个用户以确定哪些 sip 地址与电子邮件地址不匹配。

$users = Get-CsUser -filter {WindowsEmailAddress -like "*@yourdomain.com"}

foreach ($user in $users) { $sipaddress = "sip:" + $user.WindowsEmailAddress
	if ($sipaddress -ne $user.SipAddress)
	{
		Write-Host $user.DisplayName : $user.WindowsEmailAddress mismatch
	}
}

步骤#3:现在我们可以继续更改每个用户的 Sip 地址以匹配他们的电子邮件地址。

$users = Get-CsUser -filter {WindowsEmailAddress -like "*@yourdomain.com"}

foreach ($user in $users) { $sipaddress = "sip:" + $user.WindowsEmailAddress
	if ($sipaddress -ne $user.SipAddress)
	{
		Write-Host $user.DisplayName : $user.WindowsEmailAddress Sip Address mismatch
		Set-CsUser $user.SipAddress -SipAddress $sipaddress
	}
}

步骤#4:下一步是处理用户主体名称更改。为此,我们利用 Active Directory 模块中的 Set-AdUser 命令。

$users = Get-CsUser -filter {WindowsEmailAddress -like "*@yourdomain.com"}

foreach ($user in $users) { $sipaddress = "sip:" + $user.WindowsEmailAddress
	if ($sipaddress -ne $user.SipAddress)
	{
		Write-Host $user.DisplayName : $user.WindowsEmailAddress Sip Address mismatch
		Set-CsUser $user.SipAddress -SipAddress $sipaddress
	}
	if ($user.WindowsEmailAddress -ne $user.UserPrincipalName)
	{
		Write-Host $user.DisplayName : $user.WindowsEmailAddress UPN mismatch
		Set-AdUser $user.SamAccountName -UserPrincipalName $user.WindowsEmailAddress
	}
}

步骤#5:如果您的用户正在使用 Lync/Skype for Business 会议,您还需要更新发送的日历邀请的会议链接。微软已经发布了一个工具来应对这一变化。它是一个客户端工具,更改名称的用户必须从其桌面运行。在以后的文章中,我将介绍如何使用 PowerShell 和 Exchange Web 服务自动执行此更改。

下载 x86 Lync/Skype for Business 会议更新工具
下载 x64 Lync/Skype for Business 会议更新工具

这涵盖了自动更改 Sip 地址和 UPN 所需的所有步骤。请随时留下任何意见或问题,我一定会回答。

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯