Microsoft 身份 - 撤销授权
Microsoft identity - revoke authorization
我正在开发一个 .NET 应用程序,它可以使用 Graph API.
代表用户发送电子邮件
提示用户授权应用;然后使用获取的访问令牌来调用图形 API。刷新令牌用于在旧访问令牌过期时发布新的访问令牌,如下所述:https://docs.microsoft.com/en-us/azure/active-directory/develop/v2-oauth2-auth-code-flow
几个问题/观察:
- 假设用户 John 授权该应用代表他发送电子邮件。如果管理员从 Azure 门户中删除该应用程序,John 授权该应用程序时颁发的 access/refresh 令牌仍然有效。
- 如果访问令牌仍然有效,它可以用来调用图表 api;
- 如果访问令牌已过期,刷新令牌仍可用于请求新的访问令牌
这种行为是故意的吗?
阅读 https://docs.microsoft.com/en-us/azure/active-directory/users-groups-roles/users-revoke-access and https://docs.microsoft.com/en-us/powershell/module/azuread/revoke-azureaduserallrefreshtoken?view=azureadps-2.0 后,似乎只是从用户那里删除应用程序并不会撤销令牌。
- 假设用户 John 授权该应用代表他发送电子邮件。如果约翰转到 https://myapplications.microsoft.com 并删除了该应用程序,他将无法使用刷新令牌获取新的访问令牌,这是预期的。
但是,我注意到如果 John 重新授权该应用程序代表他执行操作,该应用程序将不再显示在 https://myapplications.microsoft.com 上。这种行为似乎有点不一致。用户撤销对应用程序的访问权限的正确方法是什么?
我正在开发一个 .NET 应用程序,它可以使用 Graph API.
代表用户发送电子邮件提示用户授权应用;然后使用获取的访问令牌来调用图形 API。刷新令牌用于在旧访问令牌过期时发布新的访问令牌,如下所述:https://docs.microsoft.com/en-us/azure/active-directory/develop/v2-oauth2-auth-code-flow
几个问题/观察:
- 假设用户 John 授权该应用代表他发送电子邮件。如果管理员从 Azure 门户中删除该应用程序,John 授权该应用程序时颁发的 access/refresh 令牌仍然有效。
- 如果访问令牌仍然有效,它可以用来调用图表 api;
- 如果访问令牌已过期,刷新令牌仍可用于请求新的访问令牌
这种行为是故意的吗?
阅读 https://docs.microsoft.com/en-us/azure/active-directory/users-groups-roles/users-revoke-access and https://docs.microsoft.com/en-us/powershell/module/azuread/revoke-azureaduserallrefreshtoken?view=azureadps-2.0 后,似乎只是从用户那里删除应用程序并不会撤销令牌。
- 假设用户 John 授权该应用代表他发送电子邮件。如果约翰转到 https://myapplications.microsoft.com 并删除了该应用程序,他将无法使用刷新令牌获取新的访问令牌,这是预期的。
但是,我注意到如果 John 重新授权该应用程序代表他执行操作,该应用程序将不再显示在 https://myapplications.microsoft.com 上。这种行为似乎有点不一致。用户撤销对应用程序的访问权限的正确方法是什么?