小编Dan*_*SFT的帖子

与O365的OAuth集成失败,错误AADSTS65005

我们有一个网站(建立在PHP框架上),我们为教师/学生提供在线教育工具.我们已经与google.com进行了OAuth集成,用户可以使用他们的Google帐户"注册"和"登录"我们的网站(可以是个人Gmail帐户,也可以是Google Apps域的成员).

我们正在尝试与O365进行类似的集成,我们的网站可以向O365询问用户的电子邮件和姓/名,以便我们可以在我们的网站上为他们创建帐户,并在创建帐户后将其登录.我们创建了Azure中的应用程序列表 - > Active Directory,并生成了客户端ID和机密,并将它们插入到PHP代码中.此处描述的OAuth工作流程一直有效,直到我尝试使用POST请求https://login.windows.net/common/oauth2/token请求访问令牌.它重定向回我的redirect_uri但不是给我auth代码,它在URL中给了我这些参数:

[error] => access_denied
[error_description] => AADSTS65005: The client application has requested access to resource 'https://outlook.office365.com/'. This request has failed because the client has not specified this resource in its requiredResourceAccess list.
Trace ID: xxxxxx
Correlation ID: xxxxxx
Timestamp: 2014-09-29 06:28:25Z
[state] => xxxxxx
Run Code Online (Sandbox Code Playgroud)

我需要的只是O365给我用户的电子邮件和f/l名称.当然有一个快速修复,我错过了?

php oauth azure office365 azure-active-directory

9
推荐指数
1
解决办法
1万
查看次数

图谱API的MSI权限

我的问题是,我们是否有任何记录方法向Graph API授予管理服务标识权限,就像在门户网站中使用Azure App注册一样?我无法在Azure门户或文档中找到任何Powershell选项或管理MSI服务主体权限的能力.我在MSDN论坛上发现了一个类似的问题,但是想确保没有任何人知道的更新或变通方法?

MSDN论坛帖子:https://social.msdn.microsoft.com/Forums/azure/en-US/dae34534-f193-4444-b52e-ba9cfa4a1fda/does-azure-msi-support-accessing-graph-api? forum = WindowsAzureAD

azure-active-directory microsoft-graph azure-managed-identity

4
推荐指数
1
解决办法
1878
查看次数

由于401 Unauthorized,使用Graph API(按应用程序)访问Office 365计划程序数据时出现问题

我一直在努力使用我在Azure中设置的应用程序从Office 365访问计划数据.我已经能够成功检索许可和用户信息,但无法获得用户任务列表(来自Planner).

进一步澄清:

  • 我试图访问其他用户计划程序数据任务,而不是我自己的.
  • 这不是面向用户的应用程序,用户从不登录.我使用我的注册应用程序客户端/密钥来使用REST接口,以获取用于后续请求的令牌.我没有以用户身份登录,我作为应用程序登录,使用"我"不会像在图形api资源管理器中那样工作.
  • 通信正在成功,我能够毫无问题地读取和写入任何其他用户数据.问题似乎清楚地表明正在使用的应用程序没有查看计划程序数据的权限,但我已经为此应用程序提供了所有权限,并且在尝试读取计划程序数据时仍然获得401.
  • 我不确定所使用的技术是否相关,但为了提供尽可能详细的信息,我使用的是nodejs和adal-node(https://github.com/AzureAD/azure-activedirectory-library-for -nodejs)

图文档:https://graph.microsoft.io/en-us/docs/api-reference/beta/api/user_list_tasks

该文档明确指出执行此操作所需的范围是Group.ReadWrite.All AND Tasks.ReadWrite,我已经提供给应用程序(以及大量其他权限,因为我变得绝望和恼火).对于下面列出的每个应用程序,将检查所有应用程序权限和所有委托权限.在我开始工作之后,我将删除必要的,但我认为这将有助于缓解"你有没有尝试过检查这个...或那个......回复"

我绝望地检查了以下所有应用程序中的每个复选框

我意识到这是测试版,但希望能够利用它,并认为也许别人有更好的运气.

我尝试通过以下两种方式形成请求: https : //graph.microsoft.com/beta/users/[username]/plans https://graph.microsoft.com/beta/tasks?$ filter = createdBy eq '[用户名]'

两者都产生以下结果(大部分消息由于长度而被删除):

{ error: 
   { code: 'UnknownError',
     message: '...<h2>401 - Unauthorized: Access is denied due to invalid credentials.</h2>\r\n  <h3>You do not have permission to view this directory or page using the credentials that you supplied.</h3>...',
     innerError: 
      { 'request-id': '09ef3a04-7fc2-48a0-9570-7f04171e45ed',
        date: '2016-05-11T14:18:12' } } }
Run Code Online (Sandbox Code Playgroud)

office365 office365api microsoft-graph

2
推荐指数
1
解决办法
3190
查看次数