当前位置: 首页 > 知识库问答 >
问题:

Office 365 API错误访问被拒绝(访问被拒绝。请检查凭据,然后重试。)

闻修筠
2023-03-14

我正在尝试用office 365 API构建我的第一个应用程序,但有一个大问题。

我正试图通过Office 365 API和Azure Active Directory获取用户的主要信息,为此我正在做:

1)获取访问令牌。对https://login.windows.net/common/oauth2/token令牌的http post请求:

头:内容类型:应用程序/x-www-表单-乌伦编码

发布数据:

    grant_type = authorization_code
    client_id = *my_client_id*
    client_secret = *my_client_secret*
    session_state = e5fb6cd5-28f7-4dfc-b793-9ce8522534ac
    code = *code_that_i_got_to_my_callback_url*
    resource = https://outlook.office365.com/

我得到access_token、refresh_token、id_token、资源等的回应。

2)我正在尝试获取有关具有访问令牌的用户的主要信息:

向https://outlook.office365.com/api/v1.0/me发出请求

头:

    client-request-id: *some_random_id*
    return-client-request-id: true,
    authorization: 'Bearer ' + *access_token*
    Accept: '*/*'

但我得到:

{ error: 
   { code: 'ErrorAccessDenied',
     message: 'Access is denied. Check credentials and try again.' } }

我做的一切都像这里一样:http://blogs.msdn.com/b/exchangedev/archive/2014/03/25/using-oauth2-to-access-calendar-contact-and-mail-api-in-exchange-online-in-office-365.aspx

最有趣的时刻是一周前一切都很顺利(除了有时响应时间约为30秒),我可以获得有关用户的信息。

最后一件事。在该页面(http://blogs . msdn . com/b/exchange dev/archive/2014/03/25/using-oauth 2-to-access-calendar-contact-and-mail-API-in-exchange-online-in-office-365 . aspx)上,您可以找到对https://login.windows.net/common/oauth2/token的请求,其中包含参数prompt=admin_consent。一周前它还在工作,但是现在如果你尝试,你会得到一个错误的请求(400)。

共有1个答案

锺离自明
2023-03-14

感谢您的提问,很抱歉听到您使用第一个应用程序时遇到的麻烦。您可以检查Office 365 Exchange Online的权限并确保未选择“拥有对用户邮箱的完全访问权限”权限吗?有关详细信息,请参阅附件图像。

这是为了使用名为Exchange Web Services的旧API访问用户邮箱,而不是用于Office 365 REST API。我认为您的REST API请求被“拒绝访问”,因为您可能已经选择了此权限。

如果您在删除此权限后仍看到问题,请告诉我。如果您有任何问题或需要更多信息,请告诉我。

谢谢,

文卡特

 类似资料:
  • 我尝试按照此权限指南在node.js上使用Microsoft Graph API(https://graph.microsoft.com/v1.0/me/calendarView)访问日历事件,但收到错误响应: 调用是使用 : 请求具有有效令牌和对…/me/via的调用 退货: 因此,我假设这是在我创建了两个应用程序(一个用于节点服务器,一个用于 Web 客户端应用程序)https://manag

  • 问题内容: 这是我的编辑从第27行到第39行的代码: 我认为我的问题可能与Win7教授有关:(访问被拒绝) 如何解决这个问题,或者我需要做些什么或阅读才能使它起作用? 谢谢你不燃烧。 我只是更改了文件夹选项,使我获得完整的(Access …),现在我只需要弄清楚为什么在运行javac VendingMachine.java时为什么没有得到任何输出,我想是有一个新问题。 问题答案: 您的工作目录为。

  • 问题内容: 我正在尝试读取文件夹中的文件,但是当我运行该程序时,它将引发此异常。我也尝试了其他一些文件夹。它引发相同的异常。 问题答案: 您无法打开和读取目​​录,无法使用和方法区分文件和文件夹。您可以使用和方法获取文件夹的内容(分别用于文件名和s),还可以指定一个过滤器来选择列出的文件的子集。

  • 我正在使用wamp服务器,我的phpMyAdmin页面返回了以下错误。 Wamp服务器版本:2.2 MySQL版本:5.5.24 #1045-用户“root”@“本地主机”的访问被拒绝(使用密码:是) 我编辑了我的配置文件wamp\app\phpmyadmin4.1.14\config.inc.php: 但这并没有解决问题。任何帮助都将不胜感激。

  • 我正在使用JCIFS写入windows共享。这一直很有效。它突然停止工作,现在得到一个jcifs.smb.smbauthException:访问被拒绝。例外。我知道我的凭据很好,因为我可以使用smb手动连接并写入文件夹,所以这不是问题。我使用的代码是: 它在“SmbFileOutputStream outputStream=new SmbFileOutputStream(file)”行上爆炸。几个