带有访问令牌/刷新令牌的身份验证Microsoft Graph API

时间:2020-06-08 09:15:11

标签: c# azure-active-directory asp.net-identity microsoft-graph-api openid-connect

我正在尝试建立一个连接到大量客户租户的数据收集器,以通过Microsoft GraphApi收集其安全评分数据。

可以通过在CSPTenant(“合作伙伴管理的应用程序”)中使用多客户应用程序注册来访问客户租户。这是一个自动在所有CSPCustomers租户中预先许可的应用程序,它将通过CSPTenant中的用户帐户通过这些租户中的委派管理员为用户提供访问权限。

我必须对MFA使用User + Application(已授予权限)才能访问客户租户。

计划是创建一个ASP.NET Core网站,CSPTenant中的用户可以使用MFA登录并捕获刷新令牌,将其存储在某个地方(KeyVault),并按计划使用它来获取允许访问的访问令牌只要刷新令牌允许(我相信90天),就可以让不同的客户租户从Microsoft Graph API中读取数据,而无需用户在场。

让ASP.NET Core站点捕获刷新令牌似乎很容易,但是那又如何呢?代表我使用什么流量?

有任何可用的样本吗?

图书馆是否可以使用刷新令牌自动处理accesstoken刷新?

使用CSPsite中的刷新令牌,如何获得对不同客户租户Graph API有效的访问令牌?

更新,希望可以使其更容易理解

  • Azure AD MFA用户登录到CSPTenant(供应商)的ASP.NET Core网站
  • 通过用户登录获取并存储刷新令牌
  • 使用刷新令牌来获得短暂的访问令牌,以访问Microsoft Graph API并按计划从每个CSPcustomer租户中提取客户数据,而无需在初始登录后进行用户交互。
  • 用于登录并获取刷新令牌的用户帐户已在所有客户租户中委派了admin,在CSPTenant中的应用程序注册已在所有客户租户中被自动管理员同意。

0 个答案:

没有答案