azure-active-directory - oauth 2.0 有什么办法获得永久同意吗?

标签 azure-active-directory microsoft-graph-api

我正在尝试创建一个使用 Microsoft Graph 和 OAuth 2.0 身份验证的应用程序。每当我启动我的申请时,我都必须给予同意。

有什么方法可以让应用永久获得用户的同意吗?

最佳答案

正如其他人所指出的,这里有两个选项:

  1. 如果您请求范围 offline_access,您将收到 refresh_token 以及您的 access_token。当您的 access_token 过期时,可以将 refresh_token 提交到 /token 端点以获取新的集合。

    我写了一篇关于 v2 Endpoint 的入门读物,其中介绍了如何使用 Refresh Tokens您可能会发现对此有帮助。

  2. 使用 client_credentials OAuth 授权。此授权专门用于服务到服务/守护程序场景。它们的工作方式略有不同,因为它们使用应用程序范围而不是委托(delegate)范围,并且上下文中没有用户(因此对 /me 的调用需要替换为 /users/{id } 代替)。

    客户端凭据也始终需要管理员同意。由于没有对特定用户进行身份验证,因此需要管理员预先授权您的应用程序。一旦发生这种情况,您的应用程序将保持授权(除非管理员明确阻止)。

    您可以在Get access without a user下找到有关此过程如何工作的详细信息。

关于azure-active-directory - oauth 2.0 有什么办法获得永久同意吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48684139/

相关文章:

azure - 使用 ManagedServiceIdentity 从逻辑应用到 azure 函数时出现 301 永久重定向

java - 尝试使用获取的访问 token 调用 Office 365 API 时出现 401 Unauthorized

azure-active-directory - 非托管 Azure AD 目录中的用户是否可以登录到驻留在不同目录中的 Azure AD Multi-Tenancy 应用程序?

microsoft-graph-api - 尝试删除日历事件时出现 ErrorIrresolvableConflict 响应

c# - 在 Microsoft Graph .Net SDK 中重用 GraphServiceClient 的建议是什么?

Azure Active Directory 角色管理

使用 Enterprise ServiceNow 应用程序的 Azure AD 配置错误应用程序错误 AADSTS650056

azure - 如何在 azure 广告(客户 API)中请求具有范围的访问 token

javascript - 使用nodejs向微软团队 channel 发送消息

azure - 对于 Microsoft Graph 中缺少 UsersPermissionToUserConsentToAppEnabled 是否有任何解决方法?