【发布时间】:2016-06-28 20:15:56
【问题描述】:
我正在开发基于Outlook-SDK-Android 的Android 应用。该应用程序与Outlook Calendar REST API 对话以检索、预订和删除事件(参见代码示例here 和here)。现在我需要阅读其他人的日历,并且我已经获得了一个 Office365 帐户,该帐户具有对其他用户的委托访问权限 (author permission level)。
我已经使用new portal 上提供的帐户注册了我的应用程序。在我的应用程序中,我使用范围“https://outlook.office.com/Calendars.ReadWrite”。 (范围在 com.microsoft.aad.adal.AuthenticationContext.acquireToken() 中用于初始化Office REST Client for Android OutlookClient,这是orc-for-android 提供的共享客户端堆栈)
当我尝试阅读其他用户的我拥有代理访问权限的日历时,我只会收到 403 响应:
{
"error": {
"code": "ErrorAccessDenied",
"message": "Access is denied. Check credentials and try again."
}
}
有什么帮助吗?
这是 API 的限制吗?如果是,那为什么提供下面的方法调用链呢?
outlookClient.getUsers()
.getById("meetingRoom@company.com")
.getCalendarView()
更新:
似乎有正在进行的工作将允许这种情况,如下所述:Office 365 REST API - Access meeting rooms calendars
那么,如果在这个方向上取得了进展,我是否可以在不使用“admin service app”的情况下实现我的目标? (见Office 365 API or Azure AD Graph API - Get Someone Elses Calendar)
我可以按照here的建议使用基本身份验证吗?
【问题讨论】:
标签: android ms-office office365 outlook-restapi outlook-calendar