如何为单个Azure Function启用函数密钥认证并禁用访问令牌认证?
能否单独修改单个Azure Function的认证方式为仅函数密钥访问?
可以实现。同一资源组下的每个Azure Function App的认证配置是完全独立的,你可以单独针对目标函数调整其认证规则,不会影响其他函数的现有配置。
具体操作步骤如下:
- 登录Azure门户,定位到需要修改的目标Function App。
- 在左侧菜单的「设置」分类里,找到「身份验证」选项进入配置页面。
- 先禁用当前的访问令牌类认证:找到已配置的基于令牌的认证提供商(比如Azure AD),点击「禁用」并保存更改。
- 配置仅允许函数密钥访问:在页面的访问控制设置中,将匿名访问权限设置为「需要函数密钥」,确保只有携带有效函数密钥的请求才能访问该函数。
- 也可以用Azure CLI快速调整,执行以下命令(替换占位符为你的资源信息):
# 禁用现有令牌认证 az functionapp auth update --name <目标函数名> --resource-group <资源组名> --enabled false # 确保函数仅接受密钥访问 az functionapp config set --name <目标函数名> --resource-group <资源组名> --web-config-appsettings "WEBSITE_AUTH_ENABLED=False"
调整完成后,该函数将不再接受任何访问令牌,仅认可主机密钥或函数级密钥作为合法访问凭证,同一资源组内的其他函数认证方式保持不变。
内容的提问来源于stack exchange,提问作者Nikita
相关产品推荐
相关产品推荐

