2015-11-10 51 views
0

我想创建一个(php)web应用程序,其中显示了特定office 365用户的日历条目。一个应该能够访问该网站,并看到这些条目,而无需登录。如何设置Office 365 Unified API的应用程序权限?

我的公司还没有蔚蓝订阅,所以我创建了一个与我的Hotmail地址(万一这是相关的)。

当研究如何做到这一点,我一直看到引用设置应用程序的权限的Office 365的Exchange Online,如这里所描述:https://msdn.microsoft.com/en-us/office/office365/howto/building-service-apps-in-office-365定义权限

我在Azure AD中注册了一个Web应用程序,并在清单中上传了一个x509证书。当我尝试添加应用程序权限来读取日历条目时,我所能找到的全部是Office 365统一API(预览),其中有应用程序权限!

Permissions to other applications

委托权限Office 365的统一的API(预览)我找到了我要找的,即设置阅读登录用户的日历相当。但据我所知,服务/守护进程应用程序需要应用程序权限,而不是委托权限。

TL; DR:我希望我的服务/守护程序应用程序访问用户的日历。我无法找到适用于Office 365统一API(预览)的任何应用程序权限,并且列表中不存在Office 365联机交换。

回答

0

Office 365 Unified API尚不支持服务/守护程序应用程序访问,但我们非常接近支持它。同时,您可以使用Outlook API来完成您的场景。端点是https://outlook.office.com/api/v1.0。当您注册您的应用程序时,请添加应用程序权限(根据您的方案读取或读取/写入),如图所示。这应该使您能够使用客户端凭证流来访问其他用户的日历。

enter image description here

+0

我的问题实际上是我用我的Hotmail帐户使用了Azure订阅。因此,我没有Office 365 Exchange Online应用程序在我的应用程序列表中设置权限。当我被允许开始玩我的雇主的azuresubscription时,我发现了这一点。 无论如何,谢谢你的回答!很高兴听到统一的api也将很快支持服务/守护程序应用程序访问! –

0

因此,的Office 365的Exchange Online应用我希望我的服务/守护程序有权(Calendar.read和Calendar.write)默认情况下不使用Azure的推出。为了得到它,我需要订阅它(业务申请,不在家):

Office 365 Exchange Online

Office 365的统一API确实与Azure的船,但作为Venkat Ayyadevara说,这个应用程序不支持守护进程/服务应用程序(还!)。