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

使用委派用户id的office365/azure oauth

濮阳靖
2023-03-14

我的目标是编写一些代码,使Office 365用户能够通过REST API访问OneDrive中的文件。我已在Azure AD(Web应用程序/单租户)中注册了一个应用程序,并有一个重定向URI来接收OAuth令牌。我想使用“OAuth委托用户身份”场景。为了了解它的工作原理,我在这里使用了“Office 365 OAuth沙盒”:https://oauthplay.azurewebsites.net/.当我“使用自己的帐户授权”并输入任何有效的Office 365用户凭据时,我会得到一个访问令牌。当我将授权URL中的客户端ID和重定向URI替换为我注册的应用程序的信息时,我只能在输入在我的应用程序中注册的用户时才能获得令牌(否则我在登录时会收到错误50012)。要允许任何Office 365用户获得授权令牌(就像沙盒一样),我必须在配置中更改什么?

共有1个答案

澹台欣怿
2023-03-14

您需要将您的web应用程序标记为多租户,否则Azure AD会将所有调用者限制为来自您提供应用程序的租户。请看一下https://github . com/azure adsamples/web app-web API-multi tenant-OpenIdConnect-dot net,它是一个多租户的web应用程序示例,它调用了一个Microsoft API。请注意,您不一定需要验证示例中显示的问题,只需做对您的场景有意义的事情(这可能意味着甚至不验证)。

 类似资料:
  • 我知道如何在直接依赖的ViewController之间建立“正常”委派。所以如果我说,我必须从一个视图发送一个消息到它上面的一个,我知道怎么做。但是,如果两者之间有更多的ViewControllers,我如何设置委托呢? 假设我有一个根据方案的设置: ViewController1->ViewController2->ViewController3(通过ButtonPressed)(通过Butto

  • 问题内容: 我想向将在运行时生成的对象添加一些功能。但是,该对象的接口非常大(并且不在我的控制之下)。我想将对象包装在自己的类中,该类添加了我想要的功能并将标准接口功能委托给原始对象- 在Java中有任何方法可以执行此操作,而无需为每个对象创建一行复制粘贴委托方法接口中的方法? 我要避免的是: 我更喜欢: 问题答案: 听起来您需要动态代理并仅拦截要覆盖的方法。 动态代理类是实现在运行时指定的接口列

  • 可以使用jdbc和Kerberos委托从我的java应用程序连接到SAP HANA DB吗? 现在,我可以创建与 SAP HANA DB 的 jdbc 连接,而无需输入数据库登录名和密码,仅使用 Windows 登录名。为此,我在 SAP HANA 管理控制台 (user1@domain_name) 中为 db 用户设置 Kerberos 外部 ID,并在创建 jdbc 连接时使用属性“Nativ

  • 本文向大家介绍java 详解类加载器的双亲委派及打破双亲委派,包括了java 详解类加载器的双亲委派及打破双亲委派的使用技巧和注意事项,需要的朋友参考一下 java 详解类加载器的双亲委派及打破双亲委派 一般的场景中使用Java默认的类加载器即可,但有时为了达到某种目的又不得不实现自己的类加载器,例如为了达到类库的互相隔离,例如为了达到热部署重加载功能。这时就需要自己定义类加载器,每个类加载器加载

  • 我下载了Office 365 Connect ASP。NET MVC示例代码http://dev.office.com/code-samples-detail/5985,将其注册为Azure Active Directory中的应用程序(我具有全局管理员权限),并授予其所需的权限-“登录并读取用户配置文件”和“以用户身份发送邮件”(无其他权限),以及配置了web。配置为“ClientID”和“Cl

  • 我想访问日历RestAPI。我已经创建了azure多租户应用程序,并对其进行了配置。 我尝试获取对资源“https://outlook.office365.com/”的访问令牌,但出现错误 “AADSTS50001:资源'https://outlook.office365.com/'已禁用。 注意:我在azure帐户的“其他应用程序的权限”部分中找不到“Office 365 Exchange On