azure - 将对 Azure 应用程序 (WebApi) 的访问限制为仅对另一个 Azure 应用程序(守护程序客户端)
问题描述
我已将我的 REST Api 项目注册到我的 AzureAD 中,因此我可以使用 AzureAD 身份验证。让我们将此应用程序称为“ RestApi ”。
我还注册了另一个控制台应用程序,它将访问此 API。让我们称之为“ ConsoleClient ”。
如何限制访问,以便只有 ConsoleClient能够访问RestApi?我可以为用户(企业应用程序 -> 用户和组)设置类似的权限,但不能为另一个 Azure AD 应用程序设置类似的权限。
解决方案
您必须在 API 中定义应用权限。我的博客文章详细介绍了如何做到这一点:https ://joonasw.net/view/defining-permissions-and-roles-in-aad
此外,您必须在 API 中检查任何访问令牌是否具有有效权限。因此,您必须在应用权限的情况下检查角色声明。
推荐阅读
- sql - PostgreSQL、SQL:比较表中一列的值并按条件返回多列
- powershell - 使用 PowerShell 创建气球提示通知
- reactjs - .env 与 create-react-app 无法传递 apikey
- r - 使用 OData 中的过滤器在 R 中调用 API GET
- java - 如何使用递归来检查字符串是否由模式组成?
- okta - Okta 定义的应用程序如何与自定义授权服务器通信
- kubernetes - Kubernetes:带有 PV 的 hostPath 静态存储与 Pod 卷中的硬编码 hostPath
- go - 如何扫描给定字段设置为空的记录
- node.js - 在 Discord.js 上进行另一个嵌入后的反应时遇到问题
- sockets - 如何在多服务器环境中查找哪个服务器对特定客户端具有打开的套接字?