Google Apps超级管理员访问域用户日历

问题描述 投票:0回答:1

我有大量的资源日历,我的用户需要具有不同的访问权限,具体取决于他们的角色。我正在编写一个管理这些Acl规则的应用程序,但是也希望管理哪些日历出现在最终用户日历源中(即我不想让它们突然看到所有130个资源日历并且必须通过它们进行过滤)

我需要使用CalendarList api访问,但是当我传递用户// calendarList而不是使用Super Admin凭据授权的users / me / calendarList时,该服务返回404响应。

我的目标是遍历我的共享日历资源列表,并且对于每个读者或freeBusyReader的用户,将他们的calendarListEntry.hidden设置为true。

google-calendar-api
1个回答
0
投票

所以,我发现了答案。要模拟用户,您必须在初始化服务帐户凭据时将“用户”设置为您要模拟的电子邮件地址:

public static ServiceAccountCredential Credential(string[] Scopes, string impersonateEmail = null) { ServiceAccountCredential cred = ServiceAccountCredential.FromServiceAccountData(credential_stream); var initializer = new ServiceAccountCredential.Initializer(cred.Id) { User = string.IsNullOrEmpty(impersonateEmail)?service_acct:impersonateEmail, Key = cred.Key, Scopes = Scopes }; return new ServiceAccountCredential(initializer); }

© www.soinside.com 2019 - 2024. All rights reserved.