gpt4 book ai didi

python - 如何根据服务主体 ID 限制对 azure 函数的访问

转载 作者:行者123 更新时间:2023-12-02 08:28:38 27 4
gpt4 key购买 nike

我有一个作为 Azure 函数实现的 REST API,并启用了 Azure Active Directory 身份验证。我想将对公开方法的子集的访问限制为一组特定的服务主体。

到目前为止,我提出的解决方案是检索请求使用的 access_token 并手动根据列表检查应用程序 ID。这将在方法主体中完成。

我正在寻找一种解决方案,可以在调用该函数之前在 Azure 授权层中处理此问题。可能吗?

最佳答案

正如另一个回复中提到的,目前没有这样的事情。如果您想限制一组服务主体对函数应用程序的访问,我的解决方法是声明 app role与您的函数应用相关的 AD 应用,如下示例。

"appId": "8763f1c4-f988-489c-a51e-158e9ef97d6a",
"appRoles": [
{
"allowedMemberTypes": [
"Application"
],
"displayName": "ConsumerApps",
"id": "47fbb575-859a-4941-89c9-0f7a6c30beac",
"isEnabled": true,
"description": "Consumer apps have access to the consumer data.",
"value": "Consumer"
}
],
"availableToOtherTenants": false,

之后,导航到门户中 Azure Active Directory 中您的函数的 AD 应用 -> 单击本地目录中的托管应用程序 -> 属性 -> 将所需的用户分配设置为

那么任何用于获取函数应用 token 的服务主体都需要您声明的应用程序权限,否则将无法获取 token 。我写了详细信息here ,你可以引用一下。

关于python - 如何根据服务主体 ID 限制对 azure 函数的访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63025780/

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