gpt4 book ai didi

c# - Microsoft 身份 - 撤销授权

转载 作者:行者123 更新时间:2023-12-02 06:40:10 27 4
gpt4 key购买 nike

我正在开发一个 .NET 应用程序,它可以使用 Graph API 代表用户发送电子邮件。

提示用户对应用程序进行授权;然后使用获取的访问 token 来调用 Graph API。刷新 token 用于在旧访问 token 过期时颁发新的访问 token ,如下所述:https://learn.microsoft.com/en-us/azure/active-directory/develop/v2-oauth2-auth-code-flow

几个问题/观察:

  1. 假设用户 John 授权应用代表他发送电子邮件。如果管理员从 Azure 门户中删除该应用,John 授权该应用时颁发的访问/刷新 token 仍然有效。
  • 如果访问 token 仍处于事件状态,则可用于调用图形 API;
  • 如果访问 token 已过期,刷新 token 仍可用于请求新的访问 token

这种行为是故意的吗?

阅读后https://learn.microsoft.com/en-us/azure/active-directory/users-groups-roles/users-revoke-accesshttps://learn.microsoft.com/en-us/powershell/module/azuread/revoke-azureaduserallrefreshtoken?view=azureadps-2.0似乎简单地从用户中删除应用程序并不会撤销 token 。

  • 假设用户 John 授权应用代表他发送电子邮件。如果约翰转到https://myapplications.microsoft.com并删除该应用程序,他将无法使用刷新 token 来获取新的访问 token ,这是预期的。
  • 但是,我注意到,如果 John 重新授权该应用程序代表他执行操作,该应用程序将不会显示在 https://myapplications.microsoft.com 上。不再了。这种行为似乎有点不一致。用户撤销对应用程序的访问权限的正确方法是什么?

    最佳答案

    如果用户已授予应用程序访问权限,Azure AD 将为资源颁发访问 token 刷新 token

    访问 token 的生命周期通常约为 1 小时。在其生命周期内,即使应用程序被删除,它仍然可用,但您将无法使用刷新 token 再次获取访问 token 。

    如果您需要在访问 token 的生命周期内撤销授权,请参阅: herehere .

    关于c# - Microsoft 身份 - 撤销授权,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64549944/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com