gpt4 book ai didi

azure - Azure Active Directory 中 native 应用程序和 Web 应用程序之间的确切区别是什么

转载 作者:行者123 更新时间:2023-12-03 09:23:00 24 4
gpt4 key购买 nike

当我们在 Azure Active Directory 中注册应用程序以使用图形 api 时,我看到应用程序有两种类型:Web 应用程序和 native 应用程序。

创建 Web 应用程序时,需要两个值:1. 登录 URL 和 2. 应用程序 ID url。这些值有什么用?我们需要真实世界的网址还是只是 https://localhost:randomePort够了吗?

另一方面,在创建 native 应用程序时,我只能看到一个必需值“重定向 URL”。

我可以使用 REST 调用获取 Web 应用程序的访问 token

POST https://login.microsoftonline.com/<tenant-id>/oauth2/token

grant_type client_credentials
client_id (the client ID of the calling service application in the AD)
client secret (the key configured in the calling service application in the AD)
resource https://graph.windows.net

但是如何使用此类 REST 调用获取 native 应用程序的访问 token ?因为 native 应用程序没有客户端 key

说到权限,对于 native 应用程序,我只能看到可用的委派权限选项,而对于 Web 应用程序,我可以看到应用程序权限以及委派权限选项。

还有一件事,上面的 REST 调用示例对应用程序进行身份验证,我如何使用 REST 调用使用用户的凭据对用户进行身份验证?

最佳答案

native 应用程序是 OAuth2 术语中的公共(public)客户端。这些应用程序旨在在设备上运行,并且不被信任来维护 secret - 因此,它们在目录中的条目没有相应的属性。如果没有 secret ,就无法断言应用程序的身份 - 因此此类应用程序无法获得应用程序级别的权限,门户用户体验反射(reflect)了这一点。相反,用 OAuth2 的说法,Web 应用程序是 secret 客户端。他们可以为其用户获取委托(delegate) token ,但他们也可以使用客户端凭据为自己获取 token 。 native 应用程序可以通过 OAuth2 授权授予为用户获取 token 。您可以在 https://azure.microsoft.com/en-us/documentation/articles/active-directory-authentication-scenarios/ 找到所有支持的拓扑的完整概述。 。每个场景描述都指向更多面向实现的指导。

关于azure - Azure Active Directory 中 native 应用程序和 Web 应用程序之间的确切区别是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33054393/

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