我想从我在 Microsoft Office 365 上的管理员帐户访问组织的其他用户日历。在 Office 365 上,我可以搜索和访问这些日历。我想使用 Microsoft Graph API 访问这些(其他用户的)日历。下面是使用图形 API 访问 Office 365 日历的官方文档。1. 来自用户的日历 2.直接访问压光机
这是我的Auth Helper类,我在其中定义了我的权限范围
module AuthHelper
CLIENT_ID = '91e6****-****-40f7-9b46-******d1149c'
CLIENT_SECRET = 'pftjo*******55;hwSN2-(%'
SCOPES = [ 'openid',
'profile',
'User.Read',
'Mail.Read',
'Calendars.Read',
'Calendars.Read.Shared' ]
def get_login_url
client = OAuth2::Client.new(CLIENT_ID,
CLIENT_SECRET,
:site => 'https://login.microsoftonline.com',
:authorize_url => '/common/oauth2/v2.0/authorize',
:token_url => '/common/oauth2/v2.0/token')
login_url = client.auth_code.authorize_url(:redirect_uri => authorize_url, :scope => SCOPES.join(' '))
end
def get_token_from_code(auth_code)
client = OAuth2::Client.new(CLIENT_ID,
CLIENT_SECRET,
:site => 'https://login.microsoftonline.com',
:authorize_url => '/common/oauth2/v2.0/authorize',
:token_url => '/common/oauth2/v2.0/token')
token = client.auth_code.get_token(auth_code,
:redirect_uri => authorize_url,
:scope => SCOPES.join(' '))
end
尝试邮递员:
https://graph.microsoft.com/v1.0/users查询以及标题显示我所有的用户,但
GET /users/{id | userPrincipalName}/calendars 查询显示 404 未找到错误。
简而言之,我可以从我的office365应用程序的搜索栏访问其他用户的日历,但不能使用
这些方法中的任何一种。
看起来,只有在用户上下文之外运行的应用程序(如服务/守护程序应用程序)才能访问组织中的每个日历。获取在没有登录用户的情况下运行的应用的访问令牌有点不同,您需要通过管理员同意流程才能让您的应用访问每个人的日历。我刚刚测试了这个和<code>日历。读取是您需要的唯一范围。
这些步骤是:
日历。作为
应用程序权限读取https://login.microsoftonline.com/{替换为租户}/adminconsent?nonce=graph 之类的 URL 向应用授予管理员同意
一旦我获得了访问令牌,访问另一个用户日历的其余调用正是您在问题中发布的内容:
< code >获取https://graph . Microsoft . com/v 1.0/users/[user-id]/日历
获得日历 ID 后,您可以在以下位置查看其日历事件:
< code >获取https://graph . Microsoft . com/v 1.0/users/[user-id]/calendars/[calendar-id]/events
我鼓励您在图形浏览器中查看我们的日历示例。
我使用委托权限来获得访问令牌授权。用户是全局管理员 权限范围是offline_访问用户。读写。所有文件。读写。所有 我请求API获取相同的租户子用户驱动器文件 https://graph.microsoft.com/v1.0/users/xxx/drive/root/children 返回访问拒绝 https://graph.microsoft.com/v1.0/me/drive/root/chi
我想从我的Ruby应用程序中访问Calendar rest API。我已经创建了azure多租户应用程序,并对其进行了配置。 我尝试获取对资源“https://outlook.office365com/”的访问令牌,但出现错误 我找不到这个错误的任何描述,也不明白为什么它被禁用 以下是我的azure应用程序权限:
我正在用angular和nodejs创建一个应用程序,我需要能够读取另一个用户的事件列表。现在,我正在尝试使用“https://graph . Microsoft . com/v 1.0/users/other username @ company URL . com/events”,这给了我403“访问被拒绝。请检查凭据,然后重试。。然而,如果我使用“https://graph . Micros
通过点击此请求:https://outlook.office365.com/api/v1.0/users/room@email.com/events 浏览器中,我可以输入我的管理员用户名和密码并获取该特定房间的日历事件。但是,当我尝试从经过管理员身份验证的本机应用程序进行此调用时,我收到此响应:reason=“调用应访问 oauth 令牌中指定的邮箱。error_category=“invalid
问题内容: 为了在具有许多参数的表单中发布AJAX表单,我使用一种解决方案:创建一个,通过POST将表单发布到其中,然后访问的内容。具体来说,我正在访问这样的内容: 我对其进行了测试,并且效果良好。 在某些页面上,我开始出现“访问被拒绝”错误。据我所知,如果iframe是从同一域提供的,则不应发生这种情况。 我很确定它以前可以正常工作。有人知道吗? 如果我不够清楚:我要发布到 同一域 。因此,这不
我想访问日历RestAPI。我已经创建了azure多租户应用程序,并对其进行了配置。 我尝试获取对资源“https://outlook.office365.com/”的访问令牌,但出现错误 “AADSTS50001:资源'https://outlook.office365.com/'已禁用。 注意:我在azure帐户的“其他应用程序的权限”部分中找不到“Office 365 Exchange On