azure - API 管理和应用程序认证
问题描述
我想我在这里不明白一些明显的东西。
如果我在 API 管理中配置 API 应用程序,以便 URL /B 需要单独的订阅/角色而不是启用 /A URL 的基本订阅/角色,我是否必须通过检查当前用户角色在应用程序本身中进行授权?
我很困惑,因为 API App 也有它的公共 URL,可以直接访问。它还将具有 API 管理 URL。因此,即使我设置了所有限制和所有策略,也可以通过直接访问应用程序来忽略它们。
API 应用程序不能只是内部的,具有配置的身份并且只允许来自 API 管理的连接吗?如何设置身份验证以便用户必须通过 API 管理?
解决方案
将 API 置于 API 管理之后,您应该将后端 API 的 URL 视为您自己的私有 URL,仅在需要时才使用。
您和您的 API 的使用者都应该只使用公共 API 管理 URL,以便您获得 API 管理网关的好处。不要向外部各方提供后端 API 的公共 URL。
您有多种选择来保护您的后端 API。其中包括使用Azure AD、证书、基本身份验证,甚至只允许 Azure API 管理 IP 地址连接到您的后端 API。
这取决于您的后端 API 的托管位置、您使用的 API 管理层级(某些选项仅在高级版中可用),最后,您的后端 API 具有哪些功能。
有关上述所有内容的更多详细信息,请参阅这篇文章。
希望这可以帮助!
推荐阅读
- typescript - 当我们在vs代码工作区中保存文件时如何获取新修改行的行号?
- c# - 在 .Net Standard 2.0 中替换 string.Contains(string, StringComparison)
- augmented-reality - Reality Converter Beta 3 – GLTF 到 USDZ 转换中的错误
- spring-boot - Spring Boot app从jar包启动失败,但在IDE中运行正常
- windows - Wireshark Windows 构建失败:找不到 POD(缺少:POD2MAN_EXECUTABLE POD2HTML_EXECUTABLE)
- python - 是否可以使用 google vision api 一次扫描 10 张图像 ocr?到目前为止只做了1
- mysql - 如何在 SQL 数据库中创建层次结构?
- javascript - How do I embed javascript into an IIS UrlRewrite rule?
- unit-testing - 使用 GTEST / GMOCK 对嵌入式源代码进行单元测试
- c - 拆分服务器进程的最佳方法