在 Azure 中使用授权保护 Web api 有哪些方法

What are some ways to securing web api with authorization in Azure

我正在开发一个 Web API .net 核心,并在我们迁移到 Azure 时将其托管在 Azure 中。保护网络 API 和授权(使用 Azure Active Directory 的 OAuth 2.0 授权保护 Azure API 管理中的网络 API 后端)。但我有以下问题:

问题 1。如果我使用 OAuth 2.0 授权和 Azure Active Directory 保护 Azure API 管理中的 Web API 后端,那么如果我们想将 Api 公开给第三个组织外的聚会,那行得通吗?

问题 2 我们能否保护在没有 Active Directory 的情况下托管在 OAuth 中的 Api。

问题 3。什么是保护 api Microsoft Identity 与 OAuth。我很困惑为什么我不应该通过 OAuth 使用 Microsoft 身份进行授权。是微软出的新东西吗?

https://docs.microsoft.com/en-us/azure/active-directory/develop/quickstart-v2-aspnet-core-web-api

谢谢

if I protect a web API backend in Azure API Management using OAuth 2.0 authorization with Azure Active Directory then if we want to expose the Api to the third party outside of the organization then would it work?

如果您在 Azure API 中使用 OAuth 2.0 授权和 Azure Active Directory 来保护您的 Web API 后端管理,您不能将您的 API 暴露给任何第三方应用程序或组织这么容易。

为此,您必须 将 application/SAAS 与 azure AD 联合,以便该平台中的用户能够访问 API.

您必须向该平台的联合用户提供 permission/privileges 才能访问网络 API 及其范围。

Can we protect an Api that is hosting in OAuth without Active Directory?

不,我们无法在没有 Active Directory 的情况下保护 OAuth 中的 API 主机。

因为,OAuth 授权代码授予可用于安装在设备上的应用程序中,以获取对受保护资源(例如 Web APIs)的访问权限。 它用于在大多数应用类型中执行身份验证和授权,包括网络应用和本机安装的应用。

What is securing an api with Microsoft Identity vs OAuth?

Azure Active Directory (Azure AD) 生成的托管身份 允许您的API 管理实例轻松安全地访问其他 Azure AD-protected 资源,例如 Azure Key Vault。