我有两个用于Web应用程序的区域。一个是使用Windows身份验证的默认区域,另一个是使用基于声明的提供程序进行身份验证的Intranet区域。
我想使用powershell将用户添加到组中。现在在默认区域中,我可以轻松地执行此操作,因为它可以正确解析它,但在我尝试添加Intranet身份验证提供程序Azure AD中的用户时却不能。
我正在使用这个powershell
$Users = "test@testcorp.onmicrosoft.com"
$siteCollUrl = "https://test/sites/test"
$group = "powershellcreated"
$web = Get-SPWeb -identity $siteCollUrl
$web.EnsureUser($User)
Set-SPUser -Identity $User -Web $siteCollUrl -Group $group
我收到的错误是它无法解析用户,因为它正在查看默认区域。
有人可以告诉我如何使用powershell将用户添加到具有不同身份验证提供程序的两个不同区域。
“https://test/sites/test”是具有azure广告身份验证的Intranet “http://test/sites/test”是Windows身份验证的默认设置 感谢
答案 0 :(得分:0)
本文将解释当您尝试添加Azude AD用户时它无效的原因:
你只需要像我说的那样指定声明,它应该可以正常工作。
摘自文章:
if ( inputStr.length <= 25 && /^(?:[\w]+?\/)?[\w]+?@[\w]+?\.[\w]+?$/.test( inputStr ) )
{
//your logic
}