お世話になります。
非常にお恥ずかしい質問なのですが、o365のUserMailBoxの予定表の既定のアクセス権を変更するPowerShellスクリプトを作成しました。
7日以内に新規作成したユーザーアカウントを抽出し、そのユーザーのo365予定業の既定のアクセス権を編集者に変更するスクリプトなのですが、下記のerrorが発生して動作しました。
浅学ながらスクリプト作成の知識が浅く、変数や属性値に問題があるのかと思いましたが、検討がつかず
ご助力願えればと思いました。
Powershell Version 4.0
スキーマバージョン 69
下記スクリプト 一部分
try{
#7日以内に作成されたアカウントのメールアドレスを出力
$Days = 7
$Time = (Get-Date).Adddays(-($Days))
$user = Get-ADUser -Filter {(RecipientType -eq "UserMailbox") -and (Title -eq $null)} -Property mail,whenCreated | Where {$_.whenCreated -gt $Time} | select mail
}catch{
Write-Host "検索条件に一致するデータが存在しませんでした。終了します。"
return
}
foreach ($tmp in $user){
$upn = $tmp.mail
try{
Set-MailboxFolderPermission -Identity "$upn`:予定表" -User "既定" -AccessRights Editor -ErrorAction Stop
}catch{
Set-MailboxFolderPermission -Identity "$upn`:calendar" -User "既定" -AccessRights Editor -ErrorAction Stop
}
}
Error文
Cannot process argument transformation on parameter 'Identity'. Cannot convert value "***@***.co.jp:calendar" to type "Microsoft.Exchange.Con
figuration.Tasks.MailboxFolderIdParameter". Error: "メールボックスのフォルダー ID "***@***.co.jp:calendar" は正しい形式ではありません。正しい形式は次のようになります: "<MailboxIdentit
y>:<FolderPath>" "
発生場所 C:\Users\***\AppData\Local\Temp\24\tmp_ss4lv3ej.4od\tmp_ss4lv3ej.4od.psm1:65313 文字:9
+ $steppablePipeline.End()
+ ~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidData: (:) [Set-MailboxFolderPermission]、ParameterBindin...mationException
+ FullyQualifiedErrorId : ParameterArgumentTransformationError,Set-MailboxFolderPermission
+ PSComputerName : outlook.office365.com
お恥ずかしながらアドバイスを頂けると大変ありがたく思います。
よろしくお願いいたします。
**モデレーター注**
この質問は Microsoft 365 および Office / Outlook Forum に投稿されていますが、 Microsoft 365 および Office / 管理者向けの Microsoft 365 または Office 365 / Exchange online のカテゴリが適切です。
本投稿は Microsoft 365 および Office / Outlook Forum に投稿されていたものを Microsoft 365 および Office / 管理者向けの Microsoft 365 または Office 365 / Exchange Online Forum に移動させます
適切なカテゴリに投稿すると、返信や回答が得られやすくなり、同じ質問を持つ他のユーザーの参考にもなります。