Param($Path) $users = Import-Csv $Path -Encoding default $userCount = @(Import-Csv $Path -Encoding default).count $errorData = @() foreach ($user in $users) { # AccessPolicyの付与・グローバルにリセット if ($user.AccessPolicyName -eq "") { try { Grant-CsTeamsAppPermissionPolicy -Identity $user."オブジェクト ID" -PolicyName "" -ErrorAction Stop Write-Host "オブジェクト ID:" $user."オブジェクト ID" "のアクセス許可ポリシーをリセットしました。" } catch { Write-Host "Something threw an exception" Write-Host "オブジェクト ID:" $user."オブジェクト ID" "のアクセス許可ポリシーのリセットに失敗しました。" Write-Output $_ if ($errorData -contains $user."オブジェクト ID") {} else { $errorData += $user."オブジェクト ID" } } finally { } } else { try { Grant-CsTeamsAppPermissionPolicy -Identity $user."オブジェクト ID" -PolicyName $user.AccessPolicyName -ErrorAction Stop Write-Host "オブジェクト ID:" $user."オブジェクト ID" "へアクセス許可ポリシー" $user.AccessPolicyName "を割り当てました。" } catch { Write-Host "Something threw an exception" Write-Host "オブジェクト ID:" $user."オブジェクト ID" "へアクセス許可ポリシー" $user.AccessPolicyName "の割り当てに失敗しました。" Write-Output $_ if ($errorData -contains $user."オブジェクト ID") {} else { $errorData += $user."オブジェクト ID" } } finally { } } # SetUpPolicyの付与・グローバルにリセット if ($user.SetUpPolicyName -eq "") { try { Grant-CsTeamsAppSetupPolicy -Identity $user."オブジェクト ID" -PolicyName "" -ErrorAction Stop Write-Host "オブジェクト ID:" $user."オブジェクト ID" "のセットアップ許可ポリシーをリセットしました。" } catch { Write-Host "Something threw an exception" Write-Host "オブジェクト ID:" $user."オブジェクト ID" "のセットアップ許可ポリシーのリセットに失敗しました。" Write-Output $_ if ($errorData -contains $user."オブジェクト ID") {} else { $errorData += $user."オブジェクト ID" } } finally { } } else { try { Grant-CsTeamsAppSetupPolicy -Identity $user."オブジェクト ID" -PolicyName $user.SetUpPolicyName -ErrorAction Stop Write-Host "user_id:" $user."オブジェクト ID" "へセットアップ許可ポリシー" $user.SetUpPolicyName "を割り当てました。" } catch { Write-Host "Something threw an exception" Write-Host "オブジェクト ID:" $user."オブジェクト ID" "へセットアップ許可ポリシー" $user.SetUpPolicyName "の割り当てに失敗しました。" Write-Output $_ if ($errorData -contains $user."オブジェクト ID") {} else { $errorData += $user."オブジェクト ID" } } finally { } } } if ($errorData.count -eq 0) { Write-Host "処理が完了しました。エラーはありませんでした。" } else { Write-Host $userCount "人中" $errorData.count "人のポリシー割り当て失敗がありました。" Write-Host "割り当てに失敗したオブジェクト IDは以下です。" foreach ($data in $errorData) { Write-Host "オブジェクト ID:" $data } }