提问人:Yauheni 提问时间:3/20/2023 更新时间:3/20/2023 访问量:174
Azure Web 应用的 Spring Boot API 密钥设置
Spring boot API key setup for azure web app
问:
我的 azure web 应用的 API 密钥有问题。我有 Spring Boot 应用程序,我在其中设置了 Poatman 和 Localy,一切正常(我在 Postman 环境中指定了标头和 KEY)。但是部署后我有.SecurityConfiguration
APIKeyAuthenticationFilter
Whitelabel Error Page 403 Access Denied
关于安全性,在application.yaml中,我有
#Security
ecoopt:
http:
auth-apikey-header-name: MyAppAPIKey
auth-header-apikey: ${env.ecoopt_apikey:DEFAULT_API_PASSWORD}
这些值是这样使用的SecurityConfiguration
@Value("${ecoopt.http.auth-header-apikey}")
private String principalRequestValue;
@Value("${ecoopt.http.auth-apikey-header-name}")
private String principalRequestHeader;
再。localy 使用 Postman,一切都很好。
如何指定我的环境变量,该变量位于 Azure 门户 -> 配置->应用程序设置...
它应该看起来像 - 名称: 和值:ecoopt_apikey
ecoopt_http_auth-header-apikey
mySecretKey
答:
1赞
Pravallika KV
3/20/2023
#1
白标错误页面 403 访问被拒绝
- 此错误表示您无权访问所请求的资源。
- 如果未在标头中指定 API 密钥,或者无法从应用程序中的应用服务提取特定配置,或者指定的 API 密钥不正确,则会导致 403 访问被拒绝错误。
如何在 Azure 门户中指定我的环境变量
ecoopt_apikey
根据我的理解,您正在尝试将其值添加为应用服务中的应用程序设置。ecoopt_apikey
导航到 Azure 门户中的应用服务。
转到左窗格中的“设置”,然后选择“配置”。
单击应用程序设置,并通过提供正确的名称和值作为键值对来创建它,并保存它,如下所示:
评论
0赞
Yauheni
3/20/2023
黑!感谢您的回复!名称中似乎不允许使用连字符 (-)。我是否应该重命名为例如:ecoopt_http_authHeaderApikey
0赞
Yauheni
3/20/2023
或者有解决方法?
0赞
Pravallika KV
3/20/2023
您可以尝试使用下划线。
0赞
Yauheni
3/20/2023
谢谢!我实际上打算做同样的事情,但不知道该如何处理 hypehn。你能帮我解决这个问题吗:stackoverflow.com/questions/75783073/......
0赞
Yauheni
3/27/2023
嗨,@Surya,(不完全确定你的意思)我已经接受了 Pravallika KV 的回答。在stackexchange中发布了新问题:meta.stackexchange.com/questions/387907/...
评论
ecoopt_apikey