powershell - PnP - 使用 PnP powershell 向 SP 组添加声明值
问题描述
我希望找到一个示例,我可以使用 PnP PowerShell 将特定的自定义声明值添加到 SP 组。基本上使用 PnP PowerShell 执行以下操作
$ClaimValue = $_.ClaimValue
if ($_.ClaimType -eq $ClaimTypeSchema.GroupSID)
{
$objUserAccount = New-Object System.Security.Principal.NTAccount($EnvUserDomain, $_.ClaimValue)
$objUserSID = $null
Write-Output ("Generating Security Identifier for account: '" + $_.ClaimValue + "' ...")
$objUserSID = $objUserAccount.Translate([System.Security.Principal.SecurityIdentifier])
if ($objUserSID -eq $null)
{
continue
}
$ClaimValue = $objUserSID.Value
}
Write-Output (" Adding Claim: '" + $_.ClaimType + "' with Value: '" + $ClaimValue + "' ...")
$Claim = New-SPClaimsPrincipal -ClaimType $_.ClaimType -ClaimValue $ClaimValue -TrustedIdentityTokenIssuer $AuthenticationProvider
$SPUserClaim = New-SPUser -UserAlias $Claim.ToEncodedString() -Web $RootWeb.Url
$SecurityGroup.AddUser($SPUserClaim)}
Write-Output "Completed"
解决方案
看起来我可以使用以下内容对预期格式进行硬编码
i:0ǵ.t|custom-adfs|First.Last
有关更多编码,请参阅下面的文章 https://social.technet.microsoft.com/wiki/contents/articles/13921.sharepoint-20102013-claims-encoding.aspx
我仍然认为在 PnP 中有一个等价物会很好。
$Claim = New-SPClaimsPrincipal -ClaimType $_.ClaimType -ClaimValue $ClaimValue -TrustedIdentityTokenIssuer $AuthenticationProvider
$SPUserClaim = New-SPUser -UserAlias $Claim.ToEncodedString() -Web $RootWeb.Url
推荐阅读
- r - 如何使用线条将频率多边形叠加在 R 中的直方图之上?
- c# - Asp.net core - HTML 内容到 Excel 导出
- python - Python - 将excel工作表转换为文本文件时右对齐数字
- batch-file - 如何在命令“sed -i '10istring' a.txt”中使用命令输出作为输入字符串
- java - robot.getColorPixel() 返回错误的颜色?
- javascript - 使用 spark md5 在本地计算 S3 ETag
- node.js - Electron:尝试设置“nativeTheme.themeSource”,但“nativeTheme”未定义
- gdal - gdal_merge 在 OSGeo4W 中未被识别为内部或外部命令
- apache - 我无法在 MacOS Mojave 版本 10.14.5 上使用 XAMPP 7.2.26-0 启动 Apache Web 服务器
- sql - 区分一个字段但想显示所有列