切换到宽版
  • 7551阅读
  • 3回复

[求助]Exchange 2007  求助一个账号读写其他人日历的权限 [复制链接]

上一主题 下一主题
 
只看楼主 倒序阅读 0楼  发表于: 2013-01-27
版主好:
          Boss提了一个需求,需要用C#把OA中个人的日程安排自动同步到OutLook的个人日历中去和Boss分配的日程更新到个人日历中,这样就需要读写其他人的日历权限,目前只能把自己的日程安排同步更新过去,怎么用cmdlet实现该账号对其他人日历的读写权限呢或者其办法?(最终需实现同步更新后自己只能看自己的日历,每个人的日历是不一样的)


          administrator对其他人邮箱的读写权限是:Get-mailbox | Add-MailboxPermission -User administrator -AccessRights Fullaccess


          日历应该是什么样的,高手帮助一下! 谢谢!
分享到
只看该作者 1楼  发表于: 2013-01-27
这种情况是不是必须模拟每一个用户进行同步呢
ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2007_SP1, TimeZoneInfo.FindSystemTimeZoneById("China Standard Time"));
service.Credentials = new WebCredentials("admin", "pwd", "xxx.com");
service.Url = new Uri("");
service.ImpersonatedUserId = new ImpersonatedUserId(ConnectingIdType.SmtpAddress, "aaa@xxx.com")
Appointment appointment = new Appointment(service);
appointment.Subject = "测试";
appointment.Location = "测试";
appointment.Body = "测试";
appointment.Start = DateTime.Parse("2013-01-20 12:00:00");
appointment.End = appointment.Start.AddMinutes(120);
appointment.RequiredAttendees.Add("aaa@xxx.com");              
appointment.Save(SendInvitationsMode.SendToNone);

提示:该帐户无权模拟所请求的用户。

只看该作者 2楼  发表于: 2013-01-28
回 1楼(春天的思考) 的帖子
春天的思考:这种情况是不是必须模拟每一个用户进行同步呢
ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2007_SP1, TimeZoneInfo.FindSystemTimeZoneById("China Standard Time"));
service.Credentials = new WebCredentials("admin", " .. (2013-01-27 13:12) 

您好, 根据您的描述, 我的理解是BOSS要对一部分人的日历有更新权限.

您可以把这些人放到一个OU下,然后执行以下命令:

Get-mailbox –OrganizationalUnit “group name”| ForEach-Object {Add-MailboxFolderPermission $_":\Calendar" -User Boss@domain.com -AccessRights FullControl}

Exchange中文站10周年献礼。Exchange2016中文视频教程热销中:edu.exchangecn.com/course/12
只看该作者 3楼  发表于: 2013-01-28
已经解决,谢谢大家。账户需要加入 Exchange Server 管理组。  
快速回复
限60 字节
 
上一个 下一个