angular - 如何从 Angular 9 Web 应用服务访问 GCP Secret Manager
问题描述
我有 Angular 服务(完全托管的 Cloud Run),我想通过 HTTP 客户端调用访问“googleapis”Secret Manager API。
问题是我没有找到一种方法来获取当前服务帐户的身份验证令牌,我可以进一步将其用于 Authorization 标头字段。这是一种使用 Secret Manager API 的方法,但我也可以使用其他可能的解决方案来更改它,除非它在 Agular 应用程序中运行。
提前非常感谢。
解决方案
我找到了问题的概念解决方案。Cloud Run 文档中对此进行了描述。通常,它对元数据服务器进行 API 调用以接收服务帐户(默认或其他特定帐户)的访问令牌,该令牌稍后可用于任何其他谷歌 API 调用的标题字段授权。所描述的解决方案只能在 GCP 内部工作(我已经用 curl 从 Cloud shell 对其进行了测试,它工作正常)。尽管我遇到了网关超时错误,但从我使用 httpClient 的应用程序中,我将为它打开另一个问题。
推荐阅读
- python - 有没有一种简单的方法可以在 ruby 中将数组和整数相乘?
- ios - 从 Swift 3.0 到 Swift 4.2 的转换错误“无法将类型 '[String]' 的值分配给类型 '[AVMetadataObject.ObjectType]?'”
- c# - 通过多个地图自动映射
- centos - SELINUX 中的 nis_enabled 是什么?
- excel - 将多个工作表复制到不同的工作簿中
- python - 使用 awk 或 sed 替换 xml 文件中的值
- r - 如何使用 r markdown 以闪亮的方式打印报告?
- r - 从另一个 r 中减去一个时间列
- git - Git:推入分支以便恢复已删除的文件
- reactjs - 如何使用最后添加的任务在 React 中更新状态?