我有一个问题,我们的应用程序中有一个配置文件(呼叫代理),可以与客户创建另一个代理约会,因此当他添加该配置文件时,应该添加一个代理日历(Microsoft / outlook Calendar),>
基本上,一个配置文件可以在其他用户日历中创建事件
我可以通过API调用获取用户列表
/users
和/users/:ID
但是当我尝试
/users/:id/calendar
或/users/:id/calendar/events
有时会得到
403 Frobiden(“访问被拒绝。请检查凭据,然后重试。),
有时我找不到404,但是我在前面提到的列表中清楚地看到了该用户
这是我当前用于此的API权限
我将Angular与MSAL(@ microsoft / microsoft-graph-client)库一起使用
我是否需要管理员同意,我尝试获得该许可,但没有成功,所以如果有人可以帮助您,那将是完美的:D我在过去的整个星期都坚持了下来。
答案 0 :(得分:0)
您的应用程序如何进行身份验证?如果用户正在登录应用程序,并且您要将用户的令牌传递给图形api,则只有委派权限才重要。如果您的应用程序使用其自己的clientid并基于其自身获取令牌,则您正在使用应用程序权限,但这意味着使用该应用程序的任何人都有可能修改所有日历。通常,应用程序身份验证是为守护程序或自动化流程或管理流程保留的。
因此,假设这是用户登录到应用程序,则该用户本身必须具有访问其他用户日历的权限,仅授予对图api的委派权限不会授予该用户对该数据的访问权限。它只允许他们调用该端点。 这意味着必须授予用户访问其他日历的权限,或者您必须共享希望该用户有权访问的所有用户日历的日历。